{$MACRO ON}
{$WRITEABLECONST OFF}
{$VARPROPSETTER OFF}
{$LONGSTRINGS ON}
{$OPENSTRINGS OFF}
{$CODEPAGE UTF8}
{$MODESWITCH CLASS+}
{$MODESWITCH OBJPAS+}
{$MODESWITCH RESULT+}
{$MODESWITCH PCHARTOSTRING-}
{$MODESWITCH CVAR-}
{$MODESWITCH NESTEDCOMMENTS-}
{$MODESWITCH CLASSICPROCVARS-}
{$MODESWITCH MACPROCVARS-}
{$MODESWITCH REPEATFORWARD+}
{$MODESWITCH POINTERTOPROCVAR-}
{$MODESWITCH AUTODEREF-}
{$MODESWITCH INITFINAL+}
{$MODESWITCH ANSISTRINGS+}
{$MODESWITCH OUT+}
{$MODESWITCH DEFAULTPARAMETERS+}
{$MODESWITCH HINTDIRECTIVE+}
{$MODESWITCH DUPLICATELOCALS-}
{$MODESWITCH PROPERTIES+}
{$MODESWITCH ALLOWINLINE+}
{$MODESWITCH EXCEPTIONS+}
{$MODESWITCH NESTEDPROCVARS+}
{$MODESWITCH NONLOCALGOTO-}
{$MODESWITCH ADVANCEDRECORDS+}
{$MODESWITCH ISOUNARYMINUS-}
{$MODESWITCH TYPEHELPERS+}
{$TYPEDADDRESS ON}
{$POINTERMATH OFF}
{$VARSTRINGCHECKS ON}
{$INTERFACES CORBA}
{$BITPACKING OFF}
{$IOCHECKS ON}
{$HINTS ON}
{$WARNINGS ON}
{$IFDEF OPT}
  {$INLINE ON}
  {$OPTIMIZATION REGVAR,PEEPHOLE,ASMCSE,LOOPUNROLL,TAILREC,DFA,STACKFRAME,UNCERTAIN,ORDERFIELDS,FASTMATH,REMOVEEMPTYPROCS,CSE,ORDERFIELDS,DEADVALUES,FASTMATH,CONSTPROP,DEADSTORE,USERBP,STRENGTH,SCHEDULE,AUTOINLINE,USEEBP}
  {$SMARTLINK ON}
  {$STACKFRAMES OFF}
  {$ASSERTIONS OFF}
  {$SAFEFPUEXCEPTIONS OFF}
  {$OVERFLOWCHECKS OFF}
  {$RANGECHECKS OFF}
  {$CHECKPOINTER OFF}
  {$OBJECTCHECKS OFF}
  {$IEEEERRORS OFF}
  {$S-} // stack checking
{$ENDIF}
{$IFDEF DEBUG}
  {$ASSERTIONS ON}
  {$SAFEFPUEXCEPTIONS ON}
  {$OVERFLOWCHECKS ON}
  {$RANGECHECKS ON}
  //{$CHECKPOINTER ON} // not supported on x86_64
  {$OBJECTCHECKS ON}
  {$IEEEERRORS ON}
  {$S+} // stack checking
  { for memory heap problems, $DEFINE EXTRA}
  {$DEFINE ENABLETESTS}
  // disable things that make debugging a pain in the neck
  {$INLINE OFF}
  {$STACKFRAMES ON}
{$ENDIF}
