
-- 1: --------------------------------
-- 2: -- Ivan Levashew aka OCTAGRAM --
-- 3: --         Barnaul, 2009-2010 --
-- 4: --------------------------------

-- 5:
-- 6: -- Convenient definitions initially
-- 7: -- inspired by Turbo Pascal (and Delphi)

-- 8:

-- 9: with

-- 10:    System, Interfaces, Turbo_Private.Bits,

-- 11:    Turbo_Private.Atomic, Turbo_Private.Common,

-- 12:    System.Storage_Elements;
with system;
with turbo_private;
with turbo_private;
with turbo_private;
with system;
with turbo_private;
with turbo_private;
with turbo_private;
with system;
with interfaces;
with turbo_private.turbo_private__bits;
with turbo_private.turbo_private__atomic;
with turbo_private.turbo_private__common;
with system.system__storage_elements;

-- 13:

-- 14: use
use system, interfaces;
turbo_E : boolean := false;

-- 15:    System, Interfaces;

-- 16:

-- 17: package Turbo is
package turbo is

-- 18:    pragma Preelaborate;
   pragma preelaborate;

-- 19:
-- 20:    ------------------
-- 21:    -- Integer_Addr --
-- 22:    ------------------

-- 23:

-- 24:    subtype Integer_Addr  is Turbo_Private.Bits.Integer_Addr;
   subtype turbo__integer_addr is turbo_private.turbo_private__bits.
     turbo_private__bits__integer_addr;

-- 25:

-- 26:    function "="  (Left, Right : Integer_Addr'Base)

-- 27:       return Boolean renames Turbo_Private.Bits."=";
   [type interfaces__Tinteger_32B is new integer]
   [type turbo_private__bits__Tinteger_addrB is new
     interfaces__Tinteger_32B]
   function turbo__Oeq (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return boolean
     renames turbo_private.turbo_private__bits.Oeq;
-- 28: --   function "/=" (Left, Right : Integer_Addr'Base)
-- 29: --      return Boolean renames Turbo_Private.Bits."/=";

-- 30:    function "<"  (Left, Right : Integer_Addr'Base)

-- 31:       return Boolean renames Turbo_Private.Bits."<";
   function turbo__Olt (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return boolean
     renames turbo_private.turbo_private__bits.Olt;

-- 32:    function "<=" (Left, Right : Integer_Addr'Base)

-- 33:       return Boolean renames Turbo_Private.Bits."<=";
   function turbo__Ole (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return boolean
     renames turbo_private.turbo_private__bits.Ole;

-- 34:    function ">"  (Left, Right : Integer_Addr'Base)

-- 35:       return Boolean renames Turbo_Private.Bits.">";
   function turbo__Ogt (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return boolean
     renames turbo_private.turbo_private__bits.Ogt;

-- 36:    function ">=" (Left, Right : Integer_Addr'Base)

-- 37:       return Boolean renames Turbo_Private.Bits.">=";
   function turbo__Oge (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return boolean
     renames turbo_private.turbo_private__bits.Oge;

-- 38:

-- 39:    function "+" (Right : Integer_Addr'Base)

-- 40:       return Integer_Addr'Base renames Turbo_Private.Bits."+";
   function turbo__Oadd (right : turbo_private__bits__Tinteger_addrB)
     return turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Oadd;

-- 41:    function "-" (Right : Integer_Addr'Base)

-- 42:       return Integer_Addr'Base renames Turbo_Private.Bits."-";
   function turbo__Osubtract (right :
     turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Osubtract;

-- 43:    function "abs" (Right : Integer_Addr'Base)

-- 44:       return Integer_Addr'Base renames Turbo_Private.Bits."abs";
   function turbo__Oabs (right : turbo_private__bits__Tinteger_addrB)
     return turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Oabs;

-- 45:

-- 46:    function "+" (Left, Right : Integer_Addr'Base)

-- 47:       return Integer_Addr'Base renames Turbo_Private.Bits."+";
   function turbo__Oadd__2 (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Oadd;

-- 48:    function "-" (Left, Right : Integer_Addr'Base)

-- 49:       return Integer_Addr'Base renames Turbo_Private.Bits."-";
   function turbo__Osubtract__2 (left :
     turbo_private__bits__Tinteger_addrB; right :
     turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Osubtract;

-- 50:    function "*" (Left, Right : Integer_Addr'Base)

-- 51:       return Integer_Addr'Base renames Turbo_Private.Bits."*";
   function turbo__Omultiply (left :
     turbo_private__bits__Tinteger_addrB; right :
     turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Omultiply;

-- 52:    function "/" (Left, Right : Integer_Addr'Base)

-- 53:       return Integer_Addr'Base renames Turbo_Private.Bits."/";
   function turbo__Odivide (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Odivide;

-- 54:    function "rem" (Left, Right : Integer_Addr'Base)

-- 55:       return Integer_Addr'Base renames Turbo_Private.Bits."rem";
   function turbo__Orem (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Orem;

-- 56:    function "mod" (Left, Right : Integer_Addr'Base)

-- 57:       return Integer_Addr'Base renames Turbo_Private.Bits."mod";
   function turbo__Omod (left : turbo_private__bits__Tinteger_addrB;
     right : turbo_private__bits__Tinteger_addrB) return
     turbo_private__bits__Tinteger_addrB renames turbo_private.
     turbo_private__bits.Omod;

-- 58:

-- 59:    function "**" (Left : Integer_Addr'Base; Right : Natural)

-- 60:       return Integer_Addr'Base renames Turbo_Private.Bits."**";
   function turbo__Oexpon (left : turbo_private__bits__Tinteger_addrB;
     right : natural) return turbo_private__bits__Tinteger_addrB
     renames turbo_private.turbo_private__bits.Oexpon;

-- 61:

-- 62:    function "+" (Item : Integer_Addr) return System.Storage_Elements.Storage_Offset

-- 63:       renames Turbo_Private.Bits."+";
   function turbo__Oadd__3 (item : turbo__integer_addr) return system.
     system__storage_elements.system__storage_elements__storage_offset
     renames turbo_private.turbo_private__bits.Oadd;

-- 64:    function "+" (Item : System.Storage_Elements.Storage_Offset) return Integer_Addr

-- 65:       renames Turbo_Private.Bits."+";
   function turbo__Oadd__4 (item : system.system__storage_elements.
     system__storage_elements__storage_offset) return
     turbo__integer_addr renames turbo_private.turbo_private__bits.Oadd;

-- 66:

-- 67:    subtype Unsigned_Addr is Turbo_Private.Bits.Unsigned_Addr;
   subtype turbo__unsigned_addr is turbo_private.turbo_private__bits.
     turbo_private__bits__unsigned_addr;

-- 68:

-- 69:    function "="  (Left, Right : Unsigned_Addr'Base)

-- 70:       return Boolean renames Turbo_Private.Bits."=";
   [type turbo_private__bits__Tunsigned_addrB is  mod 16#1000_0000_0#]
   function turbo__Oeq__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return boolean
     renames turbo_private.turbo_private__bits.Oeq;
-- 71: --   function "/=" (Left, Right : Unsigned_Addr'Base)
-- 72: --      return Boolean renames Turbo_Private.Bits."/=";

-- 73:    function "<"  (Left, Right : Unsigned_Addr'Base)

-- 74:       return Boolean renames Turbo_Private.Bits."<";
   function turbo__Olt__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return boolean
     renames turbo_private.turbo_private__bits.Olt;

-- 75:    function "<=" (Left, Right : Unsigned_Addr'Base)

-- 76:       return Boolean renames Turbo_Private.Bits."<=";
   function turbo__Ole__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return boolean
     renames turbo_private.turbo_private__bits.Ole;

-- 77:    function ">"  (Left, Right : Unsigned_Addr'Base)

-- 78:       return Boolean renames Turbo_Private.Bits.">";
   function turbo__Ogt__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return boolean
     renames turbo_private.turbo_private__bits.Ogt;

-- 79:    function ">=" (Left, Right : Unsigned_Addr'Base)

-- 80:       return Boolean renames Turbo_Private.Bits.">=";
   function turbo__Oge__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return boolean
     renames turbo_private.turbo_private__bits.Oge;

-- 81:

-- 82:    function "+" (Right : Unsigned_Addr'Base)

-- 83:       return Unsigned_Addr'Base renames Turbo_Private.Bits."+";
   function turbo__Oadd__5 (right :
     turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oadd;

-- 84:    function "-" (Right : Unsigned_Addr'Base)

-- 85:       return Unsigned_Addr'Base renames Turbo_Private.Bits."-";
   function turbo__Osubtract__3 (right :
     turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Osubtract;

-- 86:    function "abs" (Right : Unsigned_Addr'Base)

-- 87:       return Unsigned_Addr'Base renames Turbo_Private.Bits."abs";
   function turbo__Oabs__2 (right :
     turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oabs;

-- 88:

-- 89:    function "+" (Left, Right : Unsigned_Addr'Base)

-- 90:       return Unsigned_Addr'Base renames Turbo_Private.Bits."+";
   function turbo__Oadd__6 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oadd;

-- 91:    function "-" (Left, Right : Unsigned_Addr'Base)

-- 92:       return Unsigned_Addr'Base renames Turbo_Private.Bits."-";
   function turbo__Osubtract__4 (left :
     turbo_private__bits__Tunsigned_addrB; right :
     turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Osubtract;

-- 93:    function "*" (Left, Right : Unsigned_Addr'Base)

-- 94:       return Unsigned_Addr'Base renames Turbo_Private.Bits."*";
   function turbo__Omultiply__2 (left :
     turbo_private__bits__Tunsigned_addrB; right :
     turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Omultiply;

-- 95:    function "/" (Left, Right : Unsigned_Addr'Base)

-- 96:       return Unsigned_Addr'Base renames Turbo_Private.Bits."/";
   function turbo__Odivide__2 (left :
     turbo_private__bits__Tunsigned_addrB; right :
     turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Odivide;

-- 97:    function "rem" (Left, Right : Unsigned_Addr'Base)

-- 98:       return Unsigned_Addr'Base renames Turbo_Private.Bits."rem";
   function turbo__Orem__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Orem;

-- 99:    function "mod" (Left, Right : Unsigned_Addr'Base)

-- 100:       return Unsigned_Addr'Base renames Turbo_Private.Bits."mod";
   function turbo__Omod__2 (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Omod;

-- 101:

-- 102:    function "**" (Left : Unsigned_Addr'Base; Right : Natural)

-- 103:       return Unsigned_Addr'Base renames Turbo_Private.Bits."**";
   function turbo__Oexpon__2 (left :
     turbo_private__bits__Tunsigned_addrB; right : natural) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oexpon;

-- 104:

-- 105:    function "and" (Left, Right : Unsigned_Addr'Base)

-- 106:       return Unsigned_Addr'Base renames Turbo_Private.Bits."and";
   function turbo__Oand (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oand;

-- 107:    function "or" (Left, Right : Unsigned_Addr'Base)

-- 108:       return Unsigned_Addr'Base renames Turbo_Private.Bits."or";
   function turbo__Oor (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oor;

-- 109:    function "xor" (Left, Right : Unsigned_Addr'Base)

-- 110:       return Unsigned_Addr'Base renames Turbo_Private.Bits."xor";
   function turbo__Oxor (left : turbo_private__bits__Tunsigned_addrB;
     right : turbo_private__bits__Tunsigned_addrB) return
     turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Oxor;

-- 111:

-- 112:    function "not" (Right : Unsigned_Addr'Base)

-- 113:       return Unsigned_Addr'Base renames Turbo_Private.Bits."not";
   function turbo__Onot (right : turbo_private__bits__Tunsigned_addrB)
     return turbo_private__bits__Tunsigned_addrB renames turbo_private.
     turbo_private__bits.Onot;

-- 114:

-- 115:    function Shift_Left  (Value : Unsigned_Addr; Amount : Natural)

-- 116:       return Unsigned_Addr renames Turbo_Private.Bits.Shift_Left;
   function shift_left (value : turbo__unsigned_addr; amount : natural)
     return turbo__unsigned_addr renames turbo_private.
     turbo_private__bits.shift_left;

-- 117:    function Shift_Right (Value : Unsigned_Addr; Amount : Natural)

-- 118:       return Unsigned_Addr renames Turbo_Private.Bits.Shift_Right;
   function shift_right (value : turbo__unsigned_addr; amount : natural)
     return turbo__unsigned_addr renames turbo_private.
     turbo_private__bits.shift_right;

-- 119:    function Shift_Right_Arithmetic (Value : Unsigned_Addr; Amount : Natural)

-- 120:       return Unsigned_Addr renames Turbo_Private.Bits.Shift_Right_Arithmetic;
   function shift_right_arithmetic (value : turbo__unsigned_addr;
     amount : natural) return turbo__unsigned_addr renames
     turbo_private.turbo_private__bits.shift_right_arithmetic;

-- 121:    function Rotate_Left  (Value : Unsigned_Addr; Amount : Natural)

-- 122:       return Unsigned_Addr renames Turbo_Private.Bits.Rotate_Left;
   function rotate_left (value : turbo__unsigned_addr; amount : natural)
     return turbo__unsigned_addr renames turbo_private.
     turbo_private__bits.rotate_left;

-- 123:    function Rotate_Right (Value : Unsigned_Addr; Amount : Natural)

-- 124:       return Unsigned_Addr renames Turbo_Private.Bits.Rotate_Right;
   function rotate_right (value : turbo__unsigned_addr; amount :
     natural) return turbo__unsigned_addr renames turbo_private.
     turbo_private__bits.rotate_right;

-- 125:
-- 126:    ---------------------------------------------------
-- 127:    -- Natural_ and Positive_ types for Interfaces.* --
-- 128:    ---------------------------------------------------

-- 129:

-- 130:    subtype Natural_8     is Turbo_Private.Common.Natural_8;
   subtype turbo__natural_8 is turbo_private.turbo_private__common.
     turbo_private__common__natural_8;

-- 131:    subtype Natural_16    is Turbo_Private.Common.Natural_16;
   subtype turbo__natural_16 is turbo_private.turbo_private__common.
     turbo_private__common__natural_16;

-- 132:    subtype Natural_32    is Turbo_Private.Common.Natural_32;
   subtype turbo__natural_32 is turbo_private.turbo_private__common.
     turbo_private__common__natural_32;

-- 133:    subtype Natural_64    is Turbo_Private.Common.Natural_64;
   subtype turbo__natural_64 is turbo_private.turbo_private__common.
     turbo_private__common__natural_64;

-- 134:    subtype Natural_Addr  is Turbo_Private.Common.Natural_Addr;
   subtype turbo__natural_addr is turbo_private.turbo_private__common.
     turbo_private__common__natural_addr;

-- 135:

-- 136:    subtype Positive_8    is Turbo_Private.Common.Positive_8;
   subtype turbo__positive_8 is turbo_private.turbo_private__common.
     turbo_private__common__positive_8;

-- 137:    subtype Positive_16   is Turbo_Private.Common.Positive_16;
   subtype turbo__positive_16 is turbo_private.turbo_private__common.
     turbo_private__common__positive_16;

-- 138:    subtype Positive_32   is Turbo_Private.Common.Positive_32;
   subtype turbo__positive_32 is turbo_private.turbo_private__common.
     turbo_private__common__positive_32;

-- 139:    subtype Positive_64   is Turbo_Private.Common.Positive_64;
   subtype turbo__positive_64 is turbo_private.turbo_private__common.
     turbo_private__common__positive_64;

-- 140:    subtype Positive_Addr is Turbo_Private.Common.Positive_Addr;
   subtype turbo__positive_addr is turbo_private.turbo_private__common.
     turbo_private__common__positive_addr;

-- 141:
-- 142:    --------------------
-- 143:    -- Inc, Dec, etc. --
-- 144:    --------------------

-- 145:

-- 146:    procedure Inc (Addend : in out Integer_8);
   procedure turbo__inc (addend : in out interfaces__integer_8);

-- 147:    procedure Inc (Addend : not null access Integer_8);
   procedure turbo__inc__2 (addend : not null access
     interfaces__integer_8; addendF : natural);

-- 148:

-- 149:    procedure Inc (Addend : in out Integer_8;
   procedure turbo__inc__3 (addend : in out interfaces__integer_8; item :
     interfaces__integer_8);

-- 150:       Item : Integer_8);

-- 151:    procedure Inc (Addend : not null access Integer_8;
   procedure turbo__inc__4 (addend : not null access
     interfaces__integer_8; item : interfaces__integer_8; addendF :
     natural);

-- 152:       Item : Integer_8);

-- 153:

-- 154:    procedure Dec (Addend : in out Integer_8);
   procedure turbo__dec (addend : in out interfaces__integer_8);

-- 155:    procedure Dec (Addend : not null access Integer_8);
   procedure turbo__dec__2 (addend : not null access
     interfaces__integer_8; addendF : natural);

-- 156:

-- 157:    procedure Dec (Addend : in out Integer_8;
   procedure turbo__dec__3 (addend : in out interfaces__integer_8; item :
     interfaces__integer_8);

-- 158:       Item : Integer_8);

-- 159:    procedure Dec (Addend : not null access Integer_8;
   procedure turbo__dec__4 (addend : not null access
     interfaces__integer_8; item : interfaces__integer_8; addendF :
     natural);

-- 160:       Item : Integer_8);

-- 161:

-- 162:    procedure Inc (Addend : in out Unsigned_8);
   procedure turbo__inc__5 (addend : in out interfaces__unsigned_8);

-- 163:    procedure Inc (Addend : not null access Unsigned_8);
   procedure turbo__inc__6 (addend : not null access
     interfaces__unsigned_8; addendF : natural);

-- 164:

-- 165:    procedure Inc (Addend : in out Unsigned_8;
   procedure turbo__inc__7 (addend : in out interfaces__unsigned_8;
     item : interfaces__unsigned_8);

-- 166:       Item : Unsigned_8);

-- 167:    procedure Inc (Addend : not null access Unsigned_8;
   procedure turbo__inc__8 (addend : not null access
     interfaces__unsigned_8; item : interfaces__unsigned_8; addendF :
     natural);

-- 168:       Item : Unsigned_8);

-- 169:

-- 170:    procedure Dec (Addend : in out Unsigned_8);
   procedure turbo__dec__5 (addend : in out interfaces__unsigned_8);

-- 171:    procedure Dec (Addend : not null access Unsigned_8);
   procedure turbo__dec__6 (addend : not null access
     interfaces__unsigned_8; addendF : natural);

-- 172:

-- 173:    procedure Dec (Addend : in out Unsigned_8;
   procedure turbo__dec__7 (addend : in out interfaces__unsigned_8;
     item : interfaces__unsigned_8);

-- 174:       Item : Unsigned_8);

-- 175:    procedure Dec (Addend : not null access Unsigned_8;
   procedure turbo__dec__8 (addend : not null access
     interfaces__unsigned_8; item : interfaces__unsigned_8; addendF :
     natural);

-- 176:       Item : Unsigned_8);

-- 177:

-- 178:    procedure Do_And (Multipliee : in out Unsigned_8;
   procedure turbo__do_and (multipliee : in out interfaces__unsigned_8;
     item : interfaces__unsigned_8);

-- 179:       Item : Unsigned_8);

-- 180:    procedure Do_And (Multipliee : not null access Unsigned_8;
   procedure turbo__do_and__2 (multipliee : not null access
     interfaces__unsigned_8; item : interfaces__unsigned_8; multiplieeF :
     natural);

-- 181:       Item : Unsigned_8);

-- 182:

-- 183:    procedure Do_Or (Multipliee : in out Unsigned_8;
   procedure turbo__do_or (multipliee : in out interfaces__unsigned_8;
     item : interfaces__unsigned_8);

-- 184:       Item : Unsigned_8);

-- 185:    procedure Do_Or (Multipliee : not null access Unsigned_8;
   procedure turbo__do_or__2 (multipliee : not null access
     interfaces__unsigned_8; item : interfaces__unsigned_8; multiplieeF :
     natural);

-- 186:       Item : Unsigned_8);

-- 187:

-- 188:    procedure Do_Xor (Multipliee : in out Unsigned_8;
   procedure turbo__do_xor (multipliee : in out interfaces__unsigned_8;
     item : interfaces__unsigned_8);

-- 189:       Item : Unsigned_8);

-- 190:    procedure Do_Xor (Multipliee : not null access Unsigned_8;
   procedure turbo__do_xor__2 (multipliee : not null access
     interfaces__unsigned_8; item : interfaces__unsigned_8; multiplieeF :
     natural);

-- 191:       Item : Unsigned_8);

-- 192:

-- 193:    procedure Inc (Addend : in out Integer_16);
   procedure turbo__inc__9 (addend : in out interfaces__integer_16);

-- 194:    procedure Inc (Addend : not null access Integer_16);
   procedure turbo__inc__10 (addend : not null access
     interfaces__integer_16; addendF : natural);

-- 195:

-- 196:    procedure Inc (Addend : in out Integer_16;
   procedure turbo__inc__11 (addend : in out interfaces__integer_16;
     item : interfaces__integer_16);

-- 197:       Item : Integer_16);

-- 198:    procedure Inc (Addend : not null access Integer_16;
   procedure turbo__inc__12 (addend : not null access
     interfaces__integer_16; item : interfaces__integer_16; addendF :
     natural);

-- 199:       Item : Integer_16);

-- 200:

-- 201:    procedure Dec (Addend : in out Integer_16);
   procedure turbo__dec__9 (addend : in out interfaces__integer_16);

-- 202:    procedure Dec (Addend : not null access Integer_16);
   procedure turbo__dec__10 (addend : not null access
     interfaces__integer_16; addendF : natural);

-- 203:

-- 204:    procedure Dec (Addend : in out Integer_16;
   procedure turbo__dec__11 (addend : in out interfaces__integer_16;
     item : interfaces__integer_16);

-- 205:       Item : Integer_16);

-- 206:    procedure Dec (Addend : not null access Integer_16;
   procedure turbo__dec__12 (addend : not null access
     interfaces__integer_16; item : interfaces__integer_16; addendF :
     natural);

-- 207:       Item : Integer_16);

-- 208:

-- 209:    procedure Inc (Addend : in out Unsigned_16);
   procedure turbo__inc__13 (addend : in out interfaces__unsigned_16);

-- 210:    procedure Inc (Addend : not null access Unsigned_16);
   procedure turbo__inc__14 (addend : not null access
     interfaces__unsigned_16; addendF : natural);

-- 211:

-- 212:    procedure Inc (Addend : in out Unsigned_16;
   procedure turbo__inc__15 (addend : in out interfaces__unsigned_16;
     item : interfaces__unsigned_16);

-- 213:       Item : Unsigned_16);

-- 214:    procedure Inc (Addend : not null access Unsigned_16;
   procedure turbo__inc__16 (addend : not null access
     interfaces__unsigned_16; item : interfaces__unsigned_16; addendF :
     natural);

-- 215:       Item : Unsigned_16);

-- 216:

-- 217:    procedure Dec (Addend : in out Unsigned_16);
   procedure turbo__dec__13 (addend : in out interfaces__unsigned_16);

-- 218:    procedure Dec (Addend : not null access Unsigned_16);
   procedure turbo__dec__14 (addend : not null access
     interfaces__unsigned_16; addendF : natural);

-- 219:

-- 220:    procedure Dec (Addend : in out Unsigned_16;
   procedure turbo__dec__15 (addend : in out interfaces__unsigned_16;
     item : interfaces__unsigned_16);

-- 221:       Item : Unsigned_16);

-- 222:    procedure Dec (Addend : not null access Unsigned_16;
   procedure turbo__dec__16 (addend : not null access
     interfaces__unsigned_16; item : interfaces__unsigned_16; addendF :
     natural);

-- 223:       Item : Unsigned_16);

-- 224:

-- 225:    procedure Do_And (Multipliee : in out Unsigned_16;
   procedure turbo__do_and__3 (multipliee : in out
     interfaces__unsigned_16; item : interfaces__unsigned_16);

-- 226:       Item : Unsigned_16);

-- 227:    procedure Do_And (Multipliee : not null access Unsigned_16;
   procedure turbo__do_and__4 (multipliee : not null access
     interfaces__unsigned_16; item : interfaces__unsigned_16;
     multiplieeF : natural);

-- 228:       Item : Unsigned_16);

-- 229:

-- 230:    procedure Do_Or (Multipliee : in out Unsigned_16;
   procedure turbo__do_or__3 (multipliee : in out
     interfaces__unsigned_16; item : interfaces__unsigned_16);

-- 231:       Item : Unsigned_16);

-- 232:    procedure Do_Or (Multipliee : not null access Unsigned_16;
   procedure turbo__do_or__4 (multipliee : not null access
     interfaces__unsigned_16; item : interfaces__unsigned_16;
     multiplieeF : natural);

-- 233:       Item : Unsigned_16);

-- 234:

-- 235:    procedure Do_Xor (Multipliee : in out Unsigned_16;
   procedure turbo__do_xor__3 (multipliee : in out
     interfaces__unsigned_16; item : interfaces__unsigned_16);

-- 236:       Item : Unsigned_16);

-- 237:    procedure Do_Xor (Multipliee : not null access Unsigned_16;
   procedure turbo__do_xor__4 (multipliee : not null access
     interfaces__unsigned_16; item : interfaces__unsigned_16;
     multiplieeF : natural);

-- 238:       Item : Unsigned_16);

-- 239:

-- 240:    procedure Inc (Addend : in out Integer_32);
   procedure turbo__inc__17 (addend : in out interfaces__integer_32);

-- 241:    procedure Inc (Addend : not null access Integer_32);
   procedure turbo__inc__18 (addend : not null access
     interfaces__integer_32; addendF : natural);

-- 242:

-- 243:    procedure Inc (Addend : in out Integer_32;
   procedure turbo__inc__19 (addend : in out interfaces__integer_32;
     item : interfaces__integer_32);

-- 244:       Item : Integer_32);

-- 245:    procedure Inc (Addend : not null access Integer_32;
   procedure turbo__inc__20 (addend : not null access
     interfaces__integer_32; item : interfaces__integer_32; addendF :
     natural);

-- 246:       Item : Integer_32);

-- 247:

-- 248:    procedure Dec (Addend : in out Integer_32);
   procedure turbo__dec__17 (addend : in out interfaces__integer_32);

-- 249:    procedure Dec (Addend : not null access Integer_32);
   procedure turbo__dec__18 (addend : not null access
     interfaces__integer_32; addendF : natural);

-- 250:

-- 251:    procedure Dec (Addend : in out Integer_32;
   procedure turbo__dec__19 (addend : in out interfaces__integer_32;
     item : interfaces__integer_32);

-- 252:       Item : Integer_32);

-- 253:    procedure Dec (Addend : not null access Integer_32;
   procedure turbo__dec__20 (addend : not null access
     interfaces__integer_32; item : interfaces__integer_32; addendF :
     natural);

-- 254:       Item : Integer_32);

-- 255:

-- 256:    procedure Inc (Addend : in out Unsigned_32);
   procedure turbo__inc__21 (addend : in out interfaces__unsigned_32);

-- 257:    procedure Inc (Addend : not null access Unsigned_32);
   procedure turbo__inc__22 (addend : not null access
     interfaces__unsigned_32; addendF : natural);

-- 258:

-- 259:    procedure Inc (Addend : in out Unsigned_32;
   procedure turbo__inc__23 (addend : in out interfaces__unsigned_32;
     item : interfaces__unsigned_32);

-- 260:       Item : Unsigned_32);

-- 261:    procedure Inc (Addend : not null access Unsigned_32;
   procedure turbo__inc__24 (addend : not null access
     interfaces__unsigned_32; item : interfaces__unsigned_32; addendF :
     natural);

-- 262:       Item : Unsigned_32);

-- 263:

-- 264:    procedure Dec (Addend : in out Unsigned_32);
   procedure turbo__dec__21 (addend : in out interfaces__unsigned_32);

-- 265:    procedure Dec (Addend : not null access Unsigned_32);
   procedure turbo__dec__22 (addend : not null access
     interfaces__unsigned_32; addendF : natural);

-- 266:

-- 267:    procedure Dec (Addend : in out Unsigned_32;
   procedure turbo__dec__23 (addend : in out interfaces__unsigned_32;
     item : interfaces__unsigned_32);

-- 268:       Item : Unsigned_32);

-- 269:    procedure Dec (Addend : not null access Unsigned_32;
   procedure turbo__dec__24 (addend : not null access
     interfaces__unsigned_32; item : interfaces__unsigned_32; addendF :
     natural);

-- 270:       Item : Unsigned_32);

-- 271:

-- 272:    procedure Do_And (Multipliee : in out Unsigned_32;
   procedure turbo__do_and__5 (multipliee : in out
     interfaces__unsigned_32; item : interfaces__unsigned_32);

-- 273:       Item : Unsigned_32);

-- 274:    procedure Do_And (Multipliee : not null access Unsigned_32;
   procedure turbo__do_and__6 (multipliee : not null access
     interfaces__unsigned_32; item : interfaces__unsigned_32;
     multiplieeF : natural);

-- 275:       Item : Unsigned_32);

-- 276:

-- 277:    procedure Do_Or (Multipliee : in out Unsigned_32;
   procedure turbo__do_or__5 (multipliee : in out
     interfaces__unsigned_32; item : interfaces__unsigned_32);

-- 278:       Item : Unsigned_32);

-- 279:    procedure Do_Or (Multipliee : not null access Unsigned_32;
   procedure turbo__do_or__6 (multipliee : not null access
     interfaces__unsigned_32; item : interfaces__unsigned_32;
     multiplieeF : natural);

-- 280:       Item : Unsigned_32);

-- 281:

-- 282:    procedure Do_Xor (Multipliee : in out Unsigned_32;
   procedure turbo__do_xor__5 (multipliee : in out
     interfaces__unsigned_32; item : interfaces__unsigned_32);

-- 283:       Item : Unsigned_32);

-- 284:    procedure Do_Xor (Multipliee : not null access Unsigned_32;
   procedure turbo__do_xor__6 (multipliee : not null access
     interfaces__unsigned_32; item : interfaces__unsigned_32;
     multiplieeF : natural);

-- 285:       Item : Unsigned_32);

-- 286:

-- 287:    procedure Inc (Addend : in out Integer_64);
   procedure turbo__inc__25 (addend : in out interfaces__integer_64);

-- 288:    procedure Inc (Addend : not null access Integer_64);
   procedure turbo__inc__26 (addend : not null access
     interfaces__integer_64; addendF : natural);

-- 289:

-- 290:    procedure Inc (Addend : in out Integer_64;
   procedure turbo__inc__27 (addend : in out interfaces__integer_64;
     item : interfaces__integer_64);

-- 291:       Item : Integer_64);

-- 292:    procedure Inc (Addend : not null access Integer_64;
   procedure turbo__inc__28 (addend : not null access
     interfaces__integer_64; item : interfaces__integer_64; addendF :
     natural);

-- 293:       Item : Integer_64);

-- 294:

-- 295:    procedure Dec (Addend : in out Integer_64);
   procedure turbo__dec__25 (addend : in out interfaces__integer_64);

-- 296:    procedure Dec (Addend : not null access Integer_64);
   procedure turbo__dec__26 (addend : not null access
     interfaces__integer_64; addendF : natural);

-- 297:

-- 298:    procedure Dec (Addend : in out Integer_64;
   procedure turbo__dec__27 (addend : in out interfaces__integer_64;
     item : interfaces__integer_64);

-- 299:       Item : Integer_64);

-- 300:    procedure Dec (Addend : not null access Integer_64;
   procedure turbo__dec__28 (addend : not null access
     interfaces__integer_64; item : interfaces__integer_64; addendF :
     natural);

-- 301:       Item : Integer_64);

-- 302:

-- 303:    procedure Inc (Addend : in out Unsigned_64);
   procedure turbo__inc__29 (addend : in out interfaces__unsigned_64);

-- 304:    procedure Inc (Addend : not null access Unsigned_64);
   procedure turbo__inc__30 (addend : not null access
     interfaces__unsigned_64; addendF : natural);

-- 305:

-- 306:    procedure Inc (Addend : in out Unsigned_64;
   procedure turbo__inc__31 (addend : in out interfaces__unsigned_64;
     item : interfaces__unsigned_64);

-- 307:       Item : Unsigned_64);

-- 308:    procedure Inc (Addend : not null access Unsigned_64;
   procedure turbo__inc__32 (addend : not null access
     interfaces__unsigned_64; item : interfaces__unsigned_64; addendF :
     natural);

-- 309:       Item : Unsigned_64);

-- 310:

-- 311:    procedure Dec (Addend : in out Unsigned_64);
   procedure turbo__dec__29 (addend : in out interfaces__unsigned_64);

-- 312:    procedure Dec (Addend : not null access Unsigned_64);
   procedure turbo__dec__30 (addend : not null access
     interfaces__unsigned_64; addendF : natural);

-- 313:

-- 314:    procedure Dec (Addend : in out Unsigned_64;
   procedure turbo__dec__31 (addend : in out interfaces__unsigned_64;
     item : interfaces__unsigned_64);

-- 315:       Item : Unsigned_64);

-- 316:    procedure Dec (Addend : not null access Unsigned_64;
   procedure turbo__dec__32 (addend : not null access
     interfaces__unsigned_64; item : interfaces__unsigned_64; addendF :
     natural);

-- 317:       Item : Unsigned_64);

-- 318:

-- 319:    procedure Do_And (Multipliee : in out Unsigned_64;
   procedure turbo__do_and__7 (multipliee : in out
     interfaces__unsigned_64; item : interfaces__unsigned_64);

-- 320:       Item : Unsigned_64);

-- 321:    procedure Do_And (Multipliee : not null access Unsigned_64;
   procedure turbo__do_and__8 (multipliee : not null access
     interfaces__unsigned_64; item : interfaces__unsigned_64;
     multiplieeF : natural);

-- 322:       Item : Unsigned_64);

-- 323:

-- 324:    procedure Do_Or (Multipliee : in out Unsigned_64;
   procedure turbo__do_or__7 (multipliee : in out
     interfaces__unsigned_64; item : interfaces__unsigned_64);

-- 325:       Item : Unsigned_64);

-- 326:    procedure Do_Or (Multipliee : not null access Unsigned_64;
   procedure turbo__do_or__8 (multipliee : not null access
     interfaces__unsigned_64; item : interfaces__unsigned_64;
     multiplieeF : natural);

-- 327:       Item : Unsigned_64);

-- 328:

-- 329:    procedure Do_Xor (Multipliee : in out Unsigned_64;
   procedure turbo__do_xor__7 (multipliee : in out
     interfaces__unsigned_64; item : interfaces__unsigned_64);

-- 330:       Item : Unsigned_64);

-- 331:    procedure Do_Xor (Multipliee : not null access Unsigned_64;
   procedure turbo__do_xor__8 (multipliee : not null access
     interfaces__unsigned_64; item : interfaces__unsigned_64;
     multiplieeF : natural);

-- 332:       Item : Unsigned_64);

-- 333:

-- 334:    procedure Inc (Addend : in out Integer_Addr);
   procedure turbo__inc__33 (addend : in out turbo__integer_addr);

-- 335:    procedure Inc (Addend : not null access Integer_Addr);
   procedure turbo__inc__34 (addend : not null access
     turbo__integer_addr; addendF : natural);

-- 336:

-- 337:    procedure Inc (Addend : in out Integer_Addr;
   procedure turbo__inc__35 (addend : in out turbo__integer_addr; item :
     turbo__integer_addr);

-- 338:       Item : Integer_Addr);

-- 339:    procedure Inc (Addend : not null access Integer_Addr;
   procedure turbo__inc__36 (addend : not null access
     turbo__integer_addr; item : turbo__integer_addr; addendF : natural);

-- 340:       Item : Integer_Addr);

-- 341:

-- 342:    procedure Dec (Addend : in out Integer_Addr);
   procedure turbo__dec__33 (addend : in out turbo__integer_addr);

-- 343:    procedure Dec (Addend : not null access Integer_Addr);
   procedure turbo__dec__34 (addend : not null access
     turbo__integer_addr; addendF : natural);

-- 344:

-- 345:    procedure Dec (Addend : in out Integer_Addr;
   procedure turbo__dec__35 (addend : in out turbo__integer_addr; item :
     turbo__integer_addr);

-- 346:       Item : Integer_Addr);

-- 347:    procedure Dec (Addend : not null access Integer_Addr;
   procedure turbo__dec__36 (addend : not null access
     turbo__integer_addr; item : turbo__integer_addr; addendF : natural);

-- 348:       Item : Integer_Addr);

-- 349:

-- 350:    procedure Inc (Addend : in out Unsigned_Addr);
   procedure turbo__inc__37 (addend : in out turbo__unsigned_addr);

-- 351:    procedure Inc (Addend : not null access Unsigned_Addr);
   procedure turbo__inc__38 (addend : not null access
     turbo__unsigned_addr; addendF : natural);

-- 352:

-- 353:    procedure Inc (Addend : in out Unsigned_Addr;
   procedure turbo__inc__39 (addend : in out turbo__unsigned_addr; item :
     turbo__unsigned_addr);

-- 354:       Item : Unsigned_Addr);

-- 355:    procedure Inc (Addend : not null access Unsigned_Addr;
   procedure turbo__inc__40 (addend : not null access
     turbo__unsigned_addr; item : turbo__unsigned_addr; addendF :
     natural);

-- 356:       Item : Unsigned_Addr);

-- 357:

-- 358:    procedure Dec (Addend : in out Unsigned_Addr);
   procedure turbo__dec__37 (addend : in out turbo__unsigned_addr);

-- 359:    procedure Dec (Addend : not null access Unsigned_Addr);
   procedure turbo__dec__38 (addend : not null access
     turbo__unsigned_addr; addendF : natural);

-- 360:

-- 361:    procedure Dec (Addend : in out Unsigned_Addr;
   procedure turbo__dec__39 (addend : in out turbo__unsigned_addr; item :
     turbo__unsigned_addr);

-- 362:       Item : Unsigned_Addr);

-- 363:    procedure Dec (Addend : not null access Unsigned_Addr;
   procedure turbo__dec__40 (addend : not null access
     turbo__unsigned_addr; item : turbo__unsigned_addr; addendF :
     natural);

-- 364:       Item : Unsigned_Addr);

-- 365:

-- 366:    procedure Do_And (Multipliee : in out Unsigned_Addr;
   procedure turbo__do_and__9 (multipliee : in out turbo__unsigned_addr;
     item : turbo__unsigned_addr);

-- 367:       Item : Unsigned_Addr);

-- 368:    procedure Do_And (Multipliee : not null access Unsigned_Addr;
   procedure turbo__do_and__10 (multipliee : not null access
     turbo__unsigned_addr; item : turbo__unsigned_addr; multiplieeF :
     natural);

-- 369:       Item : Unsigned_Addr);

-- 370:

-- 371:    procedure Do_Or (Multipliee : in out Unsigned_Addr;
   procedure turbo__do_or__9 (multipliee : in out turbo__unsigned_addr;
     item : turbo__unsigned_addr);

-- 372:       Item : Unsigned_Addr);

-- 373:    procedure Do_Or (Multipliee : not null access Unsigned_Addr;
   procedure turbo__do_or__10 (multipliee : not null access
     turbo__unsigned_addr; item : turbo__unsigned_addr; multiplieeF :
     natural);

-- 374:       Item : Unsigned_Addr);

-- 375:

-- 376:    procedure Do_Xor (Multipliee : in out Unsigned_Addr;
   procedure turbo__do_xor__9 (multipliee : in out turbo__unsigned_addr;
     item : turbo__unsigned_addr);

-- 377:       Item : Unsigned_Addr);

-- 378:    procedure Do_Xor (Multipliee : not null access Unsigned_Addr;
   procedure turbo__do_xor__10 (multipliee : not null access
     turbo__unsigned_addr; item : turbo__unsigned_addr; multiplieeF :
     natural);

-- 379:       Item : Unsigned_Addr);

-- 380:
-- 381:    -----------------------------------
-- 382:    -- Access types for Interfaces.* --
-- 383:    -----------------------------------

-- 384:

-- 385:    type A_Integer_8     is access all Integer_8;
   type turbo__a_integer_8 is access all interfaces__integer_8;

-- 386:    type A_Integer_16    is access all Integer_16;
   type turbo__a_integer_16 is access all interfaces__integer_16;

-- 387:    type A_Integer_32    is access all Integer_32;
   type turbo__a_integer_32 is access all interfaces__integer_32;

-- 388:    type A_Integer_64    is access all Integer_64;
   type turbo__a_integer_64 is access all interfaces__integer_64;

-- 389:    type A_Integer_Addr  is access all Integer_Addr;
   type turbo__a_integer_addr is access all turbo__integer_addr;

-- 390:

-- 391:    type A_Unsigned_8    is access all Unsigned_8;
   type turbo__a_unsigned_8 is access all interfaces__unsigned_8;

-- 392:    type A_Unsigned_16   is access all Unsigned_16;
   type turbo__a_unsigned_16 is access all interfaces__unsigned_16;

-- 393:    type A_Unsigned_32   is access all Unsigned_32;
   type turbo__a_unsigned_32 is access all interfaces__unsigned_32;

-- 394:    type A_Unsigned_64   is access all Unsigned_64;
   type turbo__a_unsigned_64 is access all interfaces__unsigned_64;

-- 395:    type A_Unsigned_Addr is access all Unsigned_Addr;
   type turbo__a_unsigned_addr is access all turbo__unsigned_addr;

-- 396:
-- 397:    -- I have decided to omit A_Natural_* because
-- 398:    -- one shouldn't use access all types here, there, everywhere
-- 399:    -- A_* types are mostly for interfacing needs

-- 400:
-- 401:    ----------------
-- 402:    -- Boolean_32 --
-- 403:    ----------------

-- 404:

-- 405:    type Boolean_32 is private;
   type turbo__boolean_32 is private;

-- 406:    type A_Boolean_32 is access all Boolean_32;
   type turbo__a_boolean_32 is access all turbo__boolean_32;
   turbo__false_32 : constant turbo__boolean_32;
   turbo__true_32 : constant turbo__boolean_32;

-- 407:

-- 408:    False_32 : constant Boolean_32;

-- 409:    True_32  : constant Boolean_32;

-- 410:

-- 411:    function "+" (Item : Boolean_32) return Boolean;
   function turbo__Oadd__7 (item : turbo__boolean_32) return boolean;

-- 412:

-- 413:    function "+" (Item : Boolean_32) return Integer_32;
   function turbo__Oadd__8 (item : turbo__boolean_32) return
     interfaces__integer_32;

-- 414:

-- 415:    function "+" (Item : Boolean) return Boolean_32;
   function turbo__Oadd__9 (item : boolean) return turbo__boolean_32;

-- 416:

-- 417:    function "+" (Item : Integer_32) return Boolean_32;
   function turbo__Oadd__10 (item : interfaces__integer_32) return
     turbo__boolean_32;

-- 418:

-- 419:    function "=" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Oeq__3 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 420:    function "=" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Oeq__4 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 421:    function "=" (Left, Right : Boolean_32) return Boolean;
   function turbo__Oeq__5 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 422:

-- 423:    function ">" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Ogt__3 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 424:    function ">" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Ogt__4 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 425:    function ">" (Left, Right : Boolean_32) return Boolean;
   function turbo__Ogt__5 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 426:

-- 427:    function "<" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Olt__3 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 428:    function "<" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Olt__4 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 429:    function "<" (Left, Right : Boolean_32) return Boolean;
   function turbo__Olt__5 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 430:

-- 431:    function ">=" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Oge__3 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 432:    function ">=" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Oge__4 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 433:    function ">=" (Left, Right : Boolean_32) return Boolean;
   function turbo__Oge__5 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 434:

-- 435:    function "<=" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Ole__3 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 436:    function "<=" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Ole__4 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 437:    function "<=" (Left, Right : Boolean_32) return Boolean;
   function turbo__Ole__5 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 438:

-- 439:    function "and" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Oand__2 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 440:    function "and" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Oand__3 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 441:    function "and" (Left, Right : Boolean_32) return Boolean;
   function turbo__Oand__4 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 442:

-- 443:    function "or" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Oor__2 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 444:    function "or" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Oor__3 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 445:    function "or" (Left, Right : Boolean_32) return Boolean;
   function turbo__Oor__4 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 446:

-- 447:    function "xor" (Left : Boolean_32; Right : Boolean) return Boolean;
   function turbo__Oxor__2 (left : turbo__boolean_32; right : boolean)
     return boolean;

-- 448:    function "xor" (Left : Boolean; Right : Boolean_32) return Boolean;
   function turbo__Oxor__3 (left : boolean; right : turbo__boolean_32)
     return boolean;

-- 449:    function "xor" (Left, Right : Boolean_32) return Boolean;
   function turbo__Oxor__4 (left : turbo__boolean_32; right :
     turbo__boolean_32) return boolean;

-- 450:

-- 451:    function "not" (Item : Boolean_32) return Boolean;
   function turbo__Onot__2 (item : turbo__boolean_32) return boolean;

-- 452:

-- 453:    pragma Inline ("=", ">", "<", ">=", "<=", "+", "and", "or", "xor", "not");
   pragma inline (Oeq, Ogt, Olt, Oge, Ole, Oadd, Oand, Oor, Oxor, Onot);

-- 454:
-- 455:    ----------------
-- 456:    -- Boolean_16 --
-- 457:    ----------------

-- 458:

-- 459:    type Boolean_16 is private;
   type turbo__boolean_16 is private;

-- 460:    type A_Boolean_16 is access all Boolean_16;
   type turbo__a_boolean_16 is access all turbo__boolean_16;
   turbo__false_16 : constant turbo__boolean_16;
   turbo__true_16 : constant turbo__boolean_16;

-- 461:

-- 462:    False_16 : constant Boolean_16;

-- 463:    True_16  : constant Boolean_16;

-- 464:

-- 465:    function "+" (Item : Boolean_16) return Boolean;
   function turbo__Oadd__11 (item : turbo__boolean_16) return boolean;

-- 466:

-- 467:    function "+" (Item : Boolean_16) return Integer_16;
   function turbo__Oadd__12 (item : turbo__boolean_16) return
     interfaces__integer_16;

-- 468:

-- 469:    function "+" (Item : Boolean) return Boolean_16;
   function turbo__Oadd__13 (item : boolean) return turbo__boolean_16;

-- 470:

-- 471:    function "+" (Item : Integer_16) return Boolean_16;
   function turbo__Oadd__14 (item : interfaces__integer_16) return
     turbo__boolean_16;

-- 472:

-- 473:    function "=" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Oeq__6 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 474:    function "=" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Oeq__7 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 475:    function "=" (Left, Right : Boolean_16) return Boolean;
   function turbo__Oeq__8 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 476:

-- 477:    function ">" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Ogt__6 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 478:    function ">" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Ogt__7 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 479:    function ">" (Left, Right : Boolean_16) return Boolean;
   function turbo__Ogt__8 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 480:

-- 481:    function "<" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Olt__6 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 482:    function "<" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Olt__7 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 483:    function "<" (Left, Right : Boolean_16) return Boolean;
   function turbo__Olt__8 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 484:

-- 485:    function ">=" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Oge__6 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 486:    function ">=" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Oge__7 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 487:    function ">=" (Left, Right : Boolean_16) return Boolean;
   function turbo__Oge__8 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 488:

-- 489:    function "<=" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Ole__6 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 490:    function "<=" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Ole__7 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 491:    function "<=" (Left, Right : Boolean_16) return Boolean;
   function turbo__Ole__8 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 492:

-- 493:    function "and" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Oand__5 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 494:    function "and" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Oand__6 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 495:    function "and" (Left, Right : Boolean_16) return Boolean;
   function turbo__Oand__7 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 496:

-- 497:    function "or" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Oor__5 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 498:    function "or" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Oor__6 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 499:    function "or" (Left, Right : Boolean_16) return Boolean;
   function turbo__Oor__7 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 500:

-- 501:    function "xor" (Left : Boolean_16; Right : Boolean) return Boolean;
   function turbo__Oxor__5 (left : turbo__boolean_16; right : boolean)
     return boolean;

-- 502:    function "xor" (Left : Boolean; Right : Boolean_16) return Boolean;
   function turbo__Oxor__6 (left : boolean; right : turbo__boolean_16)
     return boolean;

-- 503:    function "xor" (Left, Right : Boolean_16) return Boolean;
   function turbo__Oxor__7 (left : turbo__boolean_16; right :
     turbo__boolean_16) return boolean;

-- 504:

-- 505:    function "not" (Item : Boolean_16) return Boolean;
   function turbo__Onot__3 (item : turbo__boolean_16) return boolean;

-- 506:

-- 507:    pragma Inline ("=", ">", "<", ">=", "<=", "+", "and", "or", "xor", "not");
   pragma inline (Oeq, Ogt, Olt, Oge, Ole, Oadd, Oand, Oor, Oxor, Onot);

-- 508:
-- 509:    ---------------
-- 510:    -- Boolean_8 --
-- 511:    ---------------

-- 512:

-- 513:    type Boolean_8 is private;
   type turbo__boolean_8 is private;

-- 514:    type A_Boolean_8 is access all Boolean_8;
   type turbo__a_boolean_8 is access all turbo__boolean_8;
   turbo__false_8 : constant turbo__boolean_8;
   turbo__true_8 : constant turbo__boolean_8;

-- 515:

-- 516:    False_8 : constant Boolean_8;

-- 517:    True_8  : constant Boolean_8;

-- 518:

-- 519:    function "+" (Item : Boolean_8) return Boolean;
   function turbo__Oadd__15 (item : turbo__boolean_8) return boolean;

-- 520:

-- 521:    function "+" (Item : Boolean_8) return Integer_8;
   function turbo__Oadd__16 (item : turbo__boolean_8) return
     interfaces__integer_8;

-- 522:

-- 523:    function "+" (Item : Boolean) return Boolean_8;
   function turbo__Oadd__17 (item : boolean) return turbo__boolean_8;

-- 524:

-- 525:    function "+" (Item : Integer_8) return Boolean_8;
   function turbo__Oadd__18 (item : interfaces__integer_8) return
     turbo__boolean_8;

-- 526:

-- 527:    function "=" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Oeq__9 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 528:    function "=" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Oeq__10 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 529:    function "=" (Left, Right : Boolean_8) return Boolean;
   function turbo__Oeq__11 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 530:

-- 531:    function ">" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Ogt__9 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 532:    function ">" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Ogt__10 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 533:    function ">" (Left, Right : Boolean_8) return Boolean;
   function turbo__Ogt__11 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 534:

-- 535:    function "<" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Olt__9 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 536:    function "<" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Olt__10 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 537:    function "<" (Left, Right : Boolean_8) return Boolean;
   function turbo__Olt__11 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 538:

-- 539:    function ">=" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Oge__9 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 540:    function ">=" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Oge__10 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 541:    function ">=" (Left, Right : Boolean_8) return Boolean;
   function turbo__Oge__11 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 542:

-- 543:    function "<=" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Ole__9 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 544:    function "<=" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Ole__10 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 545:    function "<=" (Left, Right : Boolean_8) return Boolean;
   function turbo__Ole__11 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 546:

-- 547:    function "and" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Oand__8 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 548:    function "and" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Oand__9 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 549:    function "and" (Left, Right : Boolean_8) return Boolean;
   function turbo__Oand__10 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 550:

-- 551:    function "or" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Oor__8 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 552:    function "or" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Oor__9 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 553:    function "or" (Left, Right : Boolean_8) return Boolean;
   function turbo__Oor__10 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 554:

-- 555:    function "xor" (Left : Boolean_8; Right : Boolean) return Boolean;
   function turbo__Oxor__8 (left : turbo__boolean_8; right : boolean)
     return boolean;

-- 556:    function "xor" (Left : Boolean; Right : Boolean_8) return Boolean;
   function turbo__Oxor__9 (left : boolean; right : turbo__boolean_8)
     return boolean;

-- 557:    function "xor" (Left, Right : Boolean_8) return Boolean;
   function turbo__Oxor__10 (left : turbo__boolean_8; right :
     turbo__boolean_8) return boolean;

-- 558:

-- 559:    function "not" (Item : Boolean_8) return Boolean;
   function turbo__Onot__4 (item : turbo__boolean_8) return boolean;

-- 560:

-- 561:    pragma Inline ("=", ">", "<", ">=", "<=", "+", "and", "or", "xor", "not");
   pragma inline (Oeq, Ogt, Olt, Oge, Ole, Oadd, Oand, Oor, Oxor, Onot);

-- 562:
-- 563:    -------------
-- 564:    -- Strings --
-- 565:    -------------

-- 566:

-- 567:    type Buffer_8 is new String;
   type turbo__buffer_8 is new string;

-- 568:    type Buffer_16 is new Wide_String;
   type turbo__buffer_16 is new wide_string;

-- 569:    type Buffer_32 is new Wide_Wide_String;
   type turbo__buffer_32 is new wide_wide_string;

-- 570:

-- 571:    subtype Char_8 is Character;
   subtype turbo__char_8 is character;

-- 572:    subtype Char_16 is Wide_Character;
   subtype turbo__char_16 is wide_character;

-- 573:    subtype Char_32 is Wide_Wide_Character;
   subtype turbo__char_32 is wide_wide_character;
   turbo__nul_8 : constant turbo__char_8 := '["00"]';
   turbo__nul_16 : constant turbo__char_16 := '["00"]';
   turbo__nul_32 : constant turbo__char_32 := '["00"]';

-- 574:

-- 575:    NUL_8 : constant Char_8 := Char_8'Val (0);

-- 576:    NUL_16 : constant Char_16 := Char_16'Val (0);

-- 577:    NUL_32 : constant Char_32 := Char_32'Val (0);

-- 578:

-- 579:    type A_Char_8 is new System.Address;
   [type turbo__Ta_char_8B is  mod 16#1000_0000_0#]
   freeze turbo__Ta_char_8B []

-- 580:    type A_Char_16 is new System.Address;
   type turbo__a_char_8 is new system.system__address;
   [type turbo__Ta_char_16B is  mod 16#1000_0000_0#]
   freeze turbo__Ta_char_16B []

-- 581:    type A_Char_32 is new System.Address;
   type turbo__a_char_16 is new system.system__address;
   [type turbo__Ta_char_32B is  mod 16#1000_0000_0#]
   freeze turbo__Ta_char_32B []

-- 582:

-- 583:    type A_A_Char_8 is access all A_Char_8;
   type turbo__a_char_32 is new system.system__address;

-- 584:    type A_A_Char_16 is access all A_Char_16;
   type turbo__a_a_char_8 is access all turbo__a_char_8;

-- 585:    type A_A_Char_32 is access all A_Char_32;
   type turbo__a_a_char_16 is access all turbo__a_char_16;
   type turbo__a_a_char_32 is access all turbo__a_char_32;

-- 586:
-- 587:    ---------------
-- 588:    -- A_Address --
-- 589:    ---------------

-- 590:

-- 591:    type A_Address is access all System.Address;
   type turbo__a_address is access all system.system__address;
private
-- 592: --   type P_P_Address is access all P_Address;

-- 593:
-- 594: --   No GUID in Turbo!
-- 595: --     ----------
-- 596: --     -- GUID --
-- 597: --     ----------
-- 598: --
-- 599: --     type T_GUID_D4 is
-- 600: --       array (0 .. 7) of Unsigned_8;
-- 601: --     pragma Pack (T_GUID_D4);
-- 602: --
-- 603: --     type T_GUID is record
-- 604: --        D1 : Unsigned_32;
-- 605: --        D2 : Unsigned_16;
-- 606: --        D3 : Unsigned_16;
-- 607: --        D4 : T_GUID_D4;
-- 608: --     end record;
-- 609: --     pragma Pack (T_GUID);
-- 610: --
-- 611: --     type A_GUID is access all T_GUID;

-- 612:
-- 613:    -- type T_Handle is new Integer_Ptr; -- no T_Handle in Turbo!
-- 614:    -- type A_Handle is access all T_Handle;
-- 615:    -- TODO: deny most integer operations

-- 616:

-- 617: private

-- 618:

-- 619:    type Boolean_32 is new Integer_32;
   [type turbo__Tboolean_32B is new interfaces__Tinteger_32B]
   freeze turbo__Tboolean_32B []
   type turbo__boolean_32 is new interfaces__integer_32;

-- 620:

-- 621:    False_32 : constant Boolean_32 := 0;
   freeze turbo__boolean_32 []
   turbo__false_32 : constant turbo__boolean_32 := 0;
   turbo__true_32 : constant turbo__boolean_32 := 1;

-- 622:    True_32  : constant Boolean_32 := 1;

-- 623:

-- 624:    type Boolean_16 is new Integer_16;
   [type interfaces__Tinteger_16B is new short_integer]
   [type turbo__Tboolean_16B is new interfaces__Tinteger_16B]
   freeze turbo__Tboolean_16B []
   type turbo__boolean_16 is new interfaces__integer_16;

-- 625:

-- 626:    False_16 : constant Boolean_16 := 0;
   freeze turbo__boolean_16 []
   turbo__false_16 : constant turbo__boolean_16 := 0;
   turbo__true_16 : constant turbo__boolean_16 := 1;

-- 627:    True_16  : constant Boolean_16 := 1;

-- 628:

-- 629:    type Boolean_8 is new Integer_8;
   [type interfaces__Tinteger_8B is new short_short_integer]
   [type turbo__Tboolean_8B is new interfaces__Tinteger_8B]
   freeze turbo__Tboolean_8B []
   type turbo__boolean_8 is new interfaces__integer_8;

-- 630:

-- 631:    False_8 : constant Boolean_8 := 0;
   freeze turbo__boolean_8 []
   turbo__false_8 : constant turbo__boolean_8 := 0;
   turbo__true_8 : constant turbo__boolean_8 := 1;

-- 632:    True_8  : constant Boolean_8 := 1;
   freeze turbo__a_integer_8 []
   freeze turbo__a_integer_16 []
   freeze turbo__a_integer_32 []
   freeze turbo__a_integer_64 []
   freeze turbo__a_integer_addr []
   freeze turbo__a_unsigned_8 []
   freeze turbo__a_unsigned_16 []
   freeze turbo__a_unsigned_32 []
   freeze turbo__a_unsigned_64 []
   freeze turbo__a_unsigned_addr []
   freeze turbo__a_boolean_32 []
   freeze turbo__Oadd__7 []
   freeze turbo__Oadd__8 []
   freeze turbo__Oadd__9 []
   freeze turbo__Oadd__10 []
   freeze turbo__Oeq__3 []
   freeze turbo__One__3 []
   freeze turbo__Oeq__4 []
   freeze turbo__One__4 []
   freeze turbo__Oeq__5 []
   freeze turbo__One__5 []
   freeze turbo__Ogt__3 []
   freeze turbo__Ogt__4 []
   freeze turbo__Ogt__5 []
   freeze turbo__Olt__3 []
   freeze turbo__Olt__4 []
   freeze turbo__Olt__5 []
   freeze turbo__Oge__3 []
   freeze turbo__Oge__4 []
   freeze turbo__Oge__5 []
   freeze turbo__Ole__3 []
   freeze turbo__Ole__4 []
   freeze turbo__Ole__5 []
   freeze turbo__Oand__2 []
   freeze turbo__Oand__3 []
   freeze turbo__Oand__4 []
   freeze turbo__Oor__2 []
   freeze turbo__Oor__3 []
   freeze turbo__Oor__4 []
   freeze turbo__Oxor__2 []
   freeze turbo__Oxor__3 []
   freeze turbo__Oxor__4 []
   freeze turbo__Onot__2 []
   freeze turbo__a_boolean_16 []
   freeze turbo__Oadd__11 []
   freeze turbo__Oadd__12 []
   freeze turbo__Oadd__13 []
   freeze turbo__Oadd__14 []
   freeze turbo__Oeq__6 []
   freeze turbo__One__6 []
   freeze turbo__Oeq__7 []
   freeze turbo__One__7 []
   freeze turbo__Oeq__8 []
   freeze turbo__One__8 []
   freeze turbo__Ogt__6 []
   freeze turbo__Ogt__7 []
   freeze turbo__Ogt__8 []
   freeze turbo__Olt__6 []
   freeze turbo__Olt__7 []
   freeze turbo__Olt__8 []
   freeze turbo__Oge__6 []
   freeze turbo__Oge__7 []
   freeze turbo__Oge__8 []
   freeze turbo__Ole__6 []
   freeze turbo__Ole__7 []
   freeze turbo__Ole__8 []
   freeze turbo__Oand__5 []
   freeze turbo__Oand__6 []
   freeze turbo__Oand__7 []
   freeze turbo__Oor__5 []
   freeze turbo__Oor__6 []
   freeze turbo__Oor__7 []
   freeze turbo__Oxor__5 []
   freeze turbo__Oxor__6 []
   freeze turbo__Oxor__7 []
   freeze turbo__Onot__3 []
   freeze turbo__a_boolean_8 []
   freeze turbo__Oadd__15 []
   freeze turbo__Oadd__16 []
   freeze turbo__Oadd__17 []
   freeze turbo__Oadd__18 []
   freeze turbo__Oeq__9 []
   freeze turbo__One__9 []
   freeze turbo__Oeq__10 []
   freeze turbo__One__10 []
   freeze turbo__Oeq__11 []
   freeze turbo__One__11 []
   freeze turbo__Ogt__9 []
   freeze turbo__Ogt__10 []
   freeze turbo__Ogt__11 []
   freeze turbo__Olt__9 []
   freeze turbo__Olt__10 []
   freeze turbo__Olt__11 []
   freeze turbo__Oge__9 []
   freeze turbo__Oge__10 []
   freeze turbo__Oge__11 []
   freeze turbo__Ole__9 []
   freeze turbo__Ole__10 []
   freeze turbo__Ole__11 []
   freeze turbo__Oand__8 []
   freeze turbo__Oand__9 []
   freeze turbo__Oand__10 []
   freeze turbo__Oor__8 []
   freeze turbo__Oor__9 []
   freeze turbo__Oor__10 []
   freeze turbo__Oxor__8 []
   freeze turbo__Oxor__9 []
   freeze turbo__Oxor__10 []
   freeze turbo__Onot__4 []
   freeze turbo__buffer_8 []
   freeze turbo__buffer_16 []
   freeze turbo__buffer_32 []
   freeze turbo__a_char_8 []
   freeze turbo__One__12 []
   freeze turbo__a_char_16 []
   freeze turbo__One__13 []
   freeze turbo__a_char_32 []
   freeze turbo__One__14 []
   freeze turbo__a_a_char_8 []
   freeze turbo__a_a_char_16 []
   freeze turbo__a_a_char_32 []
   freeze turbo__a_address []

-- 633:

-- 634: end Turbo;
end turbo;
