--
-- Created by Ada Mill (https://github.com/grahamstark/ada_mill)
-- 
with Ada.Containers.Vectors;
--
-- FIXME: may not be needed
--
with Ada.Calendar;

with Base_Types; use Base_Types;

with Ada.Strings.Unbounded;
with Data_Constants;
with Base_Model_Types;
with Ada.Calendar;
with SCP_Types;
with Weighting_Commons;

-- === CUSTOM IMPORTS START ===
-- === CUSTOM IMPORTS END ===

package Ukds.frs is

   use Ada.Strings.Unbounded;
   
   use Data_Constants;
   use Base_Model_Types;
   use Ada.Calendar;
   use SCP_Types;
   use Weighting_Commons;

   -- === CUSTOM TYPES START ===
   -- === CUSTOM TYPES END ===



   --
   -- record modelling Vehicle : vehicle
   --
   type Vehicle is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      vehseq : Integer := 0;
      vehic : Integer := 0;
      vehown : Integer := 0;
      month : Integer := 0;
   end record;
   --
   -- container for Vehicle : vehicle
   --
   package Vehicle_List_Package is new Ada.Containers.Vectors
      (Element_Type => Vehicle,
      Index_Type => Positive );
   subtype Vehicle_List is Vehicle_List_Package.Vector;
   --
   -- default value for Vehicle : vehicle
   --
   Null_Vehicle : constant Vehicle := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         vehseq => 0,
         vehic => 0,
         vehown => 0,
         month => 0
   );
   --
   -- simple print routine for Vehicle : vehicle
   --
   function To_String( rec : Vehicle ) return String;

   --
   -- record modelling Transact : transact
   --
   type Transact is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      key1 : Integer := 0;
      key2 : Integer := 0;
      key3 : Integer := 0;
      key4 : Integer := 0;
      key5 : Integer := 0;
      frstable : Unbounded_String := To_Unbounded_String( "''" );
      frsvar : Unbounded_String := To_Unbounded_String( "''" );
      old_val : Amount := 0.0;
      new_val : Amount := 0.0;
      datetime : Ada.Calendar.Time := FIRST_DATE;
      appldate : Ada.Calendar.Time := FIRST_DATE;
      batch : Integer := 0;
      trantype : Unbounded_String := To_Unbounded_String( "''" );
      reason : Integer := 0;
      rowid : Integer := 0;
   end record;
   --
   -- container for Transact : transact
   --
   package Transact_List_Package is new Ada.Containers.Vectors
      (Element_Type => Transact,
      Index_Type => Positive );
   subtype Transact_List is Transact_List_Package.Vector;
   --
   -- default value for Transact : transact
   --
   Null_Transact : constant Transact := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         key1 => 0,
         key2 => 0,
         key3 => 0,
         key4 => 0,
         key5 => 0,
         frstable => To_Unbounded_String( "''" ),
         frsvar => To_Unbounded_String( "''" ),
         old_val => 0.0,
         new_val => 0.0,
         datetime => FIRST_DATE,
         appldate => FIRST_DATE,
         batch => 0,
         trantype => To_Unbounded_String( "''" ),
         reason => 0,
         rowid => 0
   );
   --
   -- simple print routine for Transact : transact
   --
   function To_String( rec : Transact ) return String;

   --
   -- record modelling Renter : renter
   --
   type Renter is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      accjbp01 : Integer := 0;
      accjbp02 : Integer := 0;
      accjbp03 : Integer := 0;
      accjbp04 : Integer := 0;
      accjbp05 : Integer := 0;
      accjbp06 : Integer := 0;
      accjbp07 : Integer := 0;
      accjbp08 : Integer := 0;
      accjbp09 : Integer := 0;
      accjbp10 : Integer := 0;
      accjbp11 : Integer := 0;
      accjbp12 : Integer := 0;
      accjbp13 : Integer := 0;
      accjbp14 : Integer := 0;
      accjob : Integer := 0;
      accnonhh : Integer := 0;
      ctract : Integer := 0;
      eligamt : Amount := 0.0;
      eligpd : Integer := 0;
      fairrent : Integer := 0;
      furnish : Integer := 0;
      hbenamt : Amount := 0.0;
      hbenchk : Integer := 0;
      hbenefit : Integer := 0;
      hbenpd : Integer := 0;
      hbenwait : Integer := 0;
      hbweeks : Integer := 0;
      landlord : Integer := 0;
      niystart : Integer := 0;
      othway : Integer := 0;
      rebate : Integer := 0;
      rent : Amount := 0.0;
      rentdk : Integer := 0;
      rentdoc : Integer := 0;
      rentfull : Amount := 0.0;
      renthol : Integer := 0;
      rentpd : Integer := 0;
      resll : Integer := 0;
      resll2 : Integer := 0;
      serinc1 : Integer := 0;
      serinc2 : Integer := 0;
      serinc3 : Integer := 0;
      serinc4 : Integer := 0;
      serinc5 : Integer := 0;
      short1 : Integer := 0;
      short2 : Integer := 0;
      weekhol : Integer := 0;
      wsinc : Integer := 0;
      wsincamt : Amount := 0.0;
      ystartr : Integer := 0;
      month : Integer := 0;
      hbyears : Integer := 0;
      lowshort : Integer := 0;
      othtype : Integer := 0;
      tentype : Integer := 0;
      hbmnth : Integer := 0;
      hbyear : Integer := 0;
      issue : Integer := 0;
      hbrecp : Integer := 0;
      lhaexs : Integer := 0;
      lhalss : Integer := 0;
      rentpd1 : Integer := 0;
      rentpd2 : Integer := 0;
      serinc6 : Integer := 0;
      serinc7 : Integer := 0;
      serinc8 : Integer := 0;
      serincam : Integer := 0;
   end record;
   --
   -- container for Renter : renter
   --
   package Renter_List_Package is new Ada.Containers.Vectors
      (Element_Type => Renter,
      Index_Type => Positive );
   subtype Renter_List is Renter_List_Package.Vector;
   --
   -- default value for Renter : renter
   --
   Null_Renter : constant Renter := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         accjbp01 => 0,
         accjbp02 => 0,
         accjbp03 => 0,
         accjbp04 => 0,
         accjbp05 => 0,
         accjbp06 => 0,
         accjbp07 => 0,
         accjbp08 => 0,
         accjbp09 => 0,
         accjbp10 => 0,
         accjbp11 => 0,
         accjbp12 => 0,
         accjbp13 => 0,
         accjbp14 => 0,
         accjob => 0,
         accnonhh => 0,
         ctract => 0,
         eligamt => 0.0,
         eligpd => 0,
         fairrent => 0,
         furnish => 0,
         hbenamt => 0.0,
         hbenchk => 0,
         hbenefit => 0,
         hbenpd => 0,
         hbenwait => 0,
         hbweeks => 0,
         landlord => 0,
         niystart => 0,
         othway => 0,
         rebate => 0,
         rent => 0.0,
         rentdk => 0,
         rentdoc => 0,
         rentfull => 0.0,
         renthol => 0,
         rentpd => 0,
         resll => 0,
         resll2 => 0,
         serinc1 => 0,
         serinc2 => 0,
         serinc3 => 0,
         serinc4 => 0,
         serinc5 => 0,
         short1 => 0,
         short2 => 0,
         weekhol => 0,
         wsinc => 0,
         wsincamt => 0.0,
         ystartr => 0,
         month => 0,
         hbyears => 0,
         lowshort => 0,
         othtype => 0,
         tentype => 0,
         hbmnth => 0,
         hbyear => 0,
         issue => 0,
         hbrecp => 0,
         lhaexs => 0,
         lhalss => 0,
         rentpd1 => 0,
         rentpd2 => 0,
         serinc6 => 0,
         serinc7 => 0,
         serinc8 => 0,
         serincam => 0
   );
   --
   -- simple print routine for Renter : renter
   --
   function To_String( rec : Renter ) return String;

   --
   -- record modelling Rentcont : rentcont
   --
   type Rentcont is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      rentseq : Integer := 0;
      accamt : Amount := 0.0;
      accchk : Integer := 0;
      accpay : Integer := 0;
      accpd : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Rentcont : rentcont
   --
   package Rentcont_List_Package is new Ada.Containers.Vectors
      (Element_Type => Rentcont,
      Index_Type => Positive );
   subtype Rentcont_List is Rentcont_List_Package.Vector;
   --
   -- default value for Rentcont : rentcont
   --
   Null_Rentcont : constant Rentcont := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         rentseq => 0,
         accamt => 0.0,
         accchk => 0,
         accpay => 0,
         accpd => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Rentcont : rentcont
   --
   function To_String( rec : Rentcont ) return String;

   --
   -- record modelling Prscrptn : prscrptn
   --
   type Prscrptn is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      issue : Integer := 0;
      med12m01 : Integer := 0;
      med12m02 : Integer := 0;
      med12m03 : Integer := 0;
      med12m04 : Integer := 0;
      med12m05 : Integer := 0;
      med12m06 : Integer := 0;
      med12m07 : Integer := 0;
      med12m08 : Integer := 0;
      med12m09 : Integer := 0;
      med12m10 : Integer := 0;
      med12m11 : Integer := 0;
      med12m12 : Integer := 0;
      med12m13 : Integer := 0;
      medrep : Integer := 0;
      medrpnm : Integer := 0;
      month : Integer := 0;
   end record;
   --
   -- container for Prscrptn : prscrptn
   --
   package Prscrptn_List_Package is new Ada.Containers.Vectors
      (Element_Type => Prscrptn,
      Index_Type => Positive );
   subtype Prscrptn_List is Prscrptn_List_Package.Vector;
   --
   -- default value for Prscrptn : prscrptn
   --
   Null_Prscrptn : constant Prscrptn := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         issue => 0,
         med12m01 => 0,
         med12m02 => 0,
         med12m03 => 0,
         med12m04 => 0,
         med12m05 => 0,
         med12m06 => 0,
         med12m07 => 0,
         med12m08 => 0,
         med12m09 => 0,
         med12m10 => 0,
         med12m11 => 0,
         med12m12 => 0,
         med12m13 => 0,
         medrep => 0,
         medrpnm => 0,
         month => 0
   );
   --
   -- simple print routine for Prscrptn : prscrptn
   --
   function To_String( rec : Prscrptn ) return String;

   --
   -- record modelling Pianon1516 : pianon1516
   --
   type Pianon1516 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      adultb : Integer := 0;
      benunit : Integer := 0;
      ethgrphh : Integer := 0;
      chbenbu : Integer := 0;
      winpaybu : Amount := 0.0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      newfamb2 : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      tvpaybu : Amount := 0.0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Integer := 0;
      sing_q2 : Integer := 0;
      sing_q3 : Integer := 0;
      sing_q4 : Integer := 0;
      sing_q5 : Integer := 0;
      asin_q1 : Integer := 0;
      asin_q2 : Integer := 0;
      asin_q3 : Integer := 0;
      asin_q4 : Integer := 0;
      asin_q5 : Integer := 0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianon1516 : pianon1516
   --
   package Pianon1516_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianon1516,
      Index_Type => Positive );
   subtype Pianon1516_List is Pianon1516_List_Package.Vector;
   --
   -- default value for Pianon1516 : pianon1516
   --
   Null_Pianon1516 : constant Pianon1516 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         adultb => 0,
         benunit => 0,
         ethgrphh => 0,
         chbenbu => 0,
         winpaybu => 0.0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         newfamb2 => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         tvpaybu => 0.0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0,
         sing_q2 => 0,
         sing_q3 => 0,
         sing_q4 => 0,
         sing_q5 => 0,
         asin_q1 => 0,
         asin_q2 => 0,
         asin_q3 => 0,
         asin_q4 => 0,
         asin_q5 => 0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianon1516 : pianon1516
   --
   function To_String( rec : Pianon1516 ) return String;

   --
   -- record modelling Pianon1415 : pianon1415
   --
   type Pianon1415 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      adultb : Integer := 0;
      benunit : Integer := 0;
      ethgrphh : Integer := 0;
      winpaybu : Amount := 0.0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      newfamb2 : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      pinannbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      tvpaybu : Amount := 0.0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Amount := 0.0;
      sing_q2 : Amount := 0.0;
      sing_q3 : Amount := 0.0;
      sing_q4 : Amount := 0.0;
      sing_q5 : Amount := 0.0;
      asin_q1 : Amount := 0.0;
      asin_q2 : Amount := 0.0;
      asin_q3 : Amount := 0.0;
      asin_q4 : Amount := 0.0;
      asin_q5 : Amount := 0.0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianon1415 : pianon1415
   --
   package Pianon1415_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianon1415,
      Index_Type => Positive );
   subtype Pianon1415_List is Pianon1415_List_Package.Vector;
   --
   -- default value for Pianon1415 : pianon1415
   --
   Null_Pianon1415 : constant Pianon1415 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         adultb => 0,
         benunit => 0,
         ethgrphh => 0,
         winpaybu => 0.0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         newfamb2 => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         pinannbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         tvpaybu => 0.0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0.0,
         sing_q2 => 0.0,
         sing_q3 => 0.0,
         sing_q4 => 0.0,
         sing_q5 => 0.0,
         asin_q1 => 0.0,
         asin_q2 => 0.0,
         asin_q3 => 0.0,
         asin_q4 => 0.0,
         asin_q5 => 0.0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianon1415 : pianon1415
   --
   function To_String( rec : Pianon1415 ) return String;

   --
   -- record modelling Pianon1314 : pianon1314
   --
   type Pianon1314 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      adultb : Integer := 0;
      benunit : Integer := 0;
      ethgrphh : Integer := 0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      newfamb2 : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Amount := 0.0;
      sing_q2 : Amount := 0.0;
      sing_q3 : Amount := 0.0;
      sing_q4 : Amount := 0.0;
      sing_q5 : Amount := 0.0;
      asin_q1 : Amount := 0.0;
      asin_q2 : Amount := 0.0;
      asin_q3 : Amount := 0.0;
      asin_q4 : Amount := 0.0;
      asin_q5 : Amount := 0.0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianon1314 : pianon1314
   --
   package Pianon1314_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianon1314,
      Index_Type => Positive );
   subtype Pianon1314_List is Pianon1314_List_Package.Vector;
   --
   -- default value for Pianon1314 : pianon1314
   --
   Null_Pianon1314 : constant Pianon1314 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         adultb => 0,
         benunit => 0,
         ethgrphh => 0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         newfamb2 => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0.0,
         sing_q2 => 0.0,
         sing_q3 => 0.0,
         sing_q4 => 0.0,
         sing_q5 => 0.0,
         asin_q1 => 0.0,
         asin_q2 => 0.0,
         asin_q3 => 0.0,
         asin_q4 => 0.0,
         asin_q5 => 0.0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianon1314 : pianon1314
   --
   function To_String( rec : Pianon1314 ) return String;

   --
   -- record modelling Pianon1213 : pianon1213
   --
   type Pianon1213 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      adultb : Integer := 0;
      benunit : Integer := 0;
      ethgrphh : Integer := 0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      newfamb2 : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Amount := 0.0;
      sing_q2 : Amount := 0.0;
      sing_q3 : Amount := 0.0;
      sing_q4 : Amount := 0.0;
      sing_q5 : Amount := 0.0;
      asin_q1 : Amount := 0.0;
      asin_q2 : Amount := 0.0;
      asin_q3 : Amount := 0.0;
      asin_q4 : Amount := 0.0;
      asin_q5 : Amount := 0.0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianon1213 : pianon1213
   --
   package Pianon1213_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianon1213,
      Index_Type => Positive );
   subtype Pianon1213_List is Pianon1213_List_Package.Vector;
   --
   -- default value for Pianon1213 : pianon1213
   --
   Null_Pianon1213 : constant Pianon1213 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         adultb => 0,
         benunit => 0,
         ethgrphh => 0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         newfamb2 => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0.0,
         sing_q2 => 0.0,
         sing_q3 => 0.0,
         sing_q4 => 0.0,
         sing_q5 => 0.0,
         asin_q1 => 0.0,
         asin_q2 => 0.0,
         asin_q3 => 0.0,
         asin_q4 => 0.0,
         asin_q5 => 0.0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianon1213 : pianon1213
   --
   function To_String( rec : Pianon1213 ) return String;

   --
   -- record modelling Pianon1011 : pianon1011
   --
   type Pianon1011 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      adultb : Integer := 0;
      benunit : Integer := 0;
      ethgrphh : Integer := 0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      newfamb2 : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Amount := 0.0;
      sing_q2 : Amount := 0.0;
      sing_q3 : Amount := 0.0;
      sing_q4 : Amount := 0.0;
      sing_q5 : Amount := 0.0;
      asin_q1 : Amount := 0.0;
      asin_q2 : Amount := 0.0;
      asin_q3 : Amount := 0.0;
      asin_q4 : Amount := 0.0;
      asin_q5 : Amount := 0.0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianon1011 : pianon1011
   --
   package Pianon1011_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianon1011,
      Index_Type => Positive );
   subtype Pianon1011_List is Pianon1011_List_Package.Vector;
   --
   -- default value for Pianon1011 : pianon1011
   --
   Null_Pianon1011 : constant Pianon1011 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         adultb => 0,
         benunit => 0,
         ethgrphh => 0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         newfamb2 => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0.0,
         sing_q2 => 0.0,
         sing_q3 => 0.0,
         sing_q4 => 0.0,
         sing_q5 => 0.0,
         asin_q1 => 0.0,
         asin_q2 => 0.0,
         asin_q3 => 0.0,
         asin_q4 => 0.0,
         asin_q5 => 0.0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianon1011 : pianon1011
   --
   function To_String( rec : Pianon1011 ) return String;

   --
   -- record modelling Pianon0910 : pianon0910
   --
   type Pianon0910 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      adultb : Integer := 0;
      ethgrphh : Integer := 0;
      benunit : Integer := 0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      newfamb2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Amount := 0.0;
      sing_q2 : Amount := 0.0;
      sing_q3 : Amount := 0.0;
      sing_q4 : Amount := 0.0;
      sing_q5 : Amount := 0.0;
      asin_q1 : Amount := 0.0;
      asin_q2 : Amount := 0.0;
      asin_q3 : Amount := 0.0;
      asin_q4 : Amount := 0.0;
      asin_q5 : Amount := 0.0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianon0910 : pianon0910
   --
   package Pianon0910_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianon0910,
      Index_Type => Positive );
   subtype Pianon0910_List is Pianon0910_List_Package.Vector;
   --
   -- default value for Pianon0910 : pianon0910
   --
   Null_Pianon0910 : constant Pianon0910 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         adultb => 0,
         ethgrphh => 0,
         benunit => 0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         newfamb2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0.0,
         sing_q2 => 0.0,
         sing_q3 => 0.0,
         sing_q4 => 0.0,
         sing_q5 => 0.0,
         asin_q1 => 0.0,
         asin_q2 => 0.0,
         asin_q3 => 0.0,
         asin_q4 => 0.0,
         asin_q5 => 0.0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianon0910 : pianon0910
   --
   function To_String( rec : Pianon0910 ) return String;

   --
   -- record modelling Pianom0809 : pianom0809
   --
   type Pianom0809 is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      gvtregn : Integer := 0;
      fambu : Integer := 0;
      newfambu : Integer := 0;
      sexhd : Integer := 0;
      london : Integer := 0;
      adultb : Integer := 0;
      ethgrphh : Integer := 0;
      benunit : Integer := 0;
      gs_newbu : Integer := 0;
      gs_newpp : Integer := 0;
      mbhcdec : Integer := 0;
      obhcdec : Integer := 0;
      mahcdec : Integer := 0;
      oahcdec : Integer := 0;
      sexsp : Integer := 0;
      pidefbhc : Amount := 0.0;
      pidefahc : Amount := 0.0;
      pigrosbu : Integer := 0;
      pinincbu : Integer := 0;
      pigoccbu : Integer := 0;
      pippenbu : Integer := 0;
      piginvbu : Integer := 0;
      pigernbu : Integer := 0;
      pibenibu : Integer := 0;
      piothibu : Integer := 0;
      pinahcbu : Integer := 0;
      piirbbu : Integer := 0;
      pidisben : Integer := 0;
      piretben : Integer := 0;
      pripenbu : Integer := 0;
      nonben2bu : Integer := 0;
      perbenbu : Integer := 0;
      perbenbu2 : Integer := 0;
      rrpen : Integer := 0;
      newfambu2 : Integer := 0;
      dummy : Integer := 0;
      coup_q1 : Amount := 0.0;
      coup_q2 : Amount := 0.0;
      coup_q3 : Amount := 0.0;
      coup_q4 : Amount := 0.0;
      coup_q5 : Amount := 0.0;
      acou_q1 : Amount := 0.0;
      acou_q2 : Amount := 0.0;
      acou_q3 : Amount := 0.0;
      acou_q4 : Amount := 0.0;
      acou_q5 : Amount := 0.0;
      sing_q1 : Amount := 0.0;
      sing_q2 : Amount := 0.0;
      sing_q3 : Amount := 0.0;
      sing_q4 : Amount := 0.0;
      sing_q5 : Amount := 0.0;
      asin_q1 : Amount := 0.0;
      asin_q2 : Amount := 0.0;
      asin_q3 : Amount := 0.0;
      asin_q4 : Amount := 0.0;
      asin_q5 : Amount := 0.0;
      clust : Integer := 0;
      strat : Integer := 0;
      agehd80 : Integer := 0;
      agesp80 : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
   end record;
   --
   -- container for Pianom0809 : pianom0809
   --
   package Pianom0809_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pianom0809,
      Index_Type => Positive );
   subtype Pianom0809_List is Pianom0809_List_Package.Vector;
   --
   -- default value for Pianom0809 : pianom0809
   --
   Null_Pianom0809 : constant Pianom0809 := (
         user_id => 0,
         edition => 0,
         year => 0,
         gvtregn => 0,
         fambu => 0,
         newfambu => 0,
         sexhd => 0,
         london => 0,
         adultb => 0,
         ethgrphh => 0,
         benunit => 0,
         gs_newbu => 0,
         gs_newpp => 0,
         mbhcdec => 0,
         obhcdec => 0,
         mahcdec => 0,
         oahcdec => 0,
         sexsp => 0,
         pidefbhc => 0.0,
         pidefahc => 0.0,
         pigrosbu => 0,
         pinincbu => 0,
         pigoccbu => 0,
         pippenbu => 0,
         piginvbu => 0,
         pigernbu => 0,
         pibenibu => 0,
         piothibu => 0,
         pinahcbu => 0,
         piirbbu => 0,
         pidisben => 0,
         piretben => 0,
         pripenbu => 0,
         nonben2bu => 0,
         perbenbu => 0,
         perbenbu2 => 0,
         rrpen => 0,
         newfambu2 => 0,
         dummy => 0,
         coup_q1 => 0.0,
         coup_q2 => 0.0,
         coup_q3 => 0.0,
         coup_q4 => 0.0,
         coup_q5 => 0.0,
         acou_q1 => 0.0,
         acou_q2 => 0.0,
         acou_q3 => 0.0,
         acou_q4 => 0.0,
         acou_q5 => 0.0,
         sing_q1 => 0.0,
         sing_q2 => 0.0,
         sing_q3 => 0.0,
         sing_q4 => 0.0,
         sing_q5 => 0.0,
         asin_q1 => 0.0,
         asin_q2 => 0.0,
         asin_q3 => 0.0,
         asin_q4 => 0.0,
         asin_q5 => 0.0,
         clust => 0,
         strat => 0,
         agehd80 => 0,
         agesp80 => 0,
         sernum => Sernum_Value'First
   );
   --
   -- simple print routine for Pianom0809 : pianom0809
   --
   function To_String( rec : Pianom0809 ) return String;

   --
   -- record modelling Pension : pension
   --
   type Pension is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      penseq : Integer := 0;
      another : Integer := 0;
      penoth : Integer := 0;
      penpay : Amount := 0.0;
      penpd : Integer := 0;
      pentax : Integer := 0;
      pentype : Integer := 0;
      poamt : Amount := 0.0;
      poinc : Integer := 0;
      posour : Integer := 0;
      ptamt : Amount := 0.0;
      ptinc : Integer := 0;
      trights : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
      penpd1 : Integer := 0;
      penpd2 : Integer := 0;
   end record;
   --
   -- container for Pension : pension
   --
   package Pension_List_Package is new Ada.Containers.Vectors
      (Element_Type => Pension,
      Index_Type => Positive );
   subtype Pension_List is Pension_List_Package.Vector;
   --
   -- default value for Pension : pension
   --
   Null_Pension : constant Pension := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         penseq => 0,
         another => 0,
         penoth => 0,
         penpay => 0.0,
         penpd => 0,
         pentax => 0,
         pentype => 0,
         poamt => 0.0,
         poinc => 0,
         posour => 0,
         ptamt => 0.0,
         ptinc => 0,
         trights => 0,
         month => 0,
         issue => 0,
         penpd1 => 0,
         penpd2 => 0
   );
   --
   -- simple print routine for Pension : pension
   --
   function To_String( rec : Pension ) return String;

   --
   -- record modelling Penprov : penprov
   --
   type Penprov is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      stemppay : Integer := 0;
      provseq : Integer := 0;
      eplong : Integer := 0;
      eptype : Integer := 0;
      keeppen : Integer := 0;
      opgov : Integer := 0;
      penamt : Amount := 0.0;
      penamtpd : Integer := 0;
      pencon : Integer := 0;
      pendat : Integer := 0;
      pengov : Integer := 0;
      penhelp : Integer := 0;
      penmort : Integer := 0;
      spwho : Integer := 0;
      month : Integer := 0;
      stemppen : Integer := 0;
      penreb : Integer := 0;
      rebgov : Integer := 0;
      issue : Integer := 0;
      penamtdt : Ada.Calendar.Time := FIRST_DATE;
      penchk : Integer := 0;
   end record;
   --
   -- container for Penprov : penprov
   --
   package Penprov_List_Package is new Ada.Containers.Vectors
      (Element_Type => Penprov,
      Index_Type => Positive );
   subtype Penprov_List is Penprov_List_Package.Vector;
   --
   -- default value for Penprov : penprov
   --
   Null_Penprov : constant Penprov := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         stemppay => 0,
         provseq => 0,
         eplong => 0,
         eptype => 0,
         keeppen => 0,
         opgov => 0,
         penamt => 0.0,
         penamtpd => 0,
         pencon => 0,
         pendat => 0,
         pengov => 0,
         penhelp => 0,
         penmort => 0,
         spwho => 0,
         month => 0,
         stemppen => 0,
         penreb => 0,
         rebgov => 0,
         issue => 0,
         penamtdt => FIRST_DATE,
         penchk => 0
   );
   --
   -- simple print routine for Penprov : penprov
   --
   function To_String( rec : Penprov ) return String;

   --
   -- record modelling Penamt : penamt
   --
   type Penamt is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      benefit : Integer := 0;
      amttype : Integer := 0;
      penq : Amount := 0.0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Penamt : penamt
   --
   package Penamt_List_Package is new Ada.Containers.Vectors
      (Element_Type => Penamt,
      Index_Type => Positive );
   subtype Penamt_List is Penamt_List_Package.Vector;
   --
   -- default value for Penamt : penamt
   --
   Null_Penamt : constant Penamt := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         benefit => 0,
         amttype => 0,
         penq => 0.0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Penamt : penamt
   --
   function To_String( rec : Penamt ) return String;

   --
   -- record modelling Owner : owner
   --
   type Owner is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      buyyear : Integer := 0;
      othmort1 : Integer := 0;
      othmort2 : Integer := 0;
      othmort3 : Integer := 0;
      othpur1 : Integer := 0;
      othpur2 : Integer := 0;
      othpur3 : Integer := 0;
      othpur31 : Integer := 0;
      othpur32 : Integer := 0;
      othpur33 : Integer := 0;
      othpur34 : Integer := 0;
      othpur35 : Integer := 0;
      othpur36 : Integer := 0;
      othpur37 : Integer := 0;
      othpur4 : Integer := 0;
      othpur5 : Integer := 0;
      othpur6 : Integer := 0;
      othpur7 : Integer := 0;
      purcamt : Amount := 0.0;
      purcloan : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Owner : owner
   --
   package Owner_List_Package is new Ada.Containers.Vectors
      (Element_Type => Owner,
      Index_Type => Positive );
   subtype Owner_List is Owner_List_Package.Vector;
   --
   -- default value for Owner : owner
   --
   Null_Owner : constant Owner := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         buyyear => 0,
         othmort1 => 0,
         othmort2 => 0,
         othmort3 => 0,
         othpur1 => 0,
         othpur2 => 0,
         othpur3 => 0,
         othpur31 => 0,
         othpur32 => 0,
         othpur33 => 0,
         othpur34 => 0,
         othpur35 => 0,
         othpur36 => 0,
         othpur37 => 0,
         othpur4 => 0,
         othpur5 => 0,
         othpur6 => 0,
         othpur7 => 0,
         purcamt => 0.0,
         purcloan => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Owner : owner
   --
   function To_String( rec : Owner ) return String;

   --
   -- record modelling Oddjob : oddjob
   --
   type Oddjob is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      oddtype : Integer := 0;
      oddseq : Integer := 0;
      ojamt : Amount := 0.0;
      ojnow : Integer := 0;
      ojreg : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
      jobstat : Integer := 0;
   end record;
   --
   -- container for Oddjob : oddjob
   --
   package Oddjob_List_Package is new Ada.Containers.Vectors
      (Element_Type => Oddjob,
      Index_Type => Positive );
   subtype Oddjob_List is Oddjob_List_Package.Vector;
   --
   -- default value for Oddjob : oddjob
   --
   Null_Oddjob : constant Oddjob := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         oddtype => 0,
         oddseq => 0,
         ojamt => 0.0,
         ojnow => 0,
         ojreg => 0,
         month => 0,
         issue => 0,
         jobstat => 0
   );
   --
   -- simple print routine for Oddjob : oddjob
   --
   function To_String( rec : Oddjob ) return String;

   --
   -- record modelling Nimigra : nimigra
   --
   type Nimigra is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      miper : Integer := 0;
      issue : Integer := 0;
      miage : Integer := 0;
      misex : Integer := 0;
      mnthleft : Integer := 0;
      more1yr : Integer := 0;
      wherenow : Integer := 0;
      month : Integer := 0;
      miagegr : Integer := 0;
   end record;
   --
   -- container for Nimigra : nimigra
   --
   package Nimigra_List_Package is new Ada.Containers.Vectors
      (Element_Type => Nimigra,
      Index_Type => Positive );
   subtype Nimigra_List is Nimigra_List_Package.Vector;
   --
   -- default value for Nimigra : nimigra
   --
   Null_Nimigra : constant Nimigra := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         miper => 0,
         issue => 0,
         miage => 0,
         misex => 0,
         mnthleft => 0,
         more1yr => 0,
         wherenow => 0,
         month => 0,
         miagegr => 0
   );
   --
   -- simple print routine for Nimigra : nimigra
   --
   function To_String( rec : Nimigra ) return String;

   --
   -- record modelling Nimigr : nimigr
   --
   type Nimigr is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      miper : Integer := 0;
      issue : Integer := 0;
      miage : Integer := 0;
      misex : Integer := 0;
      mnthleft : Integer := 0;
      more1yr : Integer := 0;
      wherenow : Integer := 0;
      month : Integer := 0;
      miagegr : Integer := 0;
   end record;
   --
   -- container for Nimigr : nimigr
   --
   package Nimigr_List_Package is new Ada.Containers.Vectors
      (Element_Type => Nimigr,
      Index_Type => Positive );
   subtype Nimigr_List is Nimigr_List_Package.Vector;
   --
   -- default value for Nimigr : nimigr
   --
   Null_Nimigr : constant Nimigr := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         miper => 0,
         issue => 0,
         miage => 0,
         misex => 0,
         mnthleft => 0,
         more1yr => 0,
         wherenow => 0,
         month => 0,
         miagegr => 0
   );
   --
   -- simple print routine for Nimigr : nimigr
   --
   function To_String( rec : Nimigr ) return String;

   --
   -- record modelling Mortgage : mortgage
   --
   type Mortgage is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      mortseq : Integer := 0;
      boramtdk : Integer := 0;
      borramt : Amount := 0.0;
      endwpri1 : Integer := 0;
      endwpri2 : Integer := 0;
      endwpri3 : Integer := 0;
      endwpri4 : Integer := 0;
      exrent : Integer := 0;
      incminc1 : Integer := 0;
      incminc2 : Integer := 0;
      incminc3 : Integer := 0;
      incmp1 : Integer := 0;
      incmp2 : Integer := 0;
      incmp3 : Integer := 0;
      incmpam1 : Amount := 0.0;
      incmpam2 : Amount := 0.0;
      incmpam3 : Amount := 0.0;
      incmppd1 : Integer := 0;
      incmppd2 : Integer := 0;
      incmppd3 : Integer := 0;
      incmsty1 : Integer := 0;
      incmsty2 : Integer := 0;
      incmsty3 : Integer := 0;
      intprpay : Amount := 0.0;
      intprpd : Integer := 0;
      intru : Amount := 0.0;
      intrupd : Integer := 0;
      intrus : Integer := 0;
      loan2y : Integer := 0;
      loanyear : Integer := 0;
      menpol : Integer := 0;
      morall : Integer := 0;
      morflc : Integer := 0;
      morinpay : Amount := 0.0;
      morinpd : Integer := 0;
      morinus : Integer := 0;
      mortend : Integer := 0;
      mortleft : Amount := 0.0;
      mortprot : Integer := 0;
      morttype : Integer := 0;
      morupd : Integer := 0;
      morus : Amount := 0.0;
      mpcover1 : Integer := 0;
      mpcover2 : Integer := 0;
      mpcover3 : Integer := 0;
      mpolno : Integer := 0;
      outsmort : Integer := 0;
      rentfrom : Integer := 0;
      rmamt : Amount := 0.0;
      rmort : Integer := 0;
      rmortyr : Integer := 0;
      rmpur001 : Integer := 0;
      rmpur002 : Integer := 0;
      rmpur003 : Integer := 0;
      rmpur004 : Integer := 0;
      rmpur005 : Integer := 0;
      rmpur006 : Integer := 0;
      rmpur007 : Integer := 0;
      rmpur008 : Integer := 0;
      month : Integer := 0;
      endwpri5 : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Mortgage : mortgage
   --
   package Mortgage_List_Package is new Ada.Containers.Vectors
      (Element_Type => Mortgage,
      Index_Type => Positive );
   subtype Mortgage_List is Mortgage_List_Package.Vector;
   --
   -- default value for Mortgage : mortgage
   --
   Null_Mortgage : constant Mortgage := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         mortseq => 0,
         boramtdk => 0,
         borramt => 0.0,
         endwpri1 => 0,
         endwpri2 => 0,
         endwpri3 => 0,
         endwpri4 => 0,
         exrent => 0,
         incminc1 => 0,
         incminc2 => 0,
         incminc3 => 0,
         incmp1 => 0,
         incmp2 => 0,
         incmp3 => 0,
         incmpam1 => 0.0,
         incmpam2 => 0.0,
         incmpam3 => 0.0,
         incmppd1 => 0,
         incmppd2 => 0,
         incmppd3 => 0,
         incmsty1 => 0,
         incmsty2 => 0,
         incmsty3 => 0,
         intprpay => 0.0,
         intprpd => 0,
         intru => 0.0,
         intrupd => 0,
         intrus => 0,
         loan2y => 0,
         loanyear => 0,
         menpol => 0,
         morall => 0,
         morflc => 0,
         morinpay => 0.0,
         morinpd => 0,
         morinus => 0,
         mortend => 0,
         mortleft => 0.0,
         mortprot => 0,
         morttype => 0,
         morupd => 0,
         morus => 0.0,
         mpcover1 => 0,
         mpcover2 => 0,
         mpcover3 => 0,
         mpolno => 0,
         outsmort => 0,
         rentfrom => 0,
         rmamt => 0.0,
         rmort => 0,
         rmortyr => 0,
         rmpur001 => 0,
         rmpur002 => 0,
         rmpur003 => 0,
         rmpur004 => 0,
         rmpur005 => 0,
         rmpur006 => 0,
         rmpur007 => 0,
         rmpur008 => 0,
         month => 0,
         endwpri5 => 0,
         issue => 0
   );
   --
   -- simple print routine for Mortgage : mortgage
   --
   function To_String( rec : Mortgage ) return String;

   --
   -- record modelling Mortcont : mortcont
   --
   type Mortcont is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      mortseq : Integer := 0;
      contseq : Integer := 0;
      outsamt : Amount := 0.0;
      outsincl : Integer := 0;
      outspay : Integer := 0;
      outspd : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Mortcont : mortcont
   --
   package Mortcont_List_Package is new Ada.Containers.Vectors
      (Element_Type => Mortcont,
      Index_Type => Positive );
   subtype Mortcont_List is Mortcont_List_Package.Vector;
   --
   -- default value for Mortcont : mortcont
   --
   Null_Mortcont : constant Mortcont := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         mortseq => 0,
         contseq => 0,
         outsamt => 0.0,
         outsincl => 0,
         outspay => 0,
         outspd => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Mortcont : mortcont
   --
   function To_String( rec : Mortcont ) return String;

   --
   -- record modelling Maint : maint
   --
   type Maint is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      maintseq : Integer := 0;
      m : Integer := 0;
      mrage : Integer := 0;
      mramt : Amount := 0.0;
      mrchwhy1 : Integer := 0;
      mrchwhy2 : Integer := 0;
      mrchwhy3 : Integer := 0;
      mrchwhy4 : Integer := 0;
      mrchwhy5 : Integer := 0;
      mrchwhy6 : Integer := 0;
      mrchwhy7 : Integer := 0;
      mrchwhy8 : Integer := 0;
      mrchwhy9 : Integer := 0;
      mrct : Integer := 0;
      mrkid : Integer := 0;
      mrpd : Integer := 0;
      mrr : Integer := 0;
      mruamt : Amount := 0.0;
      mrupd : Integer := 0;
      mrus : Integer := 0;
      mrv : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
      mrarr1 : Integer := 0;
      mrarr2 : Integer := 0;
      mrarr3 : Integer := 0;
      mrarr4 : Integer := 0;
      mrarr5 : Integer := 0;
   end record;
   --
   -- container for Maint : maint
   --
   package Maint_List_Package is new Ada.Containers.Vectors
      (Element_Type => Maint,
      Index_Type => Positive );
   subtype Maint_List is Maint_List_Package.Vector;
   --
   -- default value for Maint : maint
   --
   Null_Maint : constant Maint := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         maintseq => 0,
         m => 0,
         mrage => 0,
         mramt => 0.0,
         mrchwhy1 => 0,
         mrchwhy2 => 0,
         mrchwhy3 => 0,
         mrchwhy4 => 0,
         mrchwhy5 => 0,
         mrchwhy6 => 0,
         mrchwhy7 => 0,
         mrchwhy8 => 0,
         mrchwhy9 => 0,
         mrct => 0,
         mrkid => 0,
         mrpd => 0,
         mrr => 0,
         mruamt => 0.0,
         mrupd => 0,
         mrus => 0,
         mrv => 0,
         month => 0,
         issue => 0,
         mrarr1 => 0,
         mrarr2 => 0,
         mrarr3 => 0,
         mrarr4 => 0,
         mrarr5 => 0
   );
   --
   -- simple print routine for Maint : maint
   --
   function To_String( rec : Maint ) return String;

   --
   -- record modelling Job : job
   --
   type Job is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      jobtype : Integer := 0;
      agreehrs : Integer := 0;
      bonamt1 : Amount := 0.0;
      bonamt2 : Amount := 0.0;
      bonamt3 : Amount := 0.0;
      bonamt4 : Amount := 0.0;
      bonamt5 : Amount := 0.0;
      bonamt6 : Amount := 0.0;
      bontax1 : Integer := 0;
      bontax2 : Integer := 0;
      bontax3 : Integer := 0;
      bontax4 : Integer := 0;
      bontax5 : Integer := 0;
      bontax6 : Integer := 0;
      bonus : Integer := 0;
      busaccts : Integer := 0;
      checktax : Integer := 0;
      chkincom : Integer := 0;
      dedoth : Amount := 0.0;
      deduc1 : Amount := 0.0;
      deduc2 : Amount := 0.0;
      deduc3 : Amount := 0.0;
      deduc4 : Amount := 0.0;
      deduc5 : Amount := 0.0;
      deduc6 : Amount := 0.0;
      deduc7 : Amount := 0.0;
      deduc8 : Amount := 0.0;
      dirctr : Integer := 0;
      dirni : Integer := 0;
      dvtothru : Integer := 0;
      dvushr : Amount := 0.0;
      empany : Integer := 0;
      empown : Integer := 0;
      etype : Integer := 0;
      everot : Integer := 0;
      ftpt : Integer := 0;
      grsofar : Amount := 0.0;
      grwage : Amount := 0.0;
      grwagpd : Integer := 0;
      hha1 : Amount := 0.0;
      hha2 : Amount := 0.0;
      hha3 : Amount := 0.0;
      hhc1 : Integer := 0;
      hhc2 : Integer := 0;
      hhc3 : Integer := 0;
      hohinc : Integer := 0;
      inclpay1 : Integer := 0;
      inclpay2 : Integer := 0;
      inclpay3 : Integer := 0;
      inclpay4 : Integer := 0;
      inclpay5 : Integer := 0;
      inclpay6 : Integer := 0;
      inkind01 : Integer := 0;
      inkind02 : Integer := 0;
      inkind03 : Integer := 0;
      inkind04 : Integer := 0;
      inkind05 : Integer := 0;
      inkind06 : Integer := 0;
      inkind07 : Integer := 0;
      inkind08 : Integer := 0;
      inkind09 : Integer := 0;
      inkind10 : Integer := 0;
      inkind11 : Integer := 0;
      instype1 : Integer := 0;
      instype2 : Integer := 0;
      jobbus : Integer := 0;
      likehr : Integer := 0;
      mademp : Integer := 0;
      matemp : Integer := 0;
      matstp : Integer := 0;
      mileamt : Amount := 0.0;
      motamt : Amount := 0.0;
      natins : Amount := 0.0;
      nature : Integer := 0;
      nidamt : Amount := 0.0;
      nidpd : Integer := 0;
      nmchc : Integer := 0;
      nmper : Integer := 0;
      nomor1 : Integer := 0;
      nomor2 : Integer := 0;
      nomor3 : Integer := 0;
      numemp : Integer := 0;
      othded1 : Integer := 0;
      othded2 : Integer := 0;
      othded3 : Integer := 0;
      othded4 : Integer := 0;
      othded5 : Integer := 0;
      othded6 : Integer := 0;
      othded7 : Integer := 0;
      othded8 : Integer := 0;
      othded9 : Integer := 0;
      ownamt : Amount := 0.0;
      ownotamt : Amount := 0.0;
      ownother : Integer := 0;
      ownsum : Integer := 0;
      payamt : Amount := 0.0;
      paydat : Ada.Calendar.Time := FIRST_DATE;
      paye : Amount := 0.0;
      paypd : Integer := 0;
      payslip : Integer := 0;
      payusl : Integer := 0;
      pothr : Amount := 0.0;
      prbefore : Amount := 0.0;
      profdocs : Integer := 0;
      profit1 : Amount := 0.0;
      profit2 : Integer := 0;
      profni : Integer := 0;
      proftax : Integer := 0;
      rspoth : Integer := 0;
      se1 : Ada.Calendar.Time := FIRST_DATE;
      se2 : Ada.Calendar.Time := FIRST_DATE;
      seend : Ada.Calendar.Time := FIRST_DATE;
      seincamt : Amount := 0.0;
      seincwm : Integer := 0;
      selwks : Integer := 0;
      seniiamt : Amount := 0.0;
      seniinc : Integer := 0;
      senilamt : Amount := 0.0;
      senilump : Integer := 0;
      seniramt : Amount := 0.0;
      senireg : Integer := 0;
      senirpd : Integer := 0;
      setax : Integer := 0;
      setaxamt : Amount := 0.0;
      smpamt : Amount := 0.0;
      smprate : Integer := 0;
      sole : Integer := 0;
      sspamt : Amount := 0.0;
      taxamt : Amount := 0.0;
      taxdamt : Amount := 0.0;
      taxdpd : Integer := 0;
      totus1 : Amount := 0.0;
      ubonamt : Amount := 0.0;
      uboninc : Integer := 0;
      udeduc1 : Amount := 0.0;
      udeduc2 : Amount := 0.0;
      udeduc3 : Amount := 0.0;
      udeduc4 : Amount := 0.0;
      udeduc5 : Amount := 0.0;
      udeduc6 : Amount := 0.0;
      udeduc7 : Amount := 0.0;
      udeduc8 : Amount := 0.0;
      ugross : Amount := 0.0;
      uincpay1 : Integer := 0;
      uincpay2 : Integer := 0;
      uincpay3 : Integer := 0;
      uincpay4 : Integer := 0;
      uincpay5 : Integer := 0;
      uincpay6 : Integer := 0;
      umileamt : Amount := 0.0;
      umotamt : Amount := 0.0;
      unett : Amount := 0.0;
      uothded1 : Integer := 0;
      uothded2 : Integer := 0;
      uothded3 : Integer := 0;
      uothded4 : Integer := 0;
      uothded5 : Integer := 0;
      uothded6 : Integer := 0;
      uothded7 : Integer := 0;
      uothded8 : Integer := 0;
      uothded9 : Integer := 0;
      uothdtot : Amount := 0.0;
      uothr : Amount := 0.0;
      upd : Integer := 0;
      usmpamt : Amount := 0.0;
      usmprate : Integer := 0;
      usspamt : Amount := 0.0;
      usuhr : Amount := 0.0;
      utaxamt : Amount := 0.0;
      watdid : Integer := 0;
      watprev : Integer := 0;
      x_where : Integer := 0;
      whynopro : Integer := 0;
      whynou01 : Integer := 0;
      whynou02 : Integer := 0;
      whynou03 : Integer := 0;
      whynou04 : Integer := 0;
      whynou05 : Integer := 0;
      whynou06 : Integer := 0;
      whynou07 : Integer := 0;
      whynou08 : Integer := 0;
      whynou09 : Integer := 0;
      whynou10 : Integer := 0;
      whynou11 : Integer := 0;
      workacc : Integer := 0;
      workmth : Integer := 0;
      workyr : Integer := 0;
      month : Integer := 0;
      hdqhrs : Integer := 0;
      jobhours : Amount := 0.0;
      sspsmpfg : Integer := 0;
      ugrspay : Unbounded_String := To_Unbounded_String( "''" );
      inclpay7 : Integer := 0;
      inclpay8 : Integer := 0;
      paperiod : Integer := 0;
      ppperiod : Integer := 0;
      sapamt : Amount := 0.0;
      sppamt : Amount := 0.0;
      uincpay7 : Integer := 0;
      uincpay8 : Integer := 0;
      usapamt : Integer := 0;
      usppamt : Amount := 0.0;
      inkind12 : Integer := 0;
      inkind13 : Integer := 0;
      salsac : Integer := 0;
      chvamt : Amount := 0.0;
      chvpd : Integer := 0;
      chvsac : Integer := 0;
      chvuamt : Amount := 0.0;
      chvupd : Integer := 0;
      chvusu : Integer := 0;
      expben01 : Integer := 0;
      expben02 : Integer := 0;
      expben03 : Integer := 0;
      expben04 : Integer := 0;
      expben05 : Integer := 0;
      expben06 : Integer := 0;
      expben07 : Integer := 0;
      expben08 : Integer := 0;
      expben09 : Integer := 0;
      expben10 : Integer := 0;
      expben11 : Integer := 0;
      expben12 : Integer := 0;
      fuelamt : Amount := 0.0;
      fuelbn : Integer := 0;
      fuelpd : Integer := 0;
      fueluamt : Amount := 0.0;
      fuelupd : Integer := 0;
      fuelusu : Integer := 0;
      issue : Integer := 0;
      prevmth : Integer := 0;
      prevyr : Integer := 0;
      spnamt : Amount := 0.0;
      spnpd : Integer := 0;
      spnsac : Integer := 0;
      spnuamt : Amount := 0.0;
      spnupd : Integer := 0;
      spnusu : Integer := 0;
      vchamt : Amount := 0.0;
      vchpd : Integer := 0;
      vchsac : Integer := 0;
      vchuamt : Integer := 0;
      vchupd : Integer := 0;
      vchusu : Integer := 0;
      wrkprev : Integer := 0;
      caramt : Amount := 0.0;
      carcon : Integer := 0;
      carval : Integer := 0;
      fueltyp : Integer := 0;
      orgemp : Integer := 0;
      sector : Integer := 0;
      sectrnp : Integer := 0;
      whynou12 : Integer := 0;
      whynou13 : Integer := 0;
      whynou14 : Integer := 0;
      jobsect : Integer := 0;
      oremp : Integer := 0;
      bontxam1 : Amount := 0.0;
      bontxam2 : Amount := 0.0;
      bontxam3 : Amount := 0.0;
      bontxam4 : Amount := 0.0;
      bontxam5 : Amount := 0.0;
      bontxam6 : Amount := 0.0;
      deduc9 : Amount := 0.0;
      emplany : Integer := 0;
      empten : Integer := 0;
      lthan30 : Integer := 0;
      numeten : Integer := 0;
      othded01 : Integer := 0;
      othded02 : Integer := 0;
      othded03 : Integer := 0;
      othded04 : Integer := 0;
      othded05 : Integer := 0;
      othded06 : Integer := 0;
      othded07 : Integer := 0;
      othded08 : Integer := 0;
      othded09 : Integer := 0;
      othded10 : Integer := 0;
      udeduc9 : Amount := 0.0;
      uothde01 : Integer := 0;
      uothde02 : Integer := 0;
      uothde03 : Integer := 0;
      uothde04 : Integer := 0;
      uothde05 : Integer := 0;
      uothde06 : Integer := 0;
      uothde07 : Integer := 0;
      uothde08 : Integer := 0;
      uothde09 : Integer := 0;
      uothde10 : Integer := 0;
      yjbchang : Integer := 0;
      jbchnge : Integer := 0;
      hourly : Integer := 0;
      hrexa : Integer := 0;
      hrexb : Integer := 0;
      hrexc1 : Integer := 0;
      hrexc2 : Integer := 0;
      hrexc3 : Integer := 0;
      hrexc4 : Integer := 0;
      hrexc5 : Integer := 0;
      hrexc6 : Integer := 0;
      hrexc7 : Integer := 0;
      hrexc8 : Integer := 0;
      hrrate : Amount := 0.0;
   end record;
   --
   -- container for Job : job
   --
   package Job_List_Package is new Ada.Containers.Vectors
      (Element_Type => Job,
      Index_Type => Positive );
   subtype Job_List is Job_List_Package.Vector;
   --
   -- default value for Job : job
   --
   Null_Job : constant Job := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         jobtype => 0,
         agreehrs => 0,
         bonamt1 => 0.0,
         bonamt2 => 0.0,
         bonamt3 => 0.0,
         bonamt4 => 0.0,
         bonamt5 => 0.0,
         bonamt6 => 0.0,
         bontax1 => 0,
         bontax2 => 0,
         bontax3 => 0,
         bontax4 => 0,
         bontax5 => 0,
         bontax6 => 0,
         bonus => 0,
         busaccts => 0,
         checktax => 0,
         chkincom => 0,
         dedoth => 0.0,
         deduc1 => 0.0,
         deduc2 => 0.0,
         deduc3 => 0.0,
         deduc4 => 0.0,
         deduc5 => 0.0,
         deduc6 => 0.0,
         deduc7 => 0.0,
         deduc8 => 0.0,
         dirctr => 0,
         dirni => 0,
         dvtothru => 0,
         dvushr => 0.0,
         empany => 0,
         empown => 0,
         etype => 0,
         everot => 0,
         ftpt => 0,
         grsofar => 0.0,
         grwage => 0.0,
         grwagpd => 0,
         hha1 => 0.0,
         hha2 => 0.0,
         hha3 => 0.0,
         hhc1 => 0,
         hhc2 => 0,
         hhc3 => 0,
         hohinc => 0,
         inclpay1 => 0,
         inclpay2 => 0,
         inclpay3 => 0,
         inclpay4 => 0,
         inclpay5 => 0,
         inclpay6 => 0,
         inkind01 => 0,
         inkind02 => 0,
         inkind03 => 0,
         inkind04 => 0,
         inkind05 => 0,
         inkind06 => 0,
         inkind07 => 0,
         inkind08 => 0,
         inkind09 => 0,
         inkind10 => 0,
         inkind11 => 0,
         instype1 => 0,
         instype2 => 0,
         jobbus => 0,
         likehr => 0,
         mademp => 0,
         matemp => 0,
         matstp => 0,
         mileamt => 0.0,
         motamt => 0.0,
         natins => 0.0,
         nature => 0,
         nidamt => 0.0,
         nidpd => 0,
         nmchc => 0,
         nmper => 0,
         nomor1 => 0,
         nomor2 => 0,
         nomor3 => 0,
         numemp => 0,
         othded1 => 0,
         othded2 => 0,
         othded3 => 0,
         othded4 => 0,
         othded5 => 0,
         othded6 => 0,
         othded7 => 0,
         othded8 => 0,
         othded9 => 0,
         ownamt => 0.0,
         ownotamt => 0.0,
         ownother => 0,
         ownsum => 0,
         payamt => 0.0,
         paydat => FIRST_DATE,
         paye => 0.0,
         paypd => 0,
         payslip => 0,
         payusl => 0,
         pothr => 0.0,
         prbefore => 0.0,
         profdocs => 0,
         profit1 => 0.0,
         profit2 => 0,
         profni => 0,
         proftax => 0,
         rspoth => 0,
         se1 => FIRST_DATE,
         se2 => FIRST_DATE,
         seend => FIRST_DATE,
         seincamt => 0.0,
         seincwm => 0,
         selwks => 0,
         seniiamt => 0.0,
         seniinc => 0,
         senilamt => 0.0,
         senilump => 0,
         seniramt => 0.0,
         senireg => 0,
         senirpd => 0,
         setax => 0,
         setaxamt => 0.0,
         smpamt => 0.0,
         smprate => 0,
         sole => 0,
         sspamt => 0.0,
         taxamt => 0.0,
         taxdamt => 0.0,
         taxdpd => 0,
         totus1 => 0.0,
         ubonamt => 0.0,
         uboninc => 0,
         udeduc1 => 0.0,
         udeduc2 => 0.0,
         udeduc3 => 0.0,
         udeduc4 => 0.0,
         udeduc5 => 0.0,
         udeduc6 => 0.0,
         udeduc7 => 0.0,
         udeduc8 => 0.0,
         ugross => 0.0,
         uincpay1 => 0,
         uincpay2 => 0,
         uincpay3 => 0,
         uincpay4 => 0,
         uincpay5 => 0,
         uincpay6 => 0,
         umileamt => 0.0,
         umotamt => 0.0,
         unett => 0.0,
         uothded1 => 0,
         uothded2 => 0,
         uothded3 => 0,
         uothded4 => 0,
         uothded5 => 0,
         uothded6 => 0,
         uothded7 => 0,
         uothded8 => 0,
         uothded9 => 0,
         uothdtot => 0.0,
         uothr => 0.0,
         upd => 0,
         usmpamt => 0.0,
         usmprate => 0,
         usspamt => 0.0,
         usuhr => 0.0,
         utaxamt => 0.0,
         watdid => 0,
         watprev => 0,
         x_where => 0,
         whynopro => 0,
         whynou01 => 0,
         whynou02 => 0,
         whynou03 => 0,
         whynou04 => 0,
         whynou05 => 0,
         whynou06 => 0,
         whynou07 => 0,
         whynou08 => 0,
         whynou09 => 0,
         whynou10 => 0,
         whynou11 => 0,
         workacc => 0,
         workmth => 0,
         workyr => 0,
         month => 0,
         hdqhrs => 0,
         jobhours => 0.0,
         sspsmpfg => 0,
         ugrspay => To_Unbounded_String( "''" ),
         inclpay7 => 0,
         inclpay8 => 0,
         paperiod => 0,
         ppperiod => 0,
         sapamt => 0.0,
         sppamt => 0.0,
         uincpay7 => 0,
         uincpay8 => 0,
         usapamt => 0,
         usppamt => 0.0,
         inkind12 => 0,
         inkind13 => 0,
         salsac => 0,
         chvamt => 0.0,
         chvpd => 0,
         chvsac => 0,
         chvuamt => 0.0,
         chvupd => 0,
         chvusu => 0,
         expben01 => 0,
         expben02 => 0,
         expben03 => 0,
         expben04 => 0,
         expben05 => 0,
         expben06 => 0,
         expben07 => 0,
         expben08 => 0,
         expben09 => 0,
         expben10 => 0,
         expben11 => 0,
         expben12 => 0,
         fuelamt => 0.0,
         fuelbn => 0,
         fuelpd => 0,
         fueluamt => 0.0,
         fuelupd => 0,
         fuelusu => 0,
         issue => 0,
         prevmth => 0,
         prevyr => 0,
         spnamt => 0.0,
         spnpd => 0,
         spnsac => 0,
         spnuamt => 0.0,
         spnupd => 0,
         spnusu => 0,
         vchamt => 0.0,
         vchpd => 0,
         vchsac => 0,
         vchuamt => 0,
         vchupd => 0,
         vchusu => 0,
         wrkprev => 0,
         caramt => 0.0,
         carcon => 0,
         carval => 0,
         fueltyp => 0,
         orgemp => 0,
         sector => 0,
         sectrnp => 0,
         whynou12 => 0,
         whynou13 => 0,
         whynou14 => 0,
         jobsect => 0,
         oremp => 0,
         bontxam1 => 0.0,
         bontxam2 => 0.0,
         bontxam3 => 0.0,
         bontxam4 => 0.0,
         bontxam5 => 0.0,
         bontxam6 => 0.0,
         deduc9 => 0.0,
         emplany => 0,
         empten => 0,
         lthan30 => 0,
         numeten => 0,
         othded01 => 0,
         othded02 => 0,
         othded03 => 0,
         othded04 => 0,
         othded05 => 0,
         othded06 => 0,
         othded07 => 0,
         othded08 => 0,
         othded09 => 0,
         othded10 => 0,
         udeduc9 => 0.0,
         uothde01 => 0,
         uothde02 => 0,
         uothde03 => 0,
         uothde04 => 0,
         uothde05 => 0,
         uothde06 => 0,
         uothde07 => 0,
         uothde08 => 0,
         uothde09 => 0,
         uothde10 => 0,
         yjbchang => 0,
         jbchnge => 0,
         hourly => 0,
         hrexa => 0,
         hrexb => 0,
         hrexc1 => 0,
         hrexc2 => 0,
         hrexc3 => 0,
         hrexc4 => 0,
         hrexc5 => 0,
         hrexc6 => 0,
         hrexc7 => 0,
         hrexc8 => 0,
         hrrate => 0.0
   );
   --
   -- simple print routine for Job : job
   --
   function To_String( rec : Job ) return String;

   --
   -- record modelling Insuranc : insuranc
   --
   type Insuranc is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      insseq : Integer := 0;
      numpols1 : Integer := 0;
      numpols2 : Integer := 0;
      numpols3 : Integer := 0;
      numpols4 : Integer := 0;
      numpols5 : Integer := 0;
      numpols6 : Integer := 0;
      numpols7 : Integer := 0;
      numpols8 : Integer := 0;
      numpols9 : Integer := 0;
      polamt : Amount := 0.0;
      polmore : Integer := 0;
      polpay : Integer := 0;
      polpd : Integer := 0;
      month : Integer := 0;
   end record;
   --
   -- container for Insuranc : insuranc
   --
   package Insuranc_List_Package is new Ada.Containers.Vectors
      (Element_Type => Insuranc,
      Index_Type => Positive );
   subtype Insuranc_List is Insuranc_List_Package.Vector;
   --
   -- default value for Insuranc : insuranc
   --
   Null_Insuranc : constant Insuranc := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         insseq => 0,
         numpols1 => 0,
         numpols2 => 0,
         numpols3 => 0,
         numpols4 => 0,
         numpols5 => 0,
         numpols6 => 0,
         numpols7 => 0,
         numpols8 => 0,
         numpols9 => 0,
         polamt => 0.0,
         polmore => 0,
         polpay => 0,
         polpd => 0,
         month => 0
   );
   --
   -- simple print routine for Insuranc : insuranc
   --
   function To_String( rec : Insuranc ) return String;

   --
   -- record modelling Govpay : govpay
   --
   type Govpay is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      benefit : Integer := 0;
      govpay : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Govpay : govpay
   --
   package Govpay_List_Package is new Ada.Containers.Vectors
      (Element_Type => Govpay,
      Index_Type => Positive );
   subtype Govpay_List is Govpay_List_Package.Vector;
   --
   -- default value for Govpay : govpay
   --
   Null_Govpay : constant Govpay := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         benefit => 0,
         govpay => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Govpay : govpay
   --
   function To_String( rec : Govpay ) return String;

   --
   -- record modelling Extchild : extchild
   --
   type Extchild is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      extseq : Integer := 0;
      nhhamt : Amount := 0.0;
      nhhfee : Integer := 0;
      nhhintro : Integer := 0;
      nhhpd : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Extchild : extchild
   --
   package Extchild_List_Package is new Ada.Containers.Vectors
      (Element_Type => Extchild,
      Index_Type => Positive );
   subtype Extchild_List is Extchild_List_Package.Vector;
   --
   -- default value for Extchild : extchild
   --
   Null_Extchild : constant Extchild := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         extseq => 0,
         nhhamt => 0.0,
         nhhfee => 0,
         nhhintro => 0,
         nhhpd => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Extchild : extchild
   --
   function To_String( rec : Extchild ) return String;

   --
   -- record modelling Endowmnt : endowmnt
   --
   type Endowmnt is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      mortseq : Integer := 0;
      endowseq : Integer := 0;
      incinint : Integer := 0;
      menpolam : Amount := 0.0;
      menpolpd : Integer := 0;
      menstyr : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Endowmnt : endowmnt
   --
   package Endowmnt_List_Package is new Ada.Containers.Vectors
      (Element_Type => Endowmnt,
      Index_Type => Positive );
   subtype Endowmnt_List is Endowmnt_List_Package.Vector;
   --
   -- default value for Endowmnt : endowmnt
   --
   Null_Endowmnt : constant Endowmnt := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         mortseq => 0,
         endowseq => 0,
         incinint => 0,
         menpolam => 0.0,
         menpolpd => 0,
         menstyr => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Endowmnt : endowmnt
   --
   function To_String( rec : Endowmnt ) return String;

   --
   -- record modelling Chldcare : chldcare
   --
   type Chldcare is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      chlook : Integer := 0;
      benccdis : Integer := 0;
      chamt : Amount := 0.0;
      chfar : Integer := 0;
      chhr : Integer := 0;
      chinknd1 : Integer := 0;
      chinknd2 : Integer := 0;
      chinknd3 : Integer := 0;
      chinknd4 : Integer := 0;
      chinknd5 : Integer := 0;
      chpd : Integer := 0;
      cost : Integer := 0;
      ctrm : Integer := 0;
      emplprov : Integer := 0;
      registrd : Integer := 0;
      month : Integer := 0;
      pmchk : Integer := 0;
      issue : Integer := 0;
      hourly : Integer := 0;
      freecc : Integer := 0;
      freccty1 : Integer := 0;
      freccty2 : Integer := 0;
      freccty3 : Integer := 0;
      freccty4 : Integer := 0;
      freccty5 : Integer := 0;
      freccty6 : Integer := 0;
   end record;
   --
   -- container for Chldcare : chldcare
   --
   package Chldcare_List_Package is new Ada.Containers.Vectors
      (Element_Type => Chldcare,
      Index_Type => Positive );
   subtype Chldcare_List is Chldcare_List_Package.Vector;
   --
   -- default value for Chldcare : chldcare
   --
   Null_Chldcare : constant Chldcare := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         chlook => 0,
         benccdis => 0,
         chamt => 0.0,
         chfar => 0,
         chhr => 0,
         chinknd1 => 0,
         chinknd2 => 0,
         chinknd3 => 0,
         chinknd4 => 0,
         chinknd5 => 0,
         chpd => 0,
         cost => 0,
         ctrm => 0,
         emplprov => 0,
         registrd => 0,
         month => 0,
         pmchk => 0,
         issue => 0,
         hourly => 0,
         freecc => 0,
         freccty1 => 0,
         freccty2 => 0,
         freccty3 => 0,
         freccty4 => 0,
         freccty5 => 0,
         freccty6 => 0
   );
   --
   -- simple print routine for Chldcare : chldcare
   --
   function To_String( rec : Chldcare ) return String;

   --
   -- record modelling Childcare : childcare
   --
   type Childcare is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      chlook : Integer := 0;
      chamt : Amount := 0.0;
      chhr : Integer := 0;
      chpd : Integer := 0;
      cost : Integer := 0;
      emplprov : Integer := 0;
      issue : Integer := 0;
      registrd : Integer := 0;
      month : Integer := 0;
   end record;
   --
   -- container for Childcare : childcare
   --
   package Childcare_List_Package is new Ada.Containers.Vectors
      (Element_Type => Childcare,
      Index_Type => Positive );
   subtype Childcare_List is Childcare_List_Package.Vector;
   --
   -- default value for Childcare : childcare
   --
   Null_Childcare : constant Childcare := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         chlook => 0,
         chamt => 0.0,
         chhr => 0,
         chpd => 0,
         cost => 0,
         emplprov => 0,
         issue => 0,
         registrd => 0,
         month => 0
   );
   --
   -- simple print routine for Childcare : childcare
   --
   function To_String( rec : Childcare ) return String;

   --
   -- record modelling Care : care
   --
   type Care is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      needper : Integer := 0;
      daynight : Integer := 0;
      freq : Integer := 0;
      hour01 : Integer := 0;
      hour02 : Integer := 0;
      hour03 : Integer := 0;
      hour04 : Integer := 0;
      hour05 : Integer := 0;
      hour06 : Integer := 0;
      hour07 : Integer := 0;
      hour08 : Integer := 0;
      hour09 : Integer := 0;
      hour10 : Integer := 0;
      hour11 : Integer := 0;
      hour12 : Integer := 0;
      hour13 : Integer := 0;
      hour14 : Integer := 0;
      hour15 : Integer := 0;
      hour16 : Integer := 0;
      hour17 : Integer := 0;
      hour18 : Integer := 0;
      hour19 : Integer := 0;
      hour20 : Integer := 0;
      wholoo01 : Integer := 0;
      wholoo02 : Integer := 0;
      wholoo03 : Integer := 0;
      wholoo04 : Integer := 0;
      wholoo05 : Integer := 0;
      wholoo06 : Integer := 0;
      wholoo07 : Integer := 0;
      wholoo08 : Integer := 0;
      wholoo09 : Integer := 0;
      wholoo10 : Integer := 0;
      wholoo11 : Integer := 0;
      wholoo12 : Integer := 0;
      wholoo13 : Integer := 0;
      wholoo14 : Integer := 0;
      wholoo15 : Integer := 0;
      wholoo16 : Integer := 0;
      wholoo17 : Integer := 0;
      wholoo18 : Integer := 0;
      wholoo19 : Integer := 0;
      wholoo20 : Integer := 0;
      month : Integer := 0;
      howlng01 : Integer := 0;
      howlng02 : Integer := 0;
      howlng03 : Integer := 0;
      howlng04 : Integer := 0;
      howlng05 : Integer := 0;
      howlng06 : Integer := 0;
      howlng07 : Integer := 0;
      howlng08 : Integer := 0;
      howlng09 : Integer := 0;
      howlng10 : Integer := 0;
      howlng11 : Integer := 0;
      howlng12 : Integer := 0;
      howlng13 : Integer := 0;
      howlng14 : Integer := 0;
      howlng15 : Integer := 0;
      howlng16 : Integer := 0;
      howlng17 : Integer := 0;
      howlng18 : Integer := 0;
      howlng19 : Integer := 0;
      howlng20 : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Care : care
   --
   package Care_List_Package is new Ada.Containers.Vectors
      (Element_Type => Care,
      Index_Type => Positive );
   subtype Care_List is Care_List_Package.Vector;
   --
   -- default value for Care : care
   --
   Null_Care : constant Care := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         needper => 0,
         daynight => 0,
         freq => 0,
         hour01 => 0,
         hour02 => 0,
         hour03 => 0,
         hour04 => 0,
         hour05 => 0,
         hour06 => 0,
         hour07 => 0,
         hour08 => 0,
         hour09 => 0,
         hour10 => 0,
         hour11 => 0,
         hour12 => 0,
         hour13 => 0,
         hour14 => 0,
         hour15 => 0,
         hour16 => 0,
         hour17 => 0,
         hour18 => 0,
         hour19 => 0,
         hour20 => 0,
         wholoo01 => 0,
         wholoo02 => 0,
         wholoo03 => 0,
         wholoo04 => 0,
         wholoo05 => 0,
         wholoo06 => 0,
         wholoo07 => 0,
         wholoo08 => 0,
         wholoo09 => 0,
         wholoo10 => 0,
         wholoo11 => 0,
         wholoo12 => 0,
         wholoo13 => 0,
         wholoo14 => 0,
         wholoo15 => 0,
         wholoo16 => 0,
         wholoo17 => 0,
         wholoo18 => 0,
         wholoo19 => 0,
         wholoo20 => 0,
         month => 0,
         howlng01 => 0,
         howlng02 => 0,
         howlng03 => 0,
         howlng04 => 0,
         howlng05 => 0,
         howlng06 => 0,
         howlng07 => 0,
         howlng08 => 0,
         howlng09 => 0,
         howlng10 => 0,
         howlng11 => 0,
         howlng12 => 0,
         howlng13 => 0,
         howlng14 => 0,
         howlng15 => 0,
         howlng16 => 0,
         howlng17 => 0,
         howlng18 => 0,
         howlng19 => 0,
         howlng20 => 0,
         issue => 0
   );
   --
   -- simple print routine for Care : care
   --
   function To_String( rec : Care ) return String;

   --
   -- record modelling Benefits : benefits
   --
   type Benefits is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      counter : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      benefit : Integer := 0;
      bankstmt : Integer := 0;
      benamt : Amount := 0.0;
      benamtdk : Integer := 0;
      benlettr : Integer := 0;
      benpd : Integer := 0;
      bookcard : Integer := 0;
      cctc : Integer := 0;
      combamt : Amount := 0.0;
      combbk : Integer := 0;
      combpd : Integer := 0;
      howben : Integer := 0;
      notusamt : Amount := 0.0;
      notuspd : Integer := 0;
      numweeks : Integer := 0;
      ordbkno : Integer := 0;
      payslipb : Integer := 0;
      pres : Integer := 0;
      usual : Integer := 0;
      var1 : Integer := 0;
      var2 : Integer := 0;
      var3 : Integer := 0;
      whorec1 : Integer := 0;
      whorec2 : Integer := 0;
      whorec3 : Integer := 0;
      whorec4 : Integer := 0;
      whorec5 : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
      numyears : Integer := 0;
      ttbprx : Amount := 0.0;
      var4 : Integer := 0;
      var5 : Integer := 0;
      gtanet : Integer := 0;
      gtatax : Amount := 0.0;
      cbpaye : Integer := 0;
      cbtax : Integer := 0;
      cbtaxamt : Amount := 0.0;
      cbtaxpd : Integer := 0;
   end record;
   --
   -- container for Benefits : benefits
   --
   package Benefits_List_Package is new Ada.Containers.Vectors
      (Element_Type => Benefits,
      Index_Type => Positive );
   subtype Benefits_List is Benefits_List_Package.Vector;
   --
   -- default value for Benefits : benefits
   --
   Null_Benefits : constant Benefits := (
         user_id => 0,
         edition => 0,
         year => 0,
         counter => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         benefit => 0,
         bankstmt => 0,
         benamt => 0.0,
         benamtdk => 0,
         benlettr => 0,
         benpd => 0,
         bookcard => 0,
         cctc => 0,
         combamt => 0.0,
         combbk => 0,
         combpd => 0,
         howben => 0,
         notusamt => 0.0,
         notuspd => 0,
         numweeks => 0,
         ordbkno => 0,
         payslipb => 0,
         pres => 0,
         usual => 0,
         var1 => 0,
         var2 => 0,
         var3 => 0,
         whorec1 => 0,
         whorec2 => 0,
         whorec3 => 0,
         whorec4 => 0,
         whorec5 => 0,
         month => 0,
         issue => 0,
         numyears => 0,
         ttbprx => 0.0,
         var4 => 0,
         var5 => 0,
         gtanet => 0,
         gtatax => 0.0,
         cbpaye => 0,
         cbtax => 0,
         cbtaxamt => 0.0,
         cbtaxpd => 0
   );
   --
   -- simple print routine for Benefits : benefits
   --
   function To_String( rec : Benefits ) return String;

   --
   -- record modelling Assets : assets
   --
   type Assets is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      assetype : Integer := 0;
      seq : Integer := 0;
      accname : Integer := 0;
      x_amount : Amount := 0.0;
      anymon : Integer := 0;
      howmany : Integer := 0;
      howmuch : Amount := 0.0;
      howmuche : Integer := 0;
      intro : Integer := 0;
      issdate : Ada.Calendar.Time := FIRST_DATE;
      issval : Amount := 0.0;
      pd : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
   end record;
   --
   -- container for Assets : assets
   --
   package Assets_List_Package is new Ada.Containers.Vectors
      (Element_Type => Assets,
      Index_Type => Positive );
   subtype Assets_List is Assets_List_Package.Vector;
   --
   -- default value for Assets : assets
   --
   Null_Assets : constant Assets := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         assetype => 0,
         seq => 0,
         accname => 0,
         x_amount => 0.0,
         anymon => 0,
         howmany => 0,
         howmuch => 0.0,
         howmuche => 0,
         intro => 0,
         issdate => FIRST_DATE,
         issval => 0.0,
         pd => 0,
         month => 0,
         issue => 0
   );
   --
   -- simple print routine for Assets : assets
   --
   function To_String( rec : Assets ) return String;

   --
   -- record modelling Admin : admin
   --
   type Admin is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      findhh : Integer := 0;
      hhsel : Integer := 0;
      hout : Integer := 0;
      ncr1 : Integer := 0;
      ncr2 : Integer := 0;
      ncr3 : Integer := 0;
      ncr4 : Integer := 0;
      ncr5 : Integer := 0;
      ncr6 : Integer := 0;
      ncr7 : Integer := 0;
      refr01 : Integer := 0;
      refr02 : Integer := 0;
      refr03 : Integer := 0;
      refr04 : Integer := 0;
      refr05 : Integer := 0;
      refr06 : Integer := 0;
      refr07 : Integer := 0;
      refr08 : Integer := 0;
      refr09 : Integer := 0;
      refr10 : Integer := 0;
      refr11 : Integer := 0;
      refr12 : Integer := 0;
      refr13 : Integer := 0;
      refr14 : Integer := 0;
      refr15 : Integer := 0;
      refr16 : Integer := 0;
      refr17 : Integer := 0;
      refr18 : Integer := 0;
      tnc : Integer := 0;
      version : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
      lngdf01 : Integer := 0;
      lngdf02 : Integer := 0;
      lngdf03 : Integer := 0;
      lngdf04 : Integer := 0;
      lngdf05 : Integer := 0;
      lngdf06 : Integer := 0;
      lngdf07 : Integer := 0;
      lngdf08 : Integer := 0;
      lngdf09 : Integer := 0;
      lngdf10 : Integer := 0;
      nmtrans : Integer := 0;
      noneng : Integer := 0;
      whlang01 : Integer := 0;
      whlang02 : Integer := 0;
      whlang03 : Integer := 0;
      whlang04 : Integer := 0;
      whlang05 : Integer := 0;
      whlang06 : Integer := 0;
      whlang07 : Integer := 0;
      whlang08 : Integer := 0;
      whlang09 : Integer := 0;
      whlang10 : Integer := 0;
      whotran1 : Integer := 0;
      whotran2 : Integer := 0;
      whotran3 : Integer := 0;
      whotran4 : Integer := 0;
      whotran5 : Integer := 0;
      lngdf11 : Integer := 0;
      whlang11 : Integer := 0;
   end record;
   --
   -- container for Admin : admin
   --
   package Admin_List_Package is new Ada.Containers.Vectors
      (Element_Type => Admin,
      Index_Type => Positive );
   subtype Admin_List is Admin_List_Package.Vector;
   --
   -- default value for Admin : admin
   --
   Null_Admin : constant Admin := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         findhh => 0,
         hhsel => 0,
         hout => 0,
         ncr1 => 0,
         ncr2 => 0,
         ncr3 => 0,
         ncr4 => 0,
         ncr5 => 0,
         ncr6 => 0,
         ncr7 => 0,
         refr01 => 0,
         refr02 => 0,
         refr03 => 0,
         refr04 => 0,
         refr05 => 0,
         refr06 => 0,
         refr07 => 0,
         refr08 => 0,
         refr09 => 0,
         refr10 => 0,
         refr11 => 0,
         refr12 => 0,
         refr13 => 0,
         refr14 => 0,
         refr15 => 0,
         refr16 => 0,
         refr17 => 0,
         refr18 => 0,
         tnc => 0,
         version => 0,
         month => 0,
         issue => 0,
         lngdf01 => 0,
         lngdf02 => 0,
         lngdf03 => 0,
         lngdf04 => 0,
         lngdf05 => 0,
         lngdf06 => 0,
         lngdf07 => 0,
         lngdf08 => 0,
         lngdf09 => 0,
         lngdf10 => 0,
         nmtrans => 0,
         noneng => 0,
         whlang01 => 0,
         whlang02 => 0,
         whlang03 => 0,
         whlang04 => 0,
         whlang05 => 0,
         whlang06 => 0,
         whlang07 => 0,
         whlang08 => 0,
         whlang09 => 0,
         whlang10 => 0,
         whotran1 => 0,
         whotran2 => 0,
         whotran3 => 0,
         whotran4 => 0,
         whotran5 => 0,
         lngdf11 => 0,
         whlang11 => 0
   );
   --
   -- simple print routine for Admin : admin
   --
   function To_String( rec : Admin ) return String;

   --
   -- record modelling Accouts : accouts
   --
   type Accouts is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      account : Integer := 0;
      accint : Amount := 0.0;
      acctax : Integer := 0;
      invtax : Integer := 0;
      issue : Integer := 0;
      nsamt : Integer := 0;
      month : Integer := 0;
   end record;
   --
   -- container for Accouts : accouts
   --
   package Accouts_List_Package is new Ada.Containers.Vectors
      (Element_Type => Accouts,
      Index_Type => Positive );
   subtype Accouts_List is Accouts_List_Package.Vector;
   --
   -- default value for Accouts : accouts
   --
   Null_Accouts : constant Accouts := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         account => 0,
         accint => 0.0,
         acctax => 0,
         invtax => 0,
         issue => 0,
         nsamt => 0,
         month => 0
   );
   --
   -- simple print routine for Accouts : accouts
   --
   function To_String( rec : Accouts ) return String;

   --
   -- record modelling Accounts : accounts
   --
   type Accounts is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      account : Integer := 0;
      accint : Amount := 0.0;
      acctax : Integer := 0;
      invtax : Integer := 0;
      nsamt : Integer := 0;
      month : Integer := 0;
      issue : Integer := 0;
      gtwtot : Integer := 0;
   end record;
   --
   -- container for Accounts : accounts
   --
   package Accounts_List_Package is new Ada.Containers.Vectors
      (Element_Type => Accounts,
      Index_Type => Positive );
   subtype Accounts_List is Accounts_List_Package.Vector;
   --
   -- default value for Accounts : accounts
   --
   Null_Accounts : constant Accounts := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         account => 0,
         accint => 0.0,
         acctax => 0,
         invtax => 0,
         nsamt => 0,
         month => 0,
         issue => 0,
         gtwtot => 0
   );
   --
   -- simple print routine for Accounts : accounts
   --
   function To_String( rec : Accounts ) return String;

   --
   -- record modelling Child : child
   --
   type Child is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      adeduc : Integer := 0;
      age : Integer := 0;
      benccdis : Integer := 0;
      care : Integer := 0;
      cdisdif1 : Integer := 0;
      cdisdif2 : Integer := 0;
      cdisdif3 : Integer := 0;
      cdisdif4 : Integer := 0;
      cdisdif5 : Integer := 0;
      cdisdif6 : Integer := 0;
      cdisdif7 : Integer := 0;
      cdisdif8 : Integer := 0;
      chamt1 : Amount := 0.0;
      chamt2 : Amount := 0.0;
      chamt3 : Amount := 0.0;
      chamt4 : Amount := 0.0;
      chamtern : Amount := 0.0;
      chamttst : Amount := 0.0;
      chdla1 : Integer := 0;
      chdla2 : Integer := 0;
      chealth : Integer := 0;
      chearns1 : Integer := 0;
      chearns2 : Integer := 0;
      chema : Integer := 0;
      chemaamt : Amount := 0.0;
      chemapd : Integer := 0;
      chfar : Integer := 0;
      chhr1 : Integer := 0;
      chhr2 : Integer := 0;
      chlook01 : Integer := 0;
      chlook02 : Integer := 0;
      chlook03 : Integer := 0;
      chlook04 : Integer := 0;
      chlook05 : Integer := 0;
      chlook06 : Integer := 0;
      chlook07 : Integer := 0;
      chlook08 : Integer := 0;
      chlook09 : Integer := 0;
      chlook10 : Integer := 0;
      chpay1 : Integer := 0;
      chpay2 : Integer := 0;
      chpay3 : Integer := 0;
      chpdern : Integer := 0;
      chpdtst : Integer := 0;
      chprob : Integer := 0;
      chsave : Integer := 0;
      chwkern : Integer := 0;
      chwktst : Integer := 0;
      chyrern : Integer := 0;
      chyrtst : Integer := 0;
      clone : Integer := 0;
      cohabit : Integer := 0;
      convbl : Integer := 0;
      cost : Integer := 0;
      cvht : Integer := 0;
      cvpay : Integer := 0;
      cvpd : Integer := 0;
      dentist : Integer := 0;
      depend : Integer := 0;
      dob : Ada.Calendar.Time := FIRST_DATE;
      eligadlt : Integer := 0;
      eligchld : Integer := 0;
      endyr : Integer := 0;
      eyetest : Integer := 0;
      fted : Integer := 0;
      x_grant : Integer := 0;
      grtamt1 : Amount := 0.0;
      grtamt2 : Amount := 0.0;
      grtdir1 : Amount := 0.0;
      grtdir2 : Amount := 0.0;
      grtnum : Integer := 0;
      grtsce1 : Integer := 0;
      grtsce2 : Integer := 0;
      grtval1 : Amount := 0.0;
      grtval2 : Amount := 0.0;
      hholder : Integer := 0;
      hosp : Integer := 0;
      lareg : Integer := 0;
      legdep : Integer := 0;
      ms : Integer := 0;
      nhs1 : Integer := 0;
      nhs2 : Integer := 0;
      nhs3 : Integer := 0;
      parent1 : Integer := 0;
      parent2 : Integer := 0;
      prit : Integer := 0;
      prscrpt : Integer := 0;
      r01 : Integer := 0;
      r02 : Integer := 0;
      r03 : Integer := 0;
      r04 : Integer := 0;
      r05 : Integer := 0;
      r06 : Integer := 0;
      r07 : Integer := 0;
      r08 : Integer := 0;
      r09 : Integer := 0;
      r10 : Integer := 0;
      r11 : Integer := 0;
      r12 : Integer := 0;
      r13 : Integer := 0;
      r14 : Integer := 0;
      registr1 : Integer := 0;
      registr2 : Integer := 0;
      registr3 : Integer := 0;
      registr4 : Integer := 0;
      registr5 : Integer := 0;
      sex : Integer := 0;
      smkit : Integer := 0;
      smlit : Integer := 0;
      spcreg1 : Integer := 0;
      spcreg2 : Integer := 0;
      spcreg3 : Integer := 0;
      specs : Integer := 0;
      spout : Integer := 0;
      srentamt : Integer := 0;
      srentpd : Integer := 0;
      startyr : Integer := 0;
      totsave : Integer := 0;
      trav : Integer := 0;
      typeed : Integer := 0;
      voucher : Integer := 0;
      whytrav1 : Integer := 0;
      whytrav2 : Integer := 0;
      whytrav3 : Integer := 0;
      whytrav4 : Integer := 0;
      whytrav5 : Integer := 0;
      whytrav6 : Integer := 0;
      wmkit : Integer := 0;
      month : Integer := 0;
      careab : Integer := 0;
      careah : Integer := 0;
      carecb : Integer := 0;
      carech : Integer := 0;
      carecl : Integer := 0;
      carefl : Integer := 0;
      carefr : Integer := 0;
      careot : Integer := 0;
      carere : Integer := 0;
      chdda : Integer := 0;
      chearns : Amount := 0.0;
      chincdv : Amount := 0.0;
      chrinc : Amount := 0.0;
      fsmlkval : Amount := 0.0;
      fsmval : Amount := 0.0;
      fwmlkval : Amount := 0.0;
      hdagech : Integer := 0;
      hourab : Integer := 0;
      hourah : Integer := 0;
      hourcb : Integer := 0;
      hourch : Integer := 0;
      hourcl : Integer := 0;
      hourfr : Integer := 0;
      hourot : Integer := 0;
      hourre : Integer := 0;
      hourtot : Integer := 0;
      hperson : Integer := 0;
      iagegr2 : Integer := 0;
      iagegrp : Integer := 0;
      relhrp : Integer := 0;
      totgntch : Amount := 0.0;
      uperson : Integer := 0;
      cddatre : Integer := 0;
      cdisdif9 : Integer := 0;
      cddatrep : Integer := 0;
      cdisdifp : Integer := 0;
      cfund : Integer := 0;
      cfundh : Amount := 0.0;
      cfundtp : Integer := 0;
      fundamt1 : Amount := 0.0;
      fundamt2 : Amount := 0.0;
      fundamt3 : Amount := 0.0;
      fundamt4 : Amount := 0.0;
      fundamt5 : Amount := 0.0;
      fundamt6 : Amount := 0.0;
      givcfnd1 : Integer := 0;
      givcfnd2 : Integer := 0;
      givcfnd3 : Integer := 0;
      givcfnd4 : Integer := 0;
      givcfnd5 : Integer := 0;
      givcfnd6 : Integer := 0;
      tuacam : Amount := 0.0;
      schchk : Integer := 0;
      trainee : Integer := 0;
      cddaprg : Integer := 0;
      issue : Integer := 0;
      heartval : Amount := 0.0;
      xbonflag : Integer := 0;
      chca : Integer := 0;
      disdifch : Integer := 0;
      chearns3 : Integer := 0;
      chtrnamt : Amount := 0.0;
      chtrnpd : Integer := 0;
      hsvper : Integer := 0;
      mednum : Integer := 0;
      medprpd : Integer := 0;
      medprpy : Integer := 0;
      sbkit : Integer := 0;
      dobmonth : Integer := 0;
      dobyear : Integer := 0;
      fsbval : Amount := 0.0;
      btecnow : Integer := 0;
      cameyr : Integer := 0;
      cdaprog1 : Integer := 0;
      cdatre1 : Integer := 0;
      cdatrep1 : Integer := 0;
      cdisd01 : Integer := 0;
      cdisd02 : Integer := 0;
      cdisd03 : Integer := 0;
      cdisd04 : Integer := 0;
      cdisd05 : Integer := 0;
      cdisd06 : Integer := 0;
      cdisd07 : Integer := 0;
      cdisd08 : Integer := 0;
      cdisd09 : Integer := 0;
      cdisd10 : Integer := 0;
      chbfd : Integer := 0;
      chbfdamt : Amount := 0.0;
      chbfdpd : Integer := 0;
      chbfdval : Integer := 0;
      chcond : Integer := 0;
      chealth1 : Integer := 0;
      chlimitl : Integer := 0;
      citizen : Integer := 0;
      citizen2 : Integer := 0;
      contuk : Integer := 0;
      corign : Integer := 0;
      corigoth : Integer := 0;
      curqual : Integer := 0;
      degrenow : Integer := 0;
      denrec : Integer := 0;
      dvmardf : Integer := 0;
      heathch : Integer := 0;
      highonow : Integer := 0;
      hrsed : Integer := 0;
      medrec : Integer := 0;
      nvqlenow : Integer := 0;
      othpass : Integer := 0;
      reasden : Integer := 0;
      reasmed : Integer := 0;
      reasnhs : Integer := 0;
      rsanow : Integer := 0;
      sctvnow : Integer := 0;
      sfvit : Integer := 0;
      disactc1 : Integer := 0;
      discorc1 : Integer := 0;
      fsfvval : Amount := 0.0;
      marital : Integer := 0;
      typeed2 : Integer := 0;
      c2orign : Integer := 0;
      prox1619 : Integer := 0;
      candgnow : Integer := 0;
      curothf : Integer := 0;
      curothp : Integer := 0;
      curothwv : Integer := 0;
      gnvqnow : Integer := 0;
      ndeplnow : Integer := 0;
      oqualc1 : Integer := 0;
      oqualc2 : Integer := 0;
      oqualc3 : Integer := 0;
      webacnow : Integer := 0;
      ntsctnow : Integer := 0;
      skiwknow : Integer := 0;
   end record;
   --
   -- container for Child : child
   --
   package Child_List_Package is new Ada.Containers.Vectors
      (Element_Type => Child,
      Index_Type => Positive );
   subtype Child_List is Child_List_Package.Vector;
   --
   -- default value for Child : child
   --
   Null_Child : constant Child := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         adeduc => 0,
         age => 0,
         benccdis => 0,
         care => 0,
         cdisdif1 => 0,
         cdisdif2 => 0,
         cdisdif3 => 0,
         cdisdif4 => 0,
         cdisdif5 => 0,
         cdisdif6 => 0,
         cdisdif7 => 0,
         cdisdif8 => 0,
         chamt1 => 0.0,
         chamt2 => 0.0,
         chamt3 => 0.0,
         chamt4 => 0.0,
         chamtern => 0.0,
         chamttst => 0.0,
         chdla1 => 0,
         chdla2 => 0,
         chealth => 0,
         chearns1 => 0,
         chearns2 => 0,
         chema => 0,
         chemaamt => 0.0,
         chemapd => 0,
         chfar => 0,
         chhr1 => 0,
         chhr2 => 0,
         chlook01 => 0,
         chlook02 => 0,
         chlook03 => 0,
         chlook04 => 0,
         chlook05 => 0,
         chlook06 => 0,
         chlook07 => 0,
         chlook08 => 0,
         chlook09 => 0,
         chlook10 => 0,
         chpay1 => 0,
         chpay2 => 0,
         chpay3 => 0,
         chpdern => 0,
         chpdtst => 0,
         chprob => 0,
         chsave => 0,
         chwkern => 0,
         chwktst => 0,
         chyrern => 0,
         chyrtst => 0,
         clone => 0,
         cohabit => 0,
         convbl => 0,
         cost => 0,
         cvht => 0,
         cvpay => 0,
         cvpd => 0,
         dentist => 0,
         depend => 0,
         dob => FIRST_DATE,
         eligadlt => 0,
         eligchld => 0,
         endyr => 0,
         eyetest => 0,
         fted => 0,
         x_grant => 0,
         grtamt1 => 0.0,
         grtamt2 => 0.0,
         grtdir1 => 0.0,
         grtdir2 => 0.0,
         grtnum => 0,
         grtsce1 => 0,
         grtsce2 => 0,
         grtval1 => 0.0,
         grtval2 => 0.0,
         hholder => 0,
         hosp => 0,
         lareg => 0,
         legdep => 0,
         ms => 0,
         nhs1 => 0,
         nhs2 => 0,
         nhs3 => 0,
         parent1 => 0,
         parent2 => 0,
         prit => 0,
         prscrpt => 0,
         r01 => 0,
         r02 => 0,
         r03 => 0,
         r04 => 0,
         r05 => 0,
         r06 => 0,
         r07 => 0,
         r08 => 0,
         r09 => 0,
         r10 => 0,
         r11 => 0,
         r12 => 0,
         r13 => 0,
         r14 => 0,
         registr1 => 0,
         registr2 => 0,
         registr3 => 0,
         registr4 => 0,
         registr5 => 0,
         sex => 0,
         smkit => 0,
         smlit => 0,
         spcreg1 => 0,
         spcreg2 => 0,
         spcreg3 => 0,
         specs => 0,
         spout => 0,
         srentamt => 0,
         srentpd => 0,
         startyr => 0,
         totsave => 0,
         trav => 0,
         typeed => 0,
         voucher => 0,
         whytrav1 => 0,
         whytrav2 => 0,
         whytrav3 => 0,
         whytrav4 => 0,
         whytrav5 => 0,
         whytrav6 => 0,
         wmkit => 0,
         month => 0,
         careab => 0,
         careah => 0,
         carecb => 0,
         carech => 0,
         carecl => 0,
         carefl => 0,
         carefr => 0,
         careot => 0,
         carere => 0,
         chdda => 0,
         chearns => 0.0,
         chincdv => 0.0,
         chrinc => 0.0,
         fsmlkval => 0.0,
         fsmval => 0.0,
         fwmlkval => 0.0,
         hdagech => 0,
         hourab => 0,
         hourah => 0,
         hourcb => 0,
         hourch => 0,
         hourcl => 0,
         hourfr => 0,
         hourot => 0,
         hourre => 0,
         hourtot => 0,
         hperson => 0,
         iagegr2 => 0,
         iagegrp => 0,
         relhrp => 0,
         totgntch => 0.0,
         uperson => 0,
         cddatre => 0,
         cdisdif9 => 0,
         cddatrep => 0,
         cdisdifp => 0,
         cfund => 0,
         cfundh => 0.0,
         cfundtp => 0,
         fundamt1 => 0.0,
         fundamt2 => 0.0,
         fundamt3 => 0.0,
         fundamt4 => 0.0,
         fundamt5 => 0.0,
         fundamt6 => 0.0,
         givcfnd1 => 0,
         givcfnd2 => 0,
         givcfnd3 => 0,
         givcfnd4 => 0,
         givcfnd5 => 0,
         givcfnd6 => 0,
         tuacam => 0.0,
         schchk => 0,
         trainee => 0,
         cddaprg => 0,
         issue => 0,
         heartval => 0.0,
         xbonflag => 0,
         chca => 0,
         disdifch => 0,
         chearns3 => 0,
         chtrnamt => 0.0,
         chtrnpd => 0,
         hsvper => 0,
         mednum => 0,
         medprpd => 0,
         medprpy => 0,
         sbkit => 0,
         dobmonth => 0,
         dobyear => 0,
         fsbval => 0.0,
         btecnow => 0,
         cameyr => 0,
         cdaprog1 => 0,
         cdatre1 => 0,
         cdatrep1 => 0,
         cdisd01 => 0,
         cdisd02 => 0,
         cdisd03 => 0,
         cdisd04 => 0,
         cdisd05 => 0,
         cdisd06 => 0,
         cdisd07 => 0,
         cdisd08 => 0,
         cdisd09 => 0,
         cdisd10 => 0,
         chbfd => 0,
         chbfdamt => 0.0,
         chbfdpd => 0,
         chbfdval => 0,
         chcond => 0,
         chealth1 => 0,
         chlimitl => 0,
         citizen => 0,
         citizen2 => 0,
         contuk => 0,
         corign => 0,
         corigoth => 0,
         curqual => 0,
         degrenow => 0,
         denrec => 0,
         dvmardf => 0,
         heathch => 0,
         highonow => 0,
         hrsed => 0,
         medrec => 0,
         nvqlenow => 0,
         othpass => 0,
         reasden => 0,
         reasmed => 0,
         reasnhs => 0,
         rsanow => 0,
         sctvnow => 0,
         sfvit => 0,
         disactc1 => 0,
         discorc1 => 0,
         fsfvval => 0.0,
         marital => 0,
         typeed2 => 0,
         c2orign => 0,
         prox1619 => 0,
         candgnow => 0,
         curothf => 0,
         curothp => 0,
         curothwv => 0,
         gnvqnow => 0,
         ndeplnow => 0,
         oqualc1 => 0,
         oqualc2 => 0,
         oqualc3 => 0,
         webacnow => 0,
         ntsctnow => 0,
         skiwknow => 0
   );
   --
   -- simple print routine for Child : child
   --
   function To_String( rec : Child ) return String;

   --
   -- record modelling Adult : adult
   --
   type Adult is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      person : Integer := 0;
      abs1no : Integer := 0;
      abs2no : Integer := 0;
      abspar : Integer := 0;
      abspay : Integer := 0;
      abswhy : Integer := 0;
      abswk : Integer := 0;
      x_access : Integer := 0;
      accftpt : Integer := 0;
      accjb : Integer := 0;
      accssamt : Amount := 0.0;
      accsspd : Integer := 0;
      adeduc : Integer := 0;
      adema : Integer := 0;
      ademaamt : Amount := 0.0;
      ademapd : Integer := 0;
      age : Integer := 0;
      allow1 : Integer := 0;
      allow2 : Integer := 0;
      allow3 : Integer := 0;
      allow4 : Integer := 0;
      allpay1 : Amount := 0.0;
      allpay2 : Amount := 0.0;
      allpay3 : Amount := 0.0;
      allpay4 : Amount := 0.0;
      allpd1 : Integer := 0;
      allpd2 : Integer := 0;
      allpd3 : Integer := 0;
      allpd4 : Integer := 0;
      anyacc : Integer := 0;
      anyed : Integer := 0;
      anymon : Integer := 0;
      anypen1 : Integer := 0;
      anypen2 : Integer := 0;
      anypen3 : Integer := 0;
      anypen4 : Integer := 0;
      anypen5 : Integer := 0;
      anypen6 : Integer := 0;
      anypen7 : Integer := 0;
      apamt : Amount := 0.0;
      apdamt : Amount := 0.0;
      apdir : Integer := 0;
      apdpd : Integer := 0;
      appd : Integer := 0;
      b2qfut1 : Integer := 0;
      b2qfut2 : Integer := 0;
      b2qfut3 : Integer := 0;
      b3qfut1 : Integer := 0;
      b3qfut2 : Integer := 0;
      b3qfut3 : Integer := 0;
      b3qfut4 : Integer := 0;
      b3qfut5 : Integer := 0;
      b3qfut6 : Integer := 0;
      ben1q1 : Integer := 0;
      ben1q2 : Integer := 0;
      ben1q3 : Integer := 0;
      ben1q4 : Integer := 0;
      ben1q5 : Integer := 0;
      ben1q6 : Integer := 0;
      ben1q7 : Integer := 0;
      ben2q1 : Integer := 0;
      ben2q2 : Integer := 0;
      ben2q3 : Integer := 0;
      ben3q1 : Integer := 0;
      ben3q2 : Integer := 0;
      ben3q3 : Integer := 0;
      ben3q4 : Integer := 0;
      ben3q5 : Integer := 0;
      ben3q6 : Integer := 0;
      ben4q1 : Integer := 0;
      ben4q2 : Integer := 0;
      ben4q3 : Integer := 0;
      ben5q1 : Integer := 0;
      ben5q2 : Integer := 0;
      ben5q3 : Integer := 0;
      ben5q4 : Integer := 0;
      ben5q5 : Integer := 0;
      ben5q6 : Integer := 0;
      ben7q1 : Integer := 0;
      ben7q2 : Integer := 0;
      ben7q3 : Integer := 0;
      ben7q4 : Integer := 0;
      ben7q5 : Integer := 0;
      ben7q6 : Integer := 0;
      ben7q7 : Integer := 0;
      ben7q8 : Integer := 0;
      ben7q9 : Integer := 0;
      btwacc : Integer := 0;
      claimant : Integer := 0;
      cohabit : Integer := 0;
      combid : Integer := 0;
      convbl : Integer := 0;
      ctclum1 : Integer := 0;
      ctclum2 : Integer := 0;
      cupchk : Integer := 0;
      cvht : Integer := 0;
      cvpay : Amount := 0.0;
      cvpd : Integer := 0;
      dentist : Integer := 0;
      depend : Integer := 0;
      disdif1 : Integer := 0;
      disdif2 : Integer := 0;
      disdif3 : Integer := 0;
      disdif4 : Integer := 0;
      disdif5 : Integer := 0;
      disdif6 : Integer := 0;
      disdif7 : Integer := 0;
      disdif8 : Integer := 0;
      dob : Ada.Calendar.Time := FIRST_DATE;
      dptcboth : Integer := 0;
      dptclum : Integer := 0;
      dvil03a : Integer := 0;
      dvil04a : Integer := 0;
      dvjb12ml : Integer := 0;
      dvmardf : Integer := 0;
      ed1amt : Amount := 0.0;
      ed1borr : Integer := 0;
      ed1int : Integer := 0;
      ed1monyr : Ada.Calendar.Time := FIRST_DATE;
      ed1pd : Integer := 0;
      ed1sum : Integer := 0;
      ed2amt : Amount := 0.0;
      ed2borr : Integer := 0;
      ed2int : Integer := 0;
      ed2monyr : Ada.Calendar.Time := FIRST_DATE;
      ed2pd : Integer := 0;
      ed2sum : Integer := 0;
      edatt : Integer := 0;
      edattn1 : Integer := 0;
      edattn2 : Integer := 0;
      edattn3 : Integer := 0;
      edhr : Integer := 0;
      edtime : Integer := 0;
      edtyp : Integer := 0;
      eligadlt : Integer := 0;
      eligchld : Integer := 0;
      emppay1 : Integer := 0;
      emppay2 : Integer := 0;
      emppay3 : Integer := 0;
      empstat : Integer := 0;
      endyr : Integer := 0;
      epcur : Integer := 0;
      es2000 : Integer := 0;
      ethgrp : Integer := 0;
      everwrk : Integer := 0;
      exthbct1 : Integer := 0;
      exthbct2 : Integer := 0;
      exthbct3 : Integer := 0;
      eyetest : Integer := 0;
      follow : Integer := 0;
      fted : Integer := 0;
      ftwk : Integer := 0;
      future : Integer := 0;
      govpis : Integer := 0;
      govpjsa : Integer := 0;
      x_grant : Integer := 0;
      grtamt1 : Amount := 0.0;
      grtamt2 : Amount := 0.0;
      grtdir1 : Amount := 0.0;
      grtdir2 : Amount := 0.0;
      grtnum : Integer := 0;
      grtsce1 : Integer := 0;
      grtsce2 : Integer := 0;
      grtval1 : Amount := 0.0;
      grtval2 : Amount := 0.0;
      gta : Integer := 0;
      hbothamt : Amount := 0.0;
      hbothbu : Integer := 0;
      hbothpd : Integer := 0;
      hbothwk : Integer := 0;
      hbotwait : Integer := 0;
      health : Integer := 0;
      hholder : Integer := 0;
      hosp : Integer := 0;
      hprob : Integer := 0;
      hrpid : Integer := 0;
      incdur : Integer := 0;
      injlong : Integer := 0;
      injwk : Integer := 0;
      invests : Integer := 0;
      iout : Integer := 0;
      isa1type : Integer := 0;
      isa2type : Integer := 0;
      isa3type : Integer := 0;
      jobaway : Integer := 0;
      lareg : Integer := 0;
      likewk : Integer := 0;
      lktime : Integer := 0;
      ln1rpint : Integer := 0;
      ln2rpint : Integer := 0;
      loan : Integer := 0;
      loannum : Integer := 0;
      look : Integer := 0;
      lookwk : Integer := 0;
      lstwrk1 : Integer := 0;
      lstwrk2 : Integer := 0;
      lstyr : Integer := 0;
      mntamt1 : Amount := 0.0;
      mntamt2 : Amount := 0.0;
      mntct : Integer := 0;
      mntfor1 : Integer := 0;
      mntfor2 : Integer := 0;
      mntgov1 : Integer := 0;
      mntgov2 : Integer := 0;
      mntpay : Integer := 0;
      mntpd1 : Integer := 0;
      mntpd2 : Integer := 0;
      mntrec : Integer := 0;
      mnttota1 : Integer := 0;
      mnttota2 : Integer := 0;
      mntus1 : Integer := 0;
      mntus2 : Integer := 0;
      mntusam1 : Amount := 0.0;
      mntusam2 : Amount := 0.0;
      mntuspd1 : Integer := 0;
      mntuspd2 : Integer := 0;
      ms : Integer := 0;
      natid1 : Integer := 0;
      natid2 : Integer := 0;
      natid3 : Integer := 0;
      natid4 : Integer := 0;
      natid5 : Integer := 0;
      natid6 : Integer := 0;
      ndeal : Integer := 0;
      newdtype : Integer := 0;
      nhs1 : Integer := 0;
      nhs2 : Integer := 0;
      nhs3 : Integer := 0;
      niamt : Amount := 0.0;
      niethgrp : Integer := 0;
      niexthbb : Integer := 0;
      ninatid1 : Integer := 0;
      ninatid2 : Integer := 0;
      ninatid3 : Integer := 0;
      ninatid4 : Integer := 0;
      ninatid5 : Integer := 0;
      ninatid6 : Integer := 0;
      ninatid7 : Integer := 0;
      ninatid8 : Integer := 0;
      nipd : Integer := 0;
      nireg : Integer := 0;
      nirel : Integer := 0;
      nitrain : Integer := 0;
      nlper : Integer := 0;
      nolk1 : Integer := 0;
      nolk2 : Integer := 0;
      nolk3 : Integer := 0;
      nolook : Integer := 0;
      nowant : Integer := 0;
      nssec : Amount := 0.0;
      ntcapp : Integer := 0;
      ntcdat : Integer := 0;
      ntcinc : Amount := 0.0;
      ntcorig1 : Integer := 0;
      ntcorig2 : Integer := 0;
      ntcorig3 : Integer := 0;
      ntcorig4 : Integer := 0;
      ntcorig5 : Integer := 0;
      numjob : Integer := 0;
      numjob2 : Integer := 0;
      oddjob : Integer := 0;
      oldstud : Integer := 0;
      otabspar : Integer := 0;
      otamt : Amount := 0.0;
      otapamt : Amount := 0.0;
      otappd : Integer := 0;
      othtax : Integer := 0;
      otinva : Integer := 0;
      pareamt : Amount := 0.0;
      parepd : Integer := 0;
      penlump : Integer := 0;
      ppnumc : Integer := 0;
      prit : Integer := 0;
      prscrpt : Integer := 0;
      ptwk : Integer := 0;
      r01 : Integer := 0;
      r02 : Integer := 0;
      r03 : Integer := 0;
      r04 : Integer := 0;
      r05 : Integer := 0;
      r06 : Integer := 0;
      r07 : Integer := 0;
      r08 : Integer := 0;
      r09 : Integer := 0;
      r10 : Integer := 0;
      r11 : Integer := 0;
      r12 : Integer := 0;
      r13 : Integer := 0;
      r14 : Integer := 0;
      redamt : Amount := 0.0;
      redany : Integer := 0;
      rentprof : Integer := 0;
      retire : Integer := 0;
      retire1 : Integer := 0;
      retreas : Integer := 0;
      royal1 : Integer := 0;
      royal2 : Integer := 0;
      royal3 : Integer := 0;
      royal4 : Integer := 0;
      royyr1 : Amount := 0.0;
      royyr2 : Amount := 0.0;
      royyr3 : Amount := 0.0;
      royyr4 : Amount := 0.0;
      rstrct : Integer := 0;
      sex : Integer := 0;
      sflntyp1 : Integer := 0;
      sflntyp2 : Integer := 0;
      sftype1 : Integer := 0;
      sftype2 : Integer := 0;
      sic : Integer := 0;
      slrepamt : Amount := 0.0;
      slrepay : Integer := 0;
      slreppd : Integer := 0;
      soc2000 : Integer := 0;
      spcreg1 : Integer := 0;
      spcreg2 : Integer := 0;
      spcreg3 : Integer := 0;
      specs : Integer := 0;
      spout : Integer := 0;
      srentamt : Amount := 0.0;
      srentpd : Integer := 0;
      start : Integer := 0;
      startyr : Integer := 0;
      taxcred1 : Integer := 0;
      taxcred2 : Integer := 0;
      taxcred3 : Integer := 0;
      taxcred4 : Integer := 0;
      taxcred5 : Integer := 0;
      taxfut : Integer := 0;
      tdaywrk : Integer := 0;
      tea : Integer := 0;
      topupl : Integer := 0;
      totint : Amount := 0.0;
      train : Integer := 0;
      trav : Integer := 0;
      tuborr : Integer := 0;
      typeed : Integer := 0;
      unpaid1 : Integer := 0;
      unpaid2 : Integer := 0;
      voucher : Integer := 0;
      w1 : Integer := 0;
      w2 : Integer := 0;
      wait : Integer := 0;
      war1 : Integer := 0;
      war2 : Integer := 0;
      wftcboth : Integer := 0;
      wftclum : Integer := 0;
      whoresp : Integer := 0;
      whosectb : Integer := 0;
      whyfrde1 : Integer := 0;
      whyfrde2 : Integer := 0;
      whyfrde3 : Integer := 0;
      whyfrde4 : Integer := 0;
      whyfrde5 : Integer := 0;
      whyfrde6 : Integer := 0;
      whyfrey1 : Integer := 0;
      whyfrey2 : Integer := 0;
      whyfrey3 : Integer := 0;
      whyfrey4 : Integer := 0;
      whyfrey5 : Integer := 0;
      whyfrey6 : Integer := 0;
      whyfrpr1 : Integer := 0;
      whyfrpr2 : Integer := 0;
      whyfrpr3 : Integer := 0;
      whyfrpr4 : Integer := 0;
      whyfrpr5 : Integer := 0;
      whyfrpr6 : Integer := 0;
      whytrav1 : Integer := 0;
      whytrav2 : Integer := 0;
      whytrav3 : Integer := 0;
      whytrav4 : Integer := 0;
      whytrav5 : Integer := 0;
      whytrav6 : Integer := 0;
      wintfuel : Integer := 0;
      wmkit : Integer := 0;
      working : Integer := 0;
      wpa : Integer := 0;
      wpba : Integer := 0;
      wtclum1 : Integer := 0;
      wtclum2 : Integer := 0;
      wtclum3 : Integer := 0;
      ystrtwk : Integer := 0;
      month : Integer := 0;
      able : Integer := 0;
      actacci : Integer := 0;
      addda : Integer := 0;
      basacti : Integer := 0;
      bntxcred : Amount := 0.0;
      careab : Integer := 0;
      careah : Integer := 0;
      carecb : Integer := 0;
      carech : Integer := 0;
      carecl : Integer := 0;
      carefl : Integer := 0;
      carefr : Integer := 0;
      careot : Integer := 0;
      carere : Integer := 0;
      curacti : Integer := 0;
      empoccp : Amount := 0.0;
      empstatb : Integer := 0;
      empstatc : Integer := 0;
      empstati : Integer := 0;
      fsbndcti : Integer := 0;
      fwmlkval : Amount := 0.0;
      gebacti : Integer := 0;
      giltcti : Integer := 0;
      gross2 : Integer := 0;
      gross3 : Integer := 0;
      hbsupran : Amount := 0.0;
      hdage : Integer := 0;
      hdben : Integer := 0;
      hdindinc : Integer := 0;
      hourab : Integer := 0;
      hourah : Integer := 0;
      hourcare : Amount := 0.0;
      hourcb : Integer := 0;
      hourch : Integer := 0;
      hourcl : Integer := 0;
      hourfr : Integer := 0;
      hourot : Integer := 0;
      hourre : Integer := 0;
      hourtot : Integer := 0;
      hperson : Integer := 0;
      iagegr2 : Integer := 0;
      iagegrp : Integer := 0;
      incseo2 : Amount := 0.0;
      indinc : Integer := 0;
      indisben : Integer := 0;
      inearns : Amount := 0.0;
      ininv : Amount := 0.0;
      inirben : Integer := 0;
      innirben : Integer := 0;
      inothben : Integer := 0;
      inpeninc : Amount := 0.0;
      inrinc : Amount := 0.0;
      inrpinc : Amount := 0.0;
      intvlic : Amount := 0.0;
      intxcred : Amount := 0.0;
      isacti : Integer := 0;
      marital : Integer := 0;
      netocpen : Amount := 0.0;
      nincseo2 : Amount := 0.0;
      nindinc : Integer := 0;
      ninearns : Integer := 0;
      nininv : Integer := 0;
      ninpenin : Integer := 0;
      ninsein2 : Amount := 0.0;
      nsbocti : Integer := 0;
      occupnum : Integer := 0;
      otbscti : Integer := 0;
      pepscti : Integer := 0;
      poaccti : Integer := 0;
      prbocti : Integer := 0;
      relhrp : Integer := 0;
      sayecti : Integer := 0;
      sclbcti : Integer := 0;
      seincam2 : Amount := 0.0;
      smpadj : Amount := 0.0;
      sscti : Integer := 0;
      sspadj : Amount := 0.0;
      stshcti : Integer := 0;
      superan : Amount := 0.0;
      taxpayer : Integer := 0;
      tesscti : Integer := 0;
      totgrant : Amount := 0.0;
      tothours : Amount := 0.0;
      totoccp : Amount := 0.0;
      ttwcosts : Amount := 0.0;
      untrcti : Integer := 0;
      uperson : Integer := 0;
      widoccp : Amount := 0.0;
      accountq : Integer := 0;
      ben5q7 : Integer := 0;
      ben5q8 : Integer := 0;
      ben5q9 : Integer := 0;
      ddatre : Integer := 0;
      disdif9 : Integer := 0;
      fare : Amount := 0.0;
      nittwmod : Integer := 0;
      oneway : Integer := 0;
      pssamt : Amount := 0.0;
      pssdate : Integer := 0;
      ttwcode1 : Integer := 0;
      ttwcode2 : Integer := 0;
      ttwcode3 : Integer := 0;
      ttwcost : Amount := 0.0;
      ttwfar : Integer := 0;
      ttwfrq : Amount := 0.0;
      ttwmod : Integer := 0;
      ttwpay : Integer := 0;
      ttwpss : Integer := 0;
      ttwrec : Amount := 0.0;
      chbflg : Integer := 0;
      crunaci : Integer := 0;
      enomorti : Integer := 0;
      sapadj : Amount := 0.0;
      sppadj : Amount := 0.0;
      ttwmode : Integer := 0;
      ddatrep : Integer := 0;
      defrpen : Integer := 0;
      disdifp : Integer := 0;
      followup : Integer := 0;
      practice : Integer := 0;
      sfrpis : Integer := 0;
      sfrpjsa : Integer := 0;
      age80 : Integer := 0;
      ethgr2 : Integer := 0;
      pocardi : Integer := 0;
      chkdpn : Integer := 0;
      chknop : Integer := 0;
      consent : Integer := 0;
      dvpens : Integer := 0;
      eligschm : Integer := 0;
      emparr : Integer := 0;
      emppen : Integer := 0;
      empschm : Integer := 0;
      lnkref1 : Integer := 0;
      lnkref2 : Integer := 0;
      lnkref21 : Integer := 0;
      lnkref22 : Integer := 0;
      lnkref23 : Integer := 0;
      lnkref24 : Integer := 0;
      lnkref25 : Integer := 0;
      lnkref3 : Integer := 0;
      lnkref4 : Integer := 0;
      lnkref5 : Integer := 0;
      memschm : Integer := 0;
      pconsent : Integer := 0;
      perspen1 : Integer := 0;
      perspen2 : Integer := 0;
      privpen : Integer := 0;
      schchk : Integer := 0;
      spnumc : Integer := 0;
      stakep : Integer := 0;
      trainee : Integer := 0;
      lnkdwp : Integer := 0;
      lnkons : Integer := 0;
      lnkref6 : Integer := 0;
      lnkref7 : Integer := 0;
      lnkref8 : Integer := 0;
      lnkref9 : Integer := 0;
      tcever1 : Integer := 0;
      tcever2 : Integer := 0;
      tcrepay1 : Integer := 0;
      tcrepay2 : Integer := 0;
      tcrepay3 : Integer := 0;
      tcrepay4 : Integer := 0;
      tcrepay5 : Integer := 0;
      tcrepay6 : Integer := 0;
      tcthsyr1 : Integer := 0;
      tcthsyr2 : Integer := 0;
      currjobm : Integer := 0;
      prevjobm : Integer := 0;
      b3qfut7 : Integer := 0;
      ben3q7 : Integer := 0;
      camemt : Integer := 0;
      cameyr : Integer := 0;
      cameyr2 : Integer := 0;
      contuk : Integer := 0;
      corign : Integer := 0;
      ddaprog : Integer := 0;
      hbolng : Integer := 0;
      hi1qual1 : Integer := 0;
      hi1qual2 : Integer := 0;
      hi1qual3 : Integer := 0;
      hi1qual4 : Integer := 0;
      hi1qual5 : Integer := 0;
      hi1qual6 : Integer := 0;
      hi2qual : Integer := 0;
      hlpgvn01 : Integer := 0;
      hlpgvn02 : Integer := 0;
      hlpgvn03 : Integer := 0;
      hlpgvn04 : Integer := 0;
      hlpgvn05 : Integer := 0;
      hlpgvn06 : Integer := 0;
      hlpgvn07 : Integer := 0;
      hlpgvn08 : Integer := 0;
      hlpgvn09 : Integer := 0;
      hlpgvn10 : Integer := 0;
      hlpgvn11 : Integer := 0;
      hlprec01 : Integer := 0;
      hlprec02 : Integer := 0;
      hlprec03 : Integer := 0;
      hlprec04 : Integer := 0;
      hlprec05 : Integer := 0;
      hlprec06 : Integer := 0;
      hlprec07 : Integer := 0;
      hlprec08 : Integer := 0;
      hlprec09 : Integer := 0;
      hlprec10 : Integer := 0;
      hlprec11 : Integer := 0;
      issue : Integer := 0;
      loangvn1 : Integer := 0;
      loangvn2 : Integer := 0;
      loangvn3 : Integer := 0;
      loanrec1 : Integer := 0;
      loanrec2 : Integer := 0;
      loanrec3 : Integer := 0;
      mntarr1 : Integer := 0;
      mntarr2 : Integer := 0;
      mntarr3 : Integer := 0;
      mntarr4 : Integer := 0;
      mntnrp : Integer := 0;
      othqual1 : Integer := 0;
      othqual2 : Integer := 0;
      othqual3 : Integer := 0;
      tea9697 : Integer := 0;
      heartval : Amount := 0.0;
      iagegr3 : Integer := 0;
      iagegr4 : Integer := 0;
      nirel2 : Integer := 0;
      xbonflag : Integer := 0;
      alg : Integer := 0;
      algamt : Amount := 0.0;
      algpd : Integer := 0;
      ben4q4 : Integer := 0;
      chkctc : Integer := 0;
      chkdpco1 : Integer := 0;
      chkdpco2 : Integer := 0;
      chkdpco3 : Integer := 0;
      chkdsco1 : Integer := 0;
      chkdsco2 : Integer := 0;
      chkdsco3 : Integer := 0;
      dv09pens : Integer := 0;
      lnkref01 : Integer := 0;
      lnkref02 : Integer := 0;
      lnkref03 : Integer := 0;
      lnkref04 : Integer := 0;
      lnkref05 : Integer := 0;
      lnkref06 : Integer := 0;
      lnkref07 : Integer := 0;
      lnkref08 : Integer := 0;
      lnkref09 : Integer := 0;
      lnkref10 : Integer := 0;
      lnkref11 : Integer := 0;
      spyrot : Integer := 0;
      disdifad : Integer := 0;
      gross3_x : Integer := 0;
      aliamt : Amount := 0.0;
      alimny : Integer := 0;
      alipd : Integer := 0;
      alius : Integer := 0;
      aluamt : Amount := 0.0;
      alupd : Integer := 0;
      cbaamt : Integer := 0;
      hsvper : Integer := 0;
      mednum : Integer := 0;
      medprpd : Integer := 0;
      medprpy : Integer := 0;
      penflag : Integer := 0;
      ppchk1 : Integer := 0;
      ppchk2 : Integer := 0;
      ppchk3 : Integer := 0;
      ttbprx : Amount := 0.0;
      mjobsect : Integer := 0;
      etngrp : Integer := 0;
      medpay : Integer := 0;
      medrep : Integer := 0;
      medrpnm : Integer := 0;
      nanid1 : Integer := 0;
      nanid2 : Integer := 0;
      nanid3 : Integer := 0;
      nanid4 : Integer := 0;
      nanid5 : Integer := 0;
      nanid6 : Integer := 0;
      nietngrp : Integer := 0;
      ninanid1 : Integer := 0;
      ninanid2 : Integer := 0;
      ninanid3 : Integer := 0;
      ninanid4 : Integer := 0;
      ninanid5 : Integer := 0;
      ninanid6 : Integer := 0;
      ninanid7 : Integer := 0;
      nirelig : Integer := 0;
      pollopin : Integer := 0;
      religenw : Integer := 0;
      religsc : Integer := 0;
      sidqn : Integer := 0;
      soc2010 : Integer := 0;
      corignan : Integer := 0;
      dobmonth : Integer := 0;
      dobyear : Integer := 0;
      ethgr3 : Integer := 0;
      ninanida : Integer := 0;
      agehqual : Integer := 0;
      bfd : Integer := 0;
      bfdamt : Amount := 0.0;
      bfdpd : Integer := 0;
      bfdval : Integer := 0;
      btec : Integer := 0;
      btecnow : Integer := 0;
      cbaamt2 : Integer := 0;
      change : Integer := 0;
      citizen : Integer := 0;
      citizen2 : Integer := 0;
      condit : Integer := 0;
      corigoth : Integer := 0;
      curqual : Integer := 0;
      ddaprog1 : Integer := 0;
      ddatre1 : Integer := 0;
      ddatrep1 : Integer := 0;
      degree : Integer := 0;
      degrenow : Integer := 0;
      denrec : Integer := 0;
      disd01 : Integer := 0;
      disd02 : Integer := 0;
      disd03 : Integer := 0;
      disd04 : Integer := 0;
      disd05 : Integer := 0;
      disd06 : Integer := 0;
      disd07 : Integer := 0;
      disd08 : Integer := 0;
      disd09 : Integer := 0;
      disd10 : Integer := 0;
      disdifp1 : Integer := 0;
      empcontr : Integer := 0;
      ethgrps : Integer := 0;
      eualiamt : Amount := 0.0;
      eualimny : Integer := 0;
      eualipd : Integer := 0;
      euetype : Integer := 0;
      followsc : Integer := 0;
      health1 : Integer := 0;
      heathad : Integer := 0;
      hi3qual : Integer := 0;
      higho : Integer := 0;
      highonow : Integer := 0;
      jobbyr : Integer := 0;
      limitl : Integer := 0;
      lktrain : Integer := 0;
      lkwork : Integer := 0;
      medrec : Integer := 0;
      nvqlenow : Integer := 0;
      nvqlev : Integer := 0;
      othpass : Integer := 0;
      ppper : Integer := 0;
      proptax : Amount := 0.0;
      reasden : Integer := 0;
      reasmed : Integer := 0;
      reasnhs : Integer := 0;
      reason : Integer := 0;
      rednet : Integer := 0;
      redtax : Amount := 0.0;
      rsa : Integer := 0;
      rsanow : Integer := 0;
      samesit : Integer := 0;
      scotvec : Integer := 0;
      sctvnow : Integer := 0;
      sdemp01 : Integer := 0;
      sdemp02 : Integer := 0;
      sdemp03 : Integer := 0;
      sdemp04 : Integer := 0;
      sdemp05 : Integer := 0;
      sdemp06 : Integer := 0;
      sdemp07 : Integer := 0;
      sdemp08 : Integer := 0;
      sdemp09 : Integer := 0;
      sdemp10 : Integer := 0;
      sdemp11 : Integer := 0;
      sdemp12 : Integer := 0;
      selfdemp : Integer := 0;
      tempjob : Integer := 0;
      agehq80 : Integer := 0;
      disacta1 : Integer := 0;
      discora1 : Integer := 0;
      gross4 : Integer := 0;
      ninrinc : Integer := 0;
      typeed2 : Integer := 0;
      w45 : Integer := 0;
      accmsat : Integer := 0;
      c2orign : Integer := 0;
      calm : Integer := 0;
      cbchk : Integer := 0;
      claifut1 : Integer := 0;
      claifut2 : Integer := 0;
      claifut3 : Integer := 0;
      claifut4 : Integer := 0;
      claifut5 : Integer := 0;
      claifut6 : Integer := 0;
      claifut7 : Integer := 0;
      claifut8 : Integer := 0;
      commusat : Integer := 0;
      coptrust : Integer := 0;
      depress : Integer := 0;
      disben1 : Integer := 0;
      disben2 : Integer := 0;
      disben3 : Integer := 0;
      disben4 : Integer := 0;
      disben5 : Integer := 0;
      disben6 : Integer := 0;
      discuss : Integer := 0;
      dla1 : Integer := 0;
      dla2 : Integer := 0;
      dls : Integer := 0;
      dlsamt : Amount := 0.0;
      dlspd : Integer := 0;
      dlsval : Integer := 0;
      down : Integer := 0;
      envirsat : Integer := 0;
      gpispc : Integer := 0;
      gpjsaesa : Integer := 0;
      happy : Integer := 0;
      help : Integer := 0;
      iclaim1 : Integer := 0;
      iclaim2 : Integer := 0;
      iclaim3 : Integer := 0;
      iclaim4 : Integer := 0;
      iclaim5 : Integer := 0;
      iclaim6 : Integer := 0;
      iclaim7 : Integer := 0;
      iclaim8 : Integer := 0;
      iclaim9 : Integer := 0;
      jobsat : Integer := 0;
      kidben1 : Integer := 0;
      kidben2 : Integer := 0;
      kidben3 : Integer := 0;
      legltrus : Integer := 0;
      lifesat : Integer := 0;
      meaning : Integer := 0;
      moneysat : Integer := 0;
      nervous : Integer := 0;
      ni2train : Integer := 0;
      othben1 : Integer := 0;
      othben2 : Integer := 0;
      othben3 : Integer := 0;
      othben4 : Integer := 0;
      othben5 : Integer := 0;
      othben6 : Integer := 0;
      othtrust : Integer := 0;
      penben1 : Integer := 0;
      penben2 : Integer := 0;
      penben3 : Integer := 0;
      penben4 : Integer := 0;
      penben5 : Integer := 0;
      pip1 : Integer := 0;
      pip2 : Integer := 0;
      polttrus : Integer := 0;
      recsat : Integer := 0;
      relasat : Integer := 0;
      safe : Integer := 0;
      socfund1 : Integer := 0;
      socfund2 : Integer := 0;
      socfund3 : Integer := 0;
      socfund4 : Integer := 0;
      srispc : Integer := 0;
      srjsaesa : Integer := 0;
      timesat : Integer := 0;
      train2 : Integer := 0;
      trnallow : Integer := 0;
      wageben1 : Integer := 0;
      wageben2 : Integer := 0;
      wageben3 : Integer := 0;
      wageben4 : Integer := 0;
      wageben5 : Integer := 0;
      wageben6 : Integer := 0;
      wageben7 : Integer := 0;
      wageben8 : Integer := 0;
      ninnirbn : Integer := 0;
      ninothbn : Integer := 0;
      anxious : Integer := 0;
      candgnow : Integer := 0;
      curothf : Integer := 0;
      curothp : Integer := 0;
      curothwv : Integer := 0;
      dvhiqual : Integer := 0;
      gnvqnow : Integer := 0;
      gpuc : Integer := 0;
      happywb : Integer := 0;
      hi1qual7 : Integer := 0;
      hi1qual8 : Integer := 0;
      mntarr5 : Integer := 0;
      mntnoch1 : Integer := 0;
      mntnoch2 : Integer := 0;
      mntnoch3 : Integer := 0;
      mntnoch4 : Integer := 0;
      mntnoch5 : Integer := 0;
      mntpro1 : Integer := 0;
      mntpro2 : Integer := 0;
      mntpro3 : Integer := 0;
      mnttim1 : Integer := 0;
      mnttim2 : Integer := 0;
      mnttim3 : Integer := 0;
      mntwrk1 : Integer := 0;
      mntwrk2 : Integer := 0;
      mntwrk3 : Integer := 0;
      mntwrk4 : Integer := 0;
      mntwrk5 : Integer := 0;
      ndeplnow : Integer := 0;
      oqualc1 : Integer := 0;
      oqualc2 : Integer := 0;
      oqualc3 : Integer := 0;
      sruc : Integer := 0;
      webacnow : Integer := 0;
      indeth : Integer := 0;
      euactive : Integer := 0;
      euactno : Integer := 0;
      euartact : Integer := 0;
      euaskhlp : Integer := 0;
      eucinema : Integer := 0;
      eucultur : Integer := 0;
      euinvol : Integer := 0;
      eulivpe : Integer := 0;
      eumtfam : Integer := 0;
      eumtfrnd : Integer := 0;
      eusocnet : Integer := 0;
      eusport : Integer := 0;
      eutkfam : Integer := 0;
      eutkfrnd : Integer := 0;
      eutkmat : Integer := 0;
      euvol : Integer := 0;
      natscot : Integer := 0;
      ntsctnow : Integer := 0;
      penwel1 : Integer := 0;
      penwel2 : Integer := 0;
      penwel3 : Integer := 0;
      penwel4 : Integer := 0;
      penwel5 : Integer := 0;
      penwel6 : Integer := 0;
      skiwknow : Integer := 0;
      skiwrk : Integer := 0;
      slos : Integer := 0;
      yjblev : Integer := 0;
   end record;
   --
   -- container for Adult : adult
   --
   package Adult_List_Package is new Ada.Containers.Vectors
      (Element_Type => Adult,
      Index_Type => Positive );
   subtype Adult_List is Adult_List_Package.Vector;
   --
   -- default value for Adult : adult
   --
   Null_Adult : constant Adult := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         person => 0,
         abs1no => 0,
         abs2no => 0,
         abspar => 0,
         abspay => 0,
         abswhy => 0,
         abswk => 0,
         x_access => 0,
         accftpt => 0,
         accjb => 0,
         accssamt => 0.0,
         accsspd => 0,
         adeduc => 0,
         adema => 0,
         ademaamt => 0.0,
         ademapd => 0,
         age => 0,
         allow1 => 0,
         allow2 => 0,
         allow3 => 0,
         allow4 => 0,
         allpay1 => 0.0,
         allpay2 => 0.0,
         allpay3 => 0.0,
         allpay4 => 0.0,
         allpd1 => 0,
         allpd2 => 0,
         allpd3 => 0,
         allpd4 => 0,
         anyacc => 0,
         anyed => 0,
         anymon => 0,
         anypen1 => 0,
         anypen2 => 0,
         anypen3 => 0,
         anypen4 => 0,
         anypen5 => 0,
         anypen6 => 0,
         anypen7 => 0,
         apamt => 0.0,
         apdamt => 0.0,
         apdir => 0,
         apdpd => 0,
         appd => 0,
         b2qfut1 => 0,
         b2qfut2 => 0,
         b2qfut3 => 0,
         b3qfut1 => 0,
         b3qfut2 => 0,
         b3qfut3 => 0,
         b3qfut4 => 0,
         b3qfut5 => 0,
         b3qfut6 => 0,
         ben1q1 => 0,
         ben1q2 => 0,
         ben1q3 => 0,
         ben1q4 => 0,
         ben1q5 => 0,
         ben1q6 => 0,
         ben1q7 => 0,
         ben2q1 => 0,
         ben2q2 => 0,
         ben2q3 => 0,
         ben3q1 => 0,
         ben3q2 => 0,
         ben3q3 => 0,
         ben3q4 => 0,
         ben3q5 => 0,
         ben3q6 => 0,
         ben4q1 => 0,
         ben4q2 => 0,
         ben4q3 => 0,
         ben5q1 => 0,
         ben5q2 => 0,
         ben5q3 => 0,
         ben5q4 => 0,
         ben5q5 => 0,
         ben5q6 => 0,
         ben7q1 => 0,
         ben7q2 => 0,
         ben7q3 => 0,
         ben7q4 => 0,
         ben7q5 => 0,
         ben7q6 => 0,
         ben7q7 => 0,
         ben7q8 => 0,
         ben7q9 => 0,
         btwacc => 0,
         claimant => 0,
         cohabit => 0,
         combid => 0,
         convbl => 0,
         ctclum1 => 0,
         ctclum2 => 0,
         cupchk => 0,
         cvht => 0,
         cvpay => 0.0,
         cvpd => 0,
         dentist => 0,
         depend => 0,
         disdif1 => 0,
         disdif2 => 0,
         disdif3 => 0,
         disdif4 => 0,
         disdif5 => 0,
         disdif6 => 0,
         disdif7 => 0,
         disdif8 => 0,
         dob => FIRST_DATE,
         dptcboth => 0,
         dptclum => 0,
         dvil03a => 0,
         dvil04a => 0,
         dvjb12ml => 0,
         dvmardf => 0,
         ed1amt => 0.0,
         ed1borr => 0,
         ed1int => 0,
         ed1monyr => FIRST_DATE,
         ed1pd => 0,
         ed1sum => 0,
         ed2amt => 0.0,
         ed2borr => 0,
         ed2int => 0,
         ed2monyr => FIRST_DATE,
         ed2pd => 0,
         ed2sum => 0,
         edatt => 0,
         edattn1 => 0,
         edattn2 => 0,
         edattn3 => 0,
         edhr => 0,
         edtime => 0,
         edtyp => 0,
         eligadlt => 0,
         eligchld => 0,
         emppay1 => 0,
         emppay2 => 0,
         emppay3 => 0,
         empstat => 0,
         endyr => 0,
         epcur => 0,
         es2000 => 0,
         ethgrp => 0,
         everwrk => 0,
         exthbct1 => 0,
         exthbct2 => 0,
         exthbct3 => 0,
         eyetest => 0,
         follow => 0,
         fted => 0,
         ftwk => 0,
         future => 0,
         govpis => 0,
         govpjsa => 0,
         x_grant => 0,
         grtamt1 => 0.0,
         grtamt2 => 0.0,
         grtdir1 => 0.0,
         grtdir2 => 0.0,
         grtnum => 0,
         grtsce1 => 0,
         grtsce2 => 0,
         grtval1 => 0.0,
         grtval2 => 0.0,
         gta => 0,
         hbothamt => 0.0,
         hbothbu => 0,
         hbothpd => 0,
         hbothwk => 0,
         hbotwait => 0,
         health => 0,
         hholder => 0,
         hosp => 0,
         hprob => 0,
         hrpid => 0,
         incdur => 0,
         injlong => 0,
         injwk => 0,
         invests => 0,
         iout => 0,
         isa1type => 0,
         isa2type => 0,
         isa3type => 0,
         jobaway => 0,
         lareg => 0,
         likewk => 0,
         lktime => 0,
         ln1rpint => 0,
         ln2rpint => 0,
         loan => 0,
         loannum => 0,
         look => 0,
         lookwk => 0,
         lstwrk1 => 0,
         lstwrk2 => 0,
         lstyr => 0,
         mntamt1 => 0.0,
         mntamt2 => 0.0,
         mntct => 0,
         mntfor1 => 0,
         mntfor2 => 0,
         mntgov1 => 0,
         mntgov2 => 0,
         mntpay => 0,
         mntpd1 => 0,
         mntpd2 => 0,
         mntrec => 0,
         mnttota1 => 0,
         mnttota2 => 0,
         mntus1 => 0,
         mntus2 => 0,
         mntusam1 => 0.0,
         mntusam2 => 0.0,
         mntuspd1 => 0,
         mntuspd2 => 0,
         ms => 0,
         natid1 => 0,
         natid2 => 0,
         natid3 => 0,
         natid4 => 0,
         natid5 => 0,
         natid6 => 0,
         ndeal => 0,
         newdtype => 0,
         nhs1 => 0,
         nhs2 => 0,
         nhs3 => 0,
         niamt => 0.0,
         niethgrp => 0,
         niexthbb => 0,
         ninatid1 => 0,
         ninatid2 => 0,
         ninatid3 => 0,
         ninatid4 => 0,
         ninatid5 => 0,
         ninatid6 => 0,
         ninatid7 => 0,
         ninatid8 => 0,
         nipd => 0,
         nireg => 0,
         nirel => 0,
         nitrain => 0,
         nlper => 0,
         nolk1 => 0,
         nolk2 => 0,
         nolk3 => 0,
         nolook => 0,
         nowant => 0,
         nssec => 0.0,
         ntcapp => 0,
         ntcdat => 0,
         ntcinc => 0.0,
         ntcorig1 => 0,
         ntcorig2 => 0,
         ntcorig3 => 0,
         ntcorig4 => 0,
         ntcorig5 => 0,
         numjob => 0,
         numjob2 => 0,
         oddjob => 0,
         oldstud => 0,
         otabspar => 0,
         otamt => 0.0,
         otapamt => 0.0,
         otappd => 0,
         othtax => 0,
         otinva => 0,
         pareamt => 0.0,
         parepd => 0,
         penlump => 0,
         ppnumc => 0,
         prit => 0,
         prscrpt => 0,
         ptwk => 0,
         r01 => 0,
         r02 => 0,
         r03 => 0,
         r04 => 0,
         r05 => 0,
         r06 => 0,
         r07 => 0,
         r08 => 0,
         r09 => 0,
         r10 => 0,
         r11 => 0,
         r12 => 0,
         r13 => 0,
         r14 => 0,
         redamt => 0.0,
         redany => 0,
         rentprof => 0,
         retire => 0,
         retire1 => 0,
         retreas => 0,
         royal1 => 0,
         royal2 => 0,
         royal3 => 0,
         royal4 => 0,
         royyr1 => 0.0,
         royyr2 => 0.0,
         royyr3 => 0.0,
         royyr4 => 0.0,
         rstrct => 0,
         sex => 0,
         sflntyp1 => 0,
         sflntyp2 => 0,
         sftype1 => 0,
         sftype2 => 0,
         sic => 0,
         slrepamt => 0.0,
         slrepay => 0,
         slreppd => 0,
         soc2000 => 0,
         spcreg1 => 0,
         spcreg2 => 0,
         spcreg3 => 0,
         specs => 0,
         spout => 0,
         srentamt => 0.0,
         srentpd => 0,
         start => 0,
         startyr => 0,
         taxcred1 => 0,
         taxcred2 => 0,
         taxcred3 => 0,
         taxcred4 => 0,
         taxcred5 => 0,
         taxfut => 0,
         tdaywrk => 0,
         tea => 0,
         topupl => 0,
         totint => 0.0,
         train => 0,
         trav => 0,
         tuborr => 0,
         typeed => 0,
         unpaid1 => 0,
         unpaid2 => 0,
         voucher => 0,
         w1 => 0,
         w2 => 0,
         wait => 0,
         war1 => 0,
         war2 => 0,
         wftcboth => 0,
         wftclum => 0,
         whoresp => 0,
         whosectb => 0,
         whyfrde1 => 0,
         whyfrde2 => 0,
         whyfrde3 => 0,
         whyfrde4 => 0,
         whyfrde5 => 0,
         whyfrde6 => 0,
         whyfrey1 => 0,
         whyfrey2 => 0,
         whyfrey3 => 0,
         whyfrey4 => 0,
         whyfrey5 => 0,
         whyfrey6 => 0,
         whyfrpr1 => 0,
         whyfrpr2 => 0,
         whyfrpr3 => 0,
         whyfrpr4 => 0,
         whyfrpr5 => 0,
         whyfrpr6 => 0,
         whytrav1 => 0,
         whytrav2 => 0,
         whytrav3 => 0,
         whytrav4 => 0,
         whytrav5 => 0,
         whytrav6 => 0,
         wintfuel => 0,
         wmkit => 0,
         working => 0,
         wpa => 0,
         wpba => 0,
         wtclum1 => 0,
         wtclum2 => 0,
         wtclum3 => 0,
         ystrtwk => 0,
         month => 0,
         able => 0,
         actacci => 0,
         addda => 0,
         basacti => 0,
         bntxcred => 0.0,
         careab => 0,
         careah => 0,
         carecb => 0,
         carech => 0,
         carecl => 0,
         carefl => 0,
         carefr => 0,
         careot => 0,
         carere => 0,
         curacti => 0,
         empoccp => 0.0,
         empstatb => 0,
         empstatc => 0,
         empstati => 0,
         fsbndcti => 0,
         fwmlkval => 0.0,
         gebacti => 0,
         giltcti => 0,
         gross2 => 0,
         gross3 => 0,
         hbsupran => 0.0,
         hdage => 0,
         hdben => 0,
         hdindinc => 0,
         hourab => 0,
         hourah => 0,
         hourcare => 0.0,
         hourcb => 0,
         hourch => 0,
         hourcl => 0,
         hourfr => 0,
         hourot => 0,
         hourre => 0,
         hourtot => 0,
         hperson => 0,
         iagegr2 => 0,
         iagegrp => 0,
         incseo2 => 0.0,
         indinc => 0,
         indisben => 0,
         inearns => 0.0,
         ininv => 0.0,
         inirben => 0,
         innirben => 0,
         inothben => 0,
         inpeninc => 0.0,
         inrinc => 0.0,
         inrpinc => 0.0,
         intvlic => 0.0,
         intxcred => 0.0,
         isacti => 0,
         marital => 0,
         netocpen => 0.0,
         nincseo2 => 0.0,
         nindinc => 0,
         ninearns => 0,
         nininv => 0,
         ninpenin => 0,
         ninsein2 => 0.0,
         nsbocti => 0,
         occupnum => 0,
         otbscti => 0,
         pepscti => 0,
         poaccti => 0,
         prbocti => 0,
         relhrp => 0,
         sayecti => 0,
         sclbcti => 0,
         seincam2 => 0.0,
         smpadj => 0.0,
         sscti => 0,
         sspadj => 0.0,
         stshcti => 0,
         superan => 0.0,
         taxpayer => 0,
         tesscti => 0,
         totgrant => 0.0,
         tothours => 0.0,
         totoccp => 0.0,
         ttwcosts => 0.0,
         untrcti => 0,
         uperson => 0,
         widoccp => 0.0,
         accountq => 0,
         ben5q7 => 0,
         ben5q8 => 0,
         ben5q9 => 0,
         ddatre => 0,
         disdif9 => 0,
         fare => 0.0,
         nittwmod => 0,
         oneway => 0,
         pssamt => 0.0,
         pssdate => 0,
         ttwcode1 => 0,
         ttwcode2 => 0,
         ttwcode3 => 0,
         ttwcost => 0.0,
         ttwfar => 0,
         ttwfrq => 0.0,
         ttwmod => 0,
         ttwpay => 0,
         ttwpss => 0,
         ttwrec => 0.0,
         chbflg => 0,
         crunaci => 0,
         enomorti => 0,
         sapadj => 0.0,
         sppadj => 0.0,
         ttwmode => 0,
         ddatrep => 0,
         defrpen => 0,
         disdifp => 0,
         followup => 0,
         practice => 0,
         sfrpis => 0,
         sfrpjsa => 0,
         age80 => 0,
         ethgr2 => 0,
         pocardi => 0,
         chkdpn => 0,
         chknop => 0,
         consent => 0,
         dvpens => 0,
         eligschm => 0,
         emparr => 0,
         emppen => 0,
         empschm => 0,
         lnkref1 => 0,
         lnkref2 => 0,
         lnkref21 => 0,
         lnkref22 => 0,
         lnkref23 => 0,
         lnkref24 => 0,
         lnkref25 => 0,
         lnkref3 => 0,
         lnkref4 => 0,
         lnkref5 => 0,
         memschm => 0,
         pconsent => 0,
         perspen1 => 0,
         perspen2 => 0,
         privpen => 0,
         schchk => 0,
         spnumc => 0,
         stakep => 0,
         trainee => 0,
         lnkdwp => 0,
         lnkons => 0,
         lnkref6 => 0,
         lnkref7 => 0,
         lnkref8 => 0,
         lnkref9 => 0,
         tcever1 => 0,
         tcever2 => 0,
         tcrepay1 => 0,
         tcrepay2 => 0,
         tcrepay3 => 0,
         tcrepay4 => 0,
         tcrepay5 => 0,
         tcrepay6 => 0,
         tcthsyr1 => 0,
         tcthsyr2 => 0,
         currjobm => 0,
         prevjobm => 0,
         b3qfut7 => 0,
         ben3q7 => 0,
         camemt => 0,
         cameyr => 0,
         cameyr2 => 0,
         contuk => 0,
         corign => 0,
         ddaprog => 0,
         hbolng => 0,
         hi1qual1 => 0,
         hi1qual2 => 0,
         hi1qual3 => 0,
         hi1qual4 => 0,
         hi1qual5 => 0,
         hi1qual6 => 0,
         hi2qual => 0,
         hlpgvn01 => 0,
         hlpgvn02 => 0,
         hlpgvn03 => 0,
         hlpgvn04 => 0,
         hlpgvn05 => 0,
         hlpgvn06 => 0,
         hlpgvn07 => 0,
         hlpgvn08 => 0,
         hlpgvn09 => 0,
         hlpgvn10 => 0,
         hlpgvn11 => 0,
         hlprec01 => 0,
         hlprec02 => 0,
         hlprec03 => 0,
         hlprec04 => 0,
         hlprec05 => 0,
         hlprec06 => 0,
         hlprec07 => 0,
         hlprec08 => 0,
         hlprec09 => 0,
         hlprec10 => 0,
         hlprec11 => 0,
         issue => 0,
         loangvn1 => 0,
         loangvn2 => 0,
         loangvn3 => 0,
         loanrec1 => 0,
         loanrec2 => 0,
         loanrec3 => 0,
         mntarr1 => 0,
         mntarr2 => 0,
         mntarr3 => 0,
         mntarr4 => 0,
         mntnrp => 0,
         othqual1 => 0,
         othqual2 => 0,
         othqual3 => 0,
         tea9697 => 0,
         heartval => 0.0,
         iagegr3 => 0,
         iagegr4 => 0,
         nirel2 => 0,
         xbonflag => 0,
         alg => 0,
         algamt => 0.0,
         algpd => 0,
         ben4q4 => 0,
         chkctc => 0,
         chkdpco1 => 0,
         chkdpco2 => 0,
         chkdpco3 => 0,
         chkdsco1 => 0,
         chkdsco2 => 0,
         chkdsco3 => 0,
         dv09pens => 0,
         lnkref01 => 0,
         lnkref02 => 0,
         lnkref03 => 0,
         lnkref04 => 0,
         lnkref05 => 0,
         lnkref06 => 0,
         lnkref07 => 0,
         lnkref08 => 0,
         lnkref09 => 0,
         lnkref10 => 0,
         lnkref11 => 0,
         spyrot => 0,
         disdifad => 0,
         gross3_x => 0,
         aliamt => 0.0,
         alimny => 0,
         alipd => 0,
         alius => 0,
         aluamt => 0.0,
         alupd => 0,
         cbaamt => 0,
         hsvper => 0,
         mednum => 0,
         medprpd => 0,
         medprpy => 0,
         penflag => 0,
         ppchk1 => 0,
         ppchk2 => 0,
         ppchk3 => 0,
         ttbprx => 0.0,
         mjobsect => 0,
         etngrp => 0,
         medpay => 0,
         medrep => 0,
         medrpnm => 0,
         nanid1 => 0,
         nanid2 => 0,
         nanid3 => 0,
         nanid4 => 0,
         nanid5 => 0,
         nanid6 => 0,
         nietngrp => 0,
         ninanid1 => 0,
         ninanid2 => 0,
         ninanid3 => 0,
         ninanid4 => 0,
         ninanid5 => 0,
         ninanid6 => 0,
         ninanid7 => 0,
         nirelig => 0,
         pollopin => 0,
         religenw => 0,
         religsc => 0,
         sidqn => 0,
         soc2010 => 0,
         corignan => 0,
         dobmonth => 0,
         dobyear => 0,
         ethgr3 => 0,
         ninanida => 0,
         agehqual => 0,
         bfd => 0,
         bfdamt => 0.0,
         bfdpd => 0,
         bfdval => 0,
         btec => 0,
         btecnow => 0,
         cbaamt2 => 0,
         change => 0,
         citizen => 0,
         citizen2 => 0,
         condit => 0,
         corigoth => 0,
         curqual => 0,
         ddaprog1 => 0,
         ddatre1 => 0,
         ddatrep1 => 0,
         degree => 0,
         degrenow => 0,
         denrec => 0,
         disd01 => 0,
         disd02 => 0,
         disd03 => 0,
         disd04 => 0,
         disd05 => 0,
         disd06 => 0,
         disd07 => 0,
         disd08 => 0,
         disd09 => 0,
         disd10 => 0,
         disdifp1 => 0,
         empcontr => 0,
         ethgrps => 0,
         eualiamt => 0.0,
         eualimny => 0,
         eualipd => 0,
         euetype => 0,
         followsc => 0,
         health1 => 0,
         heathad => 0,
         hi3qual => 0,
         higho => 0,
         highonow => 0,
         jobbyr => 0,
         limitl => 0,
         lktrain => 0,
         lkwork => 0,
         medrec => 0,
         nvqlenow => 0,
         nvqlev => 0,
         othpass => 0,
         ppper => 0,
         proptax => 0.0,
         reasden => 0,
         reasmed => 0,
         reasnhs => 0,
         reason => 0,
         rednet => 0,
         redtax => 0.0,
         rsa => 0,
         rsanow => 0,
         samesit => 0,
         scotvec => 0,
         sctvnow => 0,
         sdemp01 => 0,
         sdemp02 => 0,
         sdemp03 => 0,
         sdemp04 => 0,
         sdemp05 => 0,
         sdemp06 => 0,
         sdemp07 => 0,
         sdemp08 => 0,
         sdemp09 => 0,
         sdemp10 => 0,
         sdemp11 => 0,
         sdemp12 => 0,
         selfdemp => 0,
         tempjob => 0,
         agehq80 => 0,
         disacta1 => 0,
         discora1 => 0,
         gross4 => 0,
         ninrinc => 0,
         typeed2 => 0,
         w45 => 0,
         accmsat => 0,
         c2orign => 0,
         calm => 0,
         cbchk => 0,
         claifut1 => 0,
         claifut2 => 0,
         claifut3 => 0,
         claifut4 => 0,
         claifut5 => 0,
         claifut6 => 0,
         claifut7 => 0,
         claifut8 => 0,
         commusat => 0,
         coptrust => 0,
         depress => 0,
         disben1 => 0,
         disben2 => 0,
         disben3 => 0,
         disben4 => 0,
         disben5 => 0,
         disben6 => 0,
         discuss => 0,
         dla1 => 0,
         dla2 => 0,
         dls => 0,
         dlsamt => 0.0,
         dlspd => 0,
         dlsval => 0,
         down => 0,
         envirsat => 0,
         gpispc => 0,
         gpjsaesa => 0,
         happy => 0,
         help => 0,
         iclaim1 => 0,
         iclaim2 => 0,
         iclaim3 => 0,
         iclaim4 => 0,
         iclaim5 => 0,
         iclaim6 => 0,
         iclaim7 => 0,
         iclaim8 => 0,
         iclaim9 => 0,
         jobsat => 0,
         kidben1 => 0,
         kidben2 => 0,
         kidben3 => 0,
         legltrus => 0,
         lifesat => 0,
         meaning => 0,
         moneysat => 0,
         nervous => 0,
         ni2train => 0,
         othben1 => 0,
         othben2 => 0,
         othben3 => 0,
         othben4 => 0,
         othben5 => 0,
         othben6 => 0,
         othtrust => 0,
         penben1 => 0,
         penben2 => 0,
         penben3 => 0,
         penben4 => 0,
         penben5 => 0,
         pip1 => 0,
         pip2 => 0,
         polttrus => 0,
         recsat => 0,
         relasat => 0,
         safe => 0,
         socfund1 => 0,
         socfund2 => 0,
         socfund3 => 0,
         socfund4 => 0,
         srispc => 0,
         srjsaesa => 0,
         timesat => 0,
         train2 => 0,
         trnallow => 0,
         wageben1 => 0,
         wageben2 => 0,
         wageben3 => 0,
         wageben4 => 0,
         wageben5 => 0,
         wageben6 => 0,
         wageben7 => 0,
         wageben8 => 0,
         ninnirbn => 0,
         ninothbn => 0,
         anxious => 0,
         candgnow => 0,
         curothf => 0,
         curothp => 0,
         curothwv => 0,
         dvhiqual => 0,
         gnvqnow => 0,
         gpuc => 0,
         happywb => 0,
         hi1qual7 => 0,
         hi1qual8 => 0,
         mntarr5 => 0,
         mntnoch1 => 0,
         mntnoch2 => 0,
         mntnoch3 => 0,
         mntnoch4 => 0,
         mntnoch5 => 0,
         mntpro1 => 0,
         mntpro2 => 0,
         mntpro3 => 0,
         mnttim1 => 0,
         mnttim2 => 0,
         mnttim3 => 0,
         mntwrk1 => 0,
         mntwrk2 => 0,
         mntwrk3 => 0,
         mntwrk4 => 0,
         mntwrk5 => 0,
         ndeplnow => 0,
         oqualc1 => 0,
         oqualc2 => 0,
         oqualc3 => 0,
         sruc => 0,
         webacnow => 0,
         indeth => 0,
         euactive => 0,
         euactno => 0,
         euartact => 0,
         euaskhlp => 0,
         eucinema => 0,
         eucultur => 0,
         euinvol => 0,
         eulivpe => 0,
         eumtfam => 0,
         eumtfrnd => 0,
         eusocnet => 0,
         eusport => 0,
         eutkfam => 0,
         eutkfrnd => 0,
         eutkmat => 0,
         euvol => 0,
         natscot => 0,
         ntsctnow => 0,
         penwel1 => 0,
         penwel2 => 0,
         penwel3 => 0,
         penwel4 => 0,
         penwel5 => 0,
         penwel6 => 0,
         skiwknow => 0,
         skiwrk => 0,
         slos => 0,
         yjblev => 0
   );
   --
   -- simple print routine for Adult : adult
   --
   function To_String( rec : Adult ) return String;

   --
   -- record modelling Benunit : benunit
   --
   type Benunit is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      benunit : Integer := 0;
      incchnge : Integer := 0;
      inchilow : Integer := 0;
      kidinc : Integer := 0;
      nhhchild : Integer := 0;
      totsav : Integer := 0;
      month : Integer := 0;
      actaccb : Integer := 0;
      adddabu : Integer := 0;
      adultb : Integer := 0;
      basactb : Integer := 0;
      boarder : Amount := 0.0;
      bpeninc : Amount := 0.0;
      bseinc : Amount := 0.0;
      buagegr2 : Integer := 0;
      buagegrp : Integer := 0;
      budisben : Integer := 0;
      buearns : Amount := 0.0;
      buethgr2 : Integer := 0;
      buethgrp : Integer := 0;
      buinc : Integer := 0;
      buinv : Amount := 0.0;
      buirben : Integer := 0;
      bukids : Integer := 0;
      bunirben : Integer := 0;
      buothben : Integer := 0;
      burent : Integer := 0;
      burinc : Amount := 0.0;
      burpinc : Amount := 0.0;
      butvlic : Amount := 0.0;
      butxcred : Amount := 0.0;
      chddabu : Integer := 0;
      curactb : Integer := 0;
      depchldb : Integer := 0;
      depdeds : Integer := 0;
      disindhb : Integer := 0;
      ecotypbu : Integer := 0;
      ecstatbu : Integer := 0;
      famthbai : Integer := 0;
      famtypbs : Integer := 0;
      famtypbu : Integer := 0;
      famtype : Integer := 0;
      fsbndctb : Integer := 0;
      fsmbu : Amount := 0.0;
      fsmlkbu : Amount := 0.0;
      fwmlkbu : Amount := 0.0;
      gebactb : Integer := 0;
      giltctb : Integer := 0;
      gross2 : Integer := 0;
      gross3 : Integer := 0;
      hbindbu : Integer := 0;
      isactb : Integer := 0;
      kid04 : Integer := 0;
      kid1115 : Integer := 0;
      kid1618 : Integer := 0;
      kid510 : Integer := 0;
      kidsbu0 : Integer := 0;
      kidsbu1 : Integer := 0;
      kidsbu10 : Integer := 0;
      kidsbu11 : Integer := 0;
      kidsbu12 : Integer := 0;
      kidsbu13 : Integer := 0;
      kidsbu14 : Integer := 0;
      kidsbu15 : Integer := 0;
      kidsbu16 : Integer := 0;
      kidsbu17 : Integer := 0;
      kidsbu18 : Integer := 0;
      kidsbu2 : Integer := 0;
      kidsbu3 : Integer := 0;
      kidsbu4 : Integer := 0;
      kidsbu5 : Integer := 0;
      kidsbu6 : Integer := 0;
      kidsbu7 : Integer := 0;
      kidsbu8 : Integer := 0;
      kidsbu9 : Integer := 0;
      lastwork : Integer := 0;
      lodger : Amount := 0.0;
      nsboctb : Integer := 0;
      otbsctb : Integer := 0;
      pepsctb : Integer := 0;
      poacctb : Integer := 0;
      prboctb : Integer := 0;
      sayectb : Integer := 0;
      sclbctb : Integer := 0;
      ssctb : Integer := 0;
      stshctb : Integer := 0;
      subltamt : Amount := 0.0;
      tessctb : Integer := 0;
      totcapbu : Amount := 0.0;
      totsavbu : Integer := 0;
      tuburent : Amount := 0.0;
      untrctb : Integer := 0;
      youngch : Integer := 0;
      adddec : Integer := 0;
      addeples : Integer := 0;
      addhol : Integer := 0;
      addins : Integer := 0;
      addmel : Integer := 0;
      addmon : Integer := 0;
      addshoe : Integer := 0;
      adepfur : Integer := 0;
      af1 : Integer := 0;
      afdep2 : Integer := 0;
      cdelply : Integer := 0;
      cdepbed : Integer := 0;
      cdepcel : Integer := 0;
      cdepeqp : Integer := 0;
      cdephol : Integer := 0;
      cdeples : Integer := 0;
      cdepsum : Integer := 0;
      cdeptea : Integer := 0;
      cdeptrp : Integer := 0;
      cplay : Integer := 0;
      debt1 : Integer := 0;
      debt2 : Integer := 0;
      debt3 : Integer := 0;
      debt4 : Integer := 0;
      debt5 : Integer := 0;
      debt6 : Integer := 0;
      debt7 : Integer := 0;
      debt8 : Integer := 0;
      debt9 : Integer := 0;
      houshe1 : Integer := 0;
      incold : Integer := 0;
      crunacb : Integer := 0;
      enomortb : Integer := 0;
      hbindbu2 : Integer := 0;
      pocardb : Integer := 0;
      kid1619 : Integer := 0;
      totcapb2 : Amount := 0.0;
      billnt1 : Integer := 0;
      billnt2 : Integer := 0;
      billnt3 : Integer := 0;
      billnt4 : Integer := 0;
      billnt5 : Integer := 0;
      billnt6 : Integer := 0;
      billnt7 : Integer := 0;
      billnt8 : Integer := 0;
      coatnt1 : Integer := 0;
      coatnt2 : Integer := 0;
      coatnt3 : Integer := 0;
      coatnt4 : Integer := 0;
      coatnt5 : Integer := 0;
      coatnt6 : Integer := 0;
      coatnt7 : Integer := 0;
      coatnt8 : Integer := 0;
      cooknt1 : Integer := 0;
      cooknt2 : Integer := 0;
      cooknt3 : Integer := 0;
      cooknt4 : Integer := 0;
      cooknt5 : Integer := 0;
      cooknt6 : Integer := 0;
      cooknt7 : Integer := 0;
      cooknt8 : Integer := 0;
      dampnt1 : Integer := 0;
      dampnt2 : Integer := 0;
      dampnt3 : Integer := 0;
      dampnt4 : Integer := 0;
      dampnt5 : Integer := 0;
      dampnt6 : Integer := 0;
      dampnt7 : Integer := 0;
      dampnt8 : Integer := 0;
      frndnt1 : Integer := 0;
      frndnt2 : Integer := 0;
      frndnt3 : Integer := 0;
      frndnt4 : Integer := 0;
      frndnt5 : Integer := 0;
      frndnt6 : Integer := 0;
      frndnt7 : Integer := 0;
      frndnt8 : Integer := 0;
      hairnt1 : Integer := 0;
      hairnt2 : Integer := 0;
      hairnt3 : Integer := 0;
      hairnt4 : Integer := 0;
      hairnt5 : Integer := 0;
      hairnt6 : Integer := 0;
      hairnt7 : Integer := 0;
      hairnt8 : Integer := 0;
      heatnt1 : Integer := 0;
      heatnt2 : Integer := 0;
      heatnt3 : Integer := 0;
      heatnt4 : Integer := 0;
      heatnt5 : Integer := 0;
      heatnt6 : Integer := 0;
      heatnt7 : Integer := 0;
      heatnt8 : Integer := 0;
      holnt1 : Integer := 0;
      holnt2 : Integer := 0;
      holnt3 : Integer := 0;
      holnt4 : Integer := 0;
      holnt5 : Integer := 0;
      holnt6 : Integer := 0;
      holnt7 : Integer := 0;
      holnt8 : Integer := 0;
      homent1 : Integer := 0;
      homent2 : Integer := 0;
      homent3 : Integer := 0;
      homent4 : Integer := 0;
      homent5 : Integer := 0;
      homent6 : Integer := 0;
      homent7 : Integer := 0;
      homent8 : Integer := 0;
      issue : Integer := 0;
      mealnt1 : Integer := 0;
      mealnt2 : Integer := 0;
      mealnt3 : Integer := 0;
      mealnt4 : Integer := 0;
      mealnt5 : Integer := 0;
      mealnt6 : Integer := 0;
      mealnt7 : Integer := 0;
      mealnt8 : Integer := 0;
      oabill : Integer := 0;
      oacoat : Integer := 0;
      oacook : Integer := 0;
      oadamp : Integer := 0;
      oaexpns : Integer := 0;
      oafrnd : Integer := 0;
      oahair : Integer := 0;
      oaheat : Integer := 0;
      oahol : Integer := 0;
      oahome : Integer := 0;
      oahowpy1 : Integer := 0;
      oahowpy2 : Integer := 0;
      oahowpy3 : Integer := 0;
      oahowpy4 : Integer := 0;
      oahowpy5 : Integer := 0;
      oahowpy6 : Integer := 0;
      oameal : Integer := 0;
      oaout : Integer := 0;
      oaphon : Integer := 0;
      oataxi : Integer := 0;
      oawarm : Integer := 0;
      outnt1 : Integer := 0;
      outnt2 : Integer := 0;
      outnt3 : Integer := 0;
      outnt4 : Integer := 0;
      outnt5 : Integer := 0;
      outnt6 : Integer := 0;
      outnt7 : Integer := 0;
      outnt8 : Integer := 0;
      phonnt1 : Integer := 0;
      phonnt2 : Integer := 0;
      phonnt3 : Integer := 0;
      phonnt4 : Integer := 0;
      phonnt5 : Integer := 0;
      phonnt6 : Integer := 0;
      phonnt7 : Integer := 0;
      phonnt8 : Integer := 0;
      taxint1 : Integer := 0;
      taxint2 : Integer := 0;
      taxint3 : Integer := 0;
      taxint4 : Integer := 0;
      taxint5 : Integer := 0;
      taxint6 : Integer := 0;
      taxint7 : Integer := 0;
      taxint8 : Integer := 0;
      warmnt1 : Integer := 0;
      warmnt2 : Integer := 0;
      warmnt3 : Integer := 0;
      warmnt4 : Integer := 0;
      warmnt5 : Integer := 0;
      warmnt6 : Integer := 0;
      warmnt7 : Integer := 0;
      warmnt8 : Integer := 0;
      buagegr3 : Integer := 0;
      buagegr4 : Integer := 0;
      heartbu : Amount := 0.0;
      newfambu : Integer := 0;
      billnt9 : Integer := 0;
      cbaamt1 : Integer := 0;
      cbaamt2 : Integer := 0;
      coatnt9 : Integer := 0;
      cooknt9 : Integer := 0;
      dampnt9 : Integer := 0;
      frndnt9 : Integer := 0;
      hairnt9 : Integer := 0;
      hbolng : Integer := 0;
      hbothamt : Amount := 0.0;
      hbothbu : Integer := 0;
      hbothmn : Integer := 0;
      hbothpd : Integer := 0;
      hbothwk : Integer := 0;
      hbothyr : Integer := 0;
      hbotwait : Integer := 0;
      heatnt9 : Integer := 0;
      helpgv01 : Integer := 0;
      helpgv02 : Integer := 0;
      helpgv03 : Integer := 0;
      helpgv04 : Integer := 0;
      helpgv05 : Integer := 0;
      helpgv06 : Integer := 0;
      helpgv07 : Integer := 0;
      helpgv08 : Integer := 0;
      helpgv09 : Integer := 0;
      helpgv10 : Integer := 0;
      helpgv11 : Integer := 0;
      helprc01 : Integer := 0;
      helprc02 : Integer := 0;
      helprc03 : Integer := 0;
      helprc04 : Integer := 0;
      helprc05 : Integer := 0;
      helprc06 : Integer := 0;
      helprc07 : Integer := 0;
      helprc08 : Integer := 0;
      helprc09 : Integer := 0;
      helprc10 : Integer := 0;
      helprc11 : Integer := 0;
      holnt9 : Integer := 0;
      homent9 : Integer := 0;
      loangvn1 : Integer := 0;
      loangvn2 : Integer := 0;
      loangvn3 : Integer := 0;
      loanrec1 : Integer := 0;
      loanrec2 : Integer := 0;
      loanrec3 : Integer := 0;
      mealnt9 : Integer := 0;
      outnt9 : Integer := 0;
      phonnt9 : Integer := 0;
      taxint9 : Integer := 0;
      warmnt9 : Integer := 0;
      ecostabu : Integer := 0;
      famtypb2 : Integer := 0;
      gross3_x : Integer := 0;
      newfamb2 : Integer := 0;
      oabilimp : Integer := 0;
      oacoaimp : Integer := 0;
      oacooimp : Integer := 0;
      oadamimp : Integer := 0;
      oaexpimp : Integer := 0;
      oafrnimp : Integer := 0;
      oahaiimp : Integer := 0;
      oaheaimp : Integer := 0;
      oaholimp : Integer := 0;
      oahomimp : Integer := 0;
      oameaimp : Integer := 0;
      oaoutimp : Integer := 0;
      oaphoimp : Integer := 0;
      oataximp : Integer := 0;
      oawarimp : Integer := 0;
      totcapb3 : Amount := 0.0;
      adbtbl : Integer := 0;
      cdepact : Integer := 0;
      cdepveg : Integer := 0;
      cdpcoat : Integer := 0;
      oapre : Integer := 0;
      buethgr3 : Integer := 0;
      fsbbu : Amount := 0.0;
      addholr : Integer := 0;
      computer : Integer := 0;
      compuwhy : Integer := 0;
      crime : Integer := 0;
      damp : Integer := 0;
      dark : Integer := 0;
      debt01 : Integer := 0;
      debt02 : Integer := 0;
      debt03 : Integer := 0;
      debt04 : Integer := 0;
      debt05 : Integer := 0;
      debt06 : Integer := 0;
      debt07 : Integer := 0;
      debt08 : Integer := 0;
      debt09 : Integer := 0;
      debt10 : Integer := 0;
      debt11 : Integer := 0;
      debt12 : Integer := 0;
      debtar01 : Integer := 0;
      debtar02 : Integer := 0;
      debtar03 : Integer := 0;
      debtar04 : Integer := 0;
      debtar05 : Integer := 0;
      debtar06 : Integer := 0;
      debtar07 : Integer := 0;
      debtar08 : Integer := 0;
      debtar09 : Integer := 0;
      debtar10 : Integer := 0;
      debtar11 : Integer := 0;
      debtar12 : Integer := 0;
      debtfre1 : Integer := 0;
      debtfre2 : Integer := 0;
      debtfre3 : Integer := 0;
      endsmeet : Integer := 0;
      eucar : Integer := 0;
      eucarwhy : Integer := 0;
      euexpns : Integer := 0;
      eumeal : Integer := 0;
      eurepay : Integer := 0;
      euteleph : Integer := 0;
      eutelwhy : Integer := 0;
      expnsoa : Integer := 0;
      houshew : Integer := 0;
      noise : Integer := 0;
      oacareu1 : Integer := 0;
      oacareu2 : Integer := 0;
      oacareu3 : Integer := 0;
      oacareu4 : Integer := 0;
      oacareu5 : Integer := 0;
      oacareu6 : Integer := 0;
      oacareu7 : Integer := 0;
      oacareu8 : Integer := 0;
      oataxieu : Integer := 0;
      oatelep1 : Integer := 0;
      oatelep2 : Integer := 0;
      oatelep3 : Integer := 0;
      oatelep4 : Integer := 0;
      oatelep5 : Integer := 0;
      oatelep6 : Integer := 0;
      oatelep7 : Integer := 0;
      oatelep8 : Integer := 0;
      oateleph : Integer := 0;
      outpay : Integer := 0;
      outpyamt : Amount := 0.0;
      pollute : Integer := 0;
      regpamt : Amount := 0.0;
      regularp : Integer := 0;
      repaybur : Integer := 0;
      washmach : Integer := 0;
      washwhy : Integer := 0;
      whodepq : Integer := 0;
      discbua1 : Integer := 0;
      discbuc1 : Integer := 0;
      diswbua1 : Integer := 0;
      diswbuc1 : Integer := 0;
      fsfvbu : Amount := 0.0;
      gross4 : Integer := 0;
      adles : Integer := 0;
      adlesnt1 : Integer := 0;
      adlesnt2 : Integer := 0;
      adlesnt3 : Integer := 0;
      adlesnt4 : Integer := 0;
      adlesnt5 : Integer := 0;
      adlesnt6 : Integer := 0;
      adlesnt7 : Integer := 0;
      adlesnt8 : Integer := 0;
      adlesoa : Integer := 0;
      clothes : Integer := 0;
      clothnt1 : Integer := 0;
      clothnt2 : Integer := 0;
      clothnt3 : Integer := 0;
      clothnt4 : Integer := 0;
      clothnt5 : Integer := 0;
      clothnt6 : Integer := 0;
      clothnt7 : Integer := 0;
      clothnt8 : Integer := 0;
      clothsoa : Integer := 0;
      furnt1 : Integer := 0;
      furnt2 : Integer := 0;
      furnt3 : Integer := 0;
      furnt4 : Integer := 0;
      furnt5 : Integer := 0;
      furnt6 : Integer := 0;
      furnt7 : Integer := 0;
      furnt8 : Integer := 0;
      intntnt1 : Integer := 0;
      intntnt2 : Integer := 0;
      intntnt3 : Integer := 0;
      intntnt4 : Integer := 0;
      intntnt5 : Integer := 0;
      intntnt6 : Integer := 0;
      intntnt7 : Integer := 0;
      intntnt8 : Integer := 0;
      intrnet : Integer := 0;
      meal : Integer := 0;
      oadep2 : Integer := 0;
      oadp2nt1 : Integer := 0;
      oadp2nt2 : Integer := 0;
      oadp2nt3 : Integer := 0;
      oadp2nt4 : Integer := 0;
      oadp2nt5 : Integer := 0;
      oadp2nt6 : Integer := 0;
      oadp2nt7 : Integer := 0;
      oadp2nt8 : Integer := 0;
      oafur : Integer := 0;
      oaintern : Integer := 0;
      shoe : Integer := 0;
      shoent1 : Integer := 0;
      shoent2 : Integer := 0;
      shoent3 : Integer := 0;
      shoent4 : Integer := 0;
      shoent5 : Integer := 0;
      shoent6 : Integer := 0;
      shoent7 : Integer := 0;
      shoent8 : Integer := 0;
      shoeoa : Integer := 0;
      nbunirbn : Integer := 0;
      nbuothbn : Integer := 0;
      debt13 : Integer := 0;
      debtar13 : Integer := 0;
      euchbook : Integer := 0;
      euchclth : Integer := 0;
      euchgame : Integer := 0;
      euchmeat : Integer := 0;
      euchshoe : Integer := 0;
      eupbtran : Integer := 0;
      eupbtrn1 : Integer := 0;
      eupbtrn2 : Integer := 0;
      eupbtrn3 : Integer := 0;
      eupbtrn4 : Integer := 0;
      eupbtrn5 : Integer := 0;
      euroast : Integer := 0;
      eusmeal : Integer := 0;
      eustudy : Integer := 0;
      bueth : Integer := 0;
      oaeusmea : Integer := 0;
      oaholb : Integer := 0;
      oaroast : Integer := 0;
      ecostab2 : Integer := 0;
   end record;
   --
   -- container for Benunit : benunit
   --
   package Benunit_List_Package is new Ada.Containers.Vectors
      (Element_Type => Benunit,
      Index_Type => Positive );
   subtype Benunit_List is Benunit_List_Package.Vector;
   --
   -- default value for Benunit : benunit
   --
   Null_Benunit : constant Benunit := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         benunit => 0,
         incchnge => 0,
         inchilow => 0,
         kidinc => 0,
         nhhchild => 0,
         totsav => 0,
         month => 0,
         actaccb => 0,
         adddabu => 0,
         adultb => 0,
         basactb => 0,
         boarder => 0.0,
         bpeninc => 0.0,
         bseinc => 0.0,
         buagegr2 => 0,
         buagegrp => 0,
         budisben => 0,
         buearns => 0.0,
         buethgr2 => 0,
         buethgrp => 0,
         buinc => 0,
         buinv => 0.0,
         buirben => 0,
         bukids => 0,
         bunirben => 0,
         buothben => 0,
         burent => 0,
         burinc => 0.0,
         burpinc => 0.0,
         butvlic => 0.0,
         butxcred => 0.0,
         chddabu => 0,
         curactb => 0,
         depchldb => 0,
         depdeds => 0,
         disindhb => 0,
         ecotypbu => 0,
         ecstatbu => 0,
         famthbai => 0,
         famtypbs => 0,
         famtypbu => 0,
         famtype => 0,
         fsbndctb => 0,
         fsmbu => 0.0,
         fsmlkbu => 0.0,
         fwmlkbu => 0.0,
         gebactb => 0,
         giltctb => 0,
         gross2 => 0,
         gross3 => 0,
         hbindbu => 0,
         isactb => 0,
         kid04 => 0,
         kid1115 => 0,
         kid1618 => 0,
         kid510 => 0,
         kidsbu0 => 0,
         kidsbu1 => 0,
         kidsbu10 => 0,
         kidsbu11 => 0,
         kidsbu12 => 0,
         kidsbu13 => 0,
         kidsbu14 => 0,
         kidsbu15 => 0,
         kidsbu16 => 0,
         kidsbu17 => 0,
         kidsbu18 => 0,
         kidsbu2 => 0,
         kidsbu3 => 0,
         kidsbu4 => 0,
         kidsbu5 => 0,
         kidsbu6 => 0,
         kidsbu7 => 0,
         kidsbu8 => 0,
         kidsbu9 => 0,
         lastwork => 0,
         lodger => 0.0,
         nsboctb => 0,
         otbsctb => 0,
         pepsctb => 0,
         poacctb => 0,
         prboctb => 0,
         sayectb => 0,
         sclbctb => 0,
         ssctb => 0,
         stshctb => 0,
         subltamt => 0.0,
         tessctb => 0,
         totcapbu => 0.0,
         totsavbu => 0,
         tuburent => 0.0,
         untrctb => 0,
         youngch => 0,
         adddec => 0,
         addeples => 0,
         addhol => 0,
         addins => 0,
         addmel => 0,
         addmon => 0,
         addshoe => 0,
         adepfur => 0,
         af1 => 0,
         afdep2 => 0,
         cdelply => 0,
         cdepbed => 0,
         cdepcel => 0,
         cdepeqp => 0,
         cdephol => 0,
         cdeples => 0,
         cdepsum => 0,
         cdeptea => 0,
         cdeptrp => 0,
         cplay => 0,
         debt1 => 0,
         debt2 => 0,
         debt3 => 0,
         debt4 => 0,
         debt5 => 0,
         debt6 => 0,
         debt7 => 0,
         debt8 => 0,
         debt9 => 0,
         houshe1 => 0,
         incold => 0,
         crunacb => 0,
         enomortb => 0,
         hbindbu2 => 0,
         pocardb => 0,
         kid1619 => 0,
         totcapb2 => 0.0,
         billnt1 => 0,
         billnt2 => 0,
         billnt3 => 0,
         billnt4 => 0,
         billnt5 => 0,
         billnt6 => 0,
         billnt7 => 0,
         billnt8 => 0,
         coatnt1 => 0,
         coatnt2 => 0,
         coatnt3 => 0,
         coatnt4 => 0,
         coatnt5 => 0,
         coatnt6 => 0,
         coatnt7 => 0,
         coatnt8 => 0,
         cooknt1 => 0,
         cooknt2 => 0,
         cooknt3 => 0,
         cooknt4 => 0,
         cooknt5 => 0,
         cooknt6 => 0,
         cooknt7 => 0,
         cooknt8 => 0,
         dampnt1 => 0,
         dampnt2 => 0,
         dampnt3 => 0,
         dampnt4 => 0,
         dampnt5 => 0,
         dampnt6 => 0,
         dampnt7 => 0,
         dampnt8 => 0,
         frndnt1 => 0,
         frndnt2 => 0,
         frndnt3 => 0,
         frndnt4 => 0,
         frndnt5 => 0,
         frndnt6 => 0,
         frndnt7 => 0,
         frndnt8 => 0,
         hairnt1 => 0,
         hairnt2 => 0,
         hairnt3 => 0,
         hairnt4 => 0,
         hairnt5 => 0,
         hairnt6 => 0,
         hairnt7 => 0,
         hairnt8 => 0,
         heatnt1 => 0,
         heatnt2 => 0,
         heatnt3 => 0,
         heatnt4 => 0,
         heatnt5 => 0,
         heatnt6 => 0,
         heatnt7 => 0,
         heatnt8 => 0,
         holnt1 => 0,
         holnt2 => 0,
         holnt3 => 0,
         holnt4 => 0,
         holnt5 => 0,
         holnt6 => 0,
         holnt7 => 0,
         holnt8 => 0,
         homent1 => 0,
         homent2 => 0,
         homent3 => 0,
         homent4 => 0,
         homent5 => 0,
         homent6 => 0,
         homent7 => 0,
         homent8 => 0,
         issue => 0,
         mealnt1 => 0,
         mealnt2 => 0,
         mealnt3 => 0,
         mealnt4 => 0,
         mealnt5 => 0,
         mealnt6 => 0,
         mealnt7 => 0,
         mealnt8 => 0,
         oabill => 0,
         oacoat => 0,
         oacook => 0,
         oadamp => 0,
         oaexpns => 0,
         oafrnd => 0,
         oahair => 0,
         oaheat => 0,
         oahol => 0,
         oahome => 0,
         oahowpy1 => 0,
         oahowpy2 => 0,
         oahowpy3 => 0,
         oahowpy4 => 0,
         oahowpy5 => 0,
         oahowpy6 => 0,
         oameal => 0,
         oaout => 0,
         oaphon => 0,
         oataxi => 0,
         oawarm => 0,
         outnt1 => 0,
         outnt2 => 0,
         outnt3 => 0,
         outnt4 => 0,
         outnt5 => 0,
         outnt6 => 0,
         outnt7 => 0,
         outnt8 => 0,
         phonnt1 => 0,
         phonnt2 => 0,
         phonnt3 => 0,
         phonnt4 => 0,
         phonnt5 => 0,
         phonnt6 => 0,
         phonnt7 => 0,
         phonnt8 => 0,
         taxint1 => 0,
         taxint2 => 0,
         taxint3 => 0,
         taxint4 => 0,
         taxint5 => 0,
         taxint6 => 0,
         taxint7 => 0,
         taxint8 => 0,
         warmnt1 => 0,
         warmnt2 => 0,
         warmnt3 => 0,
         warmnt4 => 0,
         warmnt5 => 0,
         warmnt6 => 0,
         warmnt7 => 0,
         warmnt8 => 0,
         buagegr3 => 0,
         buagegr4 => 0,
         heartbu => 0.0,
         newfambu => 0,
         billnt9 => 0,
         cbaamt1 => 0,
         cbaamt2 => 0,
         coatnt9 => 0,
         cooknt9 => 0,
         dampnt9 => 0,
         frndnt9 => 0,
         hairnt9 => 0,
         hbolng => 0,
         hbothamt => 0.0,
         hbothbu => 0,
         hbothmn => 0,
         hbothpd => 0,
         hbothwk => 0,
         hbothyr => 0,
         hbotwait => 0,
         heatnt9 => 0,
         helpgv01 => 0,
         helpgv02 => 0,
         helpgv03 => 0,
         helpgv04 => 0,
         helpgv05 => 0,
         helpgv06 => 0,
         helpgv07 => 0,
         helpgv08 => 0,
         helpgv09 => 0,
         helpgv10 => 0,
         helpgv11 => 0,
         helprc01 => 0,
         helprc02 => 0,
         helprc03 => 0,
         helprc04 => 0,
         helprc05 => 0,
         helprc06 => 0,
         helprc07 => 0,
         helprc08 => 0,
         helprc09 => 0,
         helprc10 => 0,
         helprc11 => 0,
         holnt9 => 0,
         homent9 => 0,
         loangvn1 => 0,
         loangvn2 => 0,
         loangvn3 => 0,
         loanrec1 => 0,
         loanrec2 => 0,
         loanrec3 => 0,
         mealnt9 => 0,
         outnt9 => 0,
         phonnt9 => 0,
         taxint9 => 0,
         warmnt9 => 0,
         ecostabu => 0,
         famtypb2 => 0,
         gross3_x => 0,
         newfamb2 => 0,
         oabilimp => 0,
         oacoaimp => 0,
         oacooimp => 0,
         oadamimp => 0,
         oaexpimp => 0,
         oafrnimp => 0,
         oahaiimp => 0,
         oaheaimp => 0,
         oaholimp => 0,
         oahomimp => 0,
         oameaimp => 0,
         oaoutimp => 0,
         oaphoimp => 0,
         oataximp => 0,
         oawarimp => 0,
         totcapb3 => 0.0,
         adbtbl => 0,
         cdepact => 0,
         cdepveg => 0,
         cdpcoat => 0,
         oapre => 0,
         buethgr3 => 0,
         fsbbu => 0.0,
         addholr => 0,
         computer => 0,
         compuwhy => 0,
         crime => 0,
         damp => 0,
         dark => 0,
         debt01 => 0,
         debt02 => 0,
         debt03 => 0,
         debt04 => 0,
         debt05 => 0,
         debt06 => 0,
         debt07 => 0,
         debt08 => 0,
         debt09 => 0,
         debt10 => 0,
         debt11 => 0,
         debt12 => 0,
         debtar01 => 0,
         debtar02 => 0,
         debtar03 => 0,
         debtar04 => 0,
         debtar05 => 0,
         debtar06 => 0,
         debtar07 => 0,
         debtar08 => 0,
         debtar09 => 0,
         debtar10 => 0,
         debtar11 => 0,
         debtar12 => 0,
         debtfre1 => 0,
         debtfre2 => 0,
         debtfre3 => 0,
         endsmeet => 0,
         eucar => 0,
         eucarwhy => 0,
         euexpns => 0,
         eumeal => 0,
         eurepay => 0,
         euteleph => 0,
         eutelwhy => 0,
         expnsoa => 0,
         houshew => 0,
         noise => 0,
         oacareu1 => 0,
         oacareu2 => 0,
         oacareu3 => 0,
         oacareu4 => 0,
         oacareu5 => 0,
         oacareu6 => 0,
         oacareu7 => 0,
         oacareu8 => 0,
         oataxieu => 0,
         oatelep1 => 0,
         oatelep2 => 0,
         oatelep3 => 0,
         oatelep4 => 0,
         oatelep5 => 0,
         oatelep6 => 0,
         oatelep7 => 0,
         oatelep8 => 0,
         oateleph => 0,
         outpay => 0,
         outpyamt => 0.0,
         pollute => 0,
         regpamt => 0.0,
         regularp => 0,
         repaybur => 0,
         washmach => 0,
         washwhy => 0,
         whodepq => 0,
         discbua1 => 0,
         discbuc1 => 0,
         diswbua1 => 0,
         diswbuc1 => 0,
         fsfvbu => 0.0,
         gross4 => 0,
         adles => 0,
         adlesnt1 => 0,
         adlesnt2 => 0,
         adlesnt3 => 0,
         adlesnt4 => 0,
         adlesnt5 => 0,
         adlesnt6 => 0,
         adlesnt7 => 0,
         adlesnt8 => 0,
         adlesoa => 0,
         clothes => 0,
         clothnt1 => 0,
         clothnt2 => 0,
         clothnt3 => 0,
         clothnt4 => 0,
         clothnt5 => 0,
         clothnt6 => 0,
         clothnt7 => 0,
         clothnt8 => 0,
         clothsoa => 0,
         furnt1 => 0,
         furnt2 => 0,
         furnt3 => 0,
         furnt4 => 0,
         furnt5 => 0,
         furnt6 => 0,
         furnt7 => 0,
         furnt8 => 0,
         intntnt1 => 0,
         intntnt2 => 0,
         intntnt3 => 0,
         intntnt4 => 0,
         intntnt5 => 0,
         intntnt6 => 0,
         intntnt7 => 0,
         intntnt8 => 0,
         intrnet => 0,
         meal => 0,
         oadep2 => 0,
         oadp2nt1 => 0,
         oadp2nt2 => 0,
         oadp2nt3 => 0,
         oadp2nt4 => 0,
         oadp2nt5 => 0,
         oadp2nt6 => 0,
         oadp2nt7 => 0,
         oadp2nt8 => 0,
         oafur => 0,
         oaintern => 0,
         shoe => 0,
         shoent1 => 0,
         shoent2 => 0,
         shoent3 => 0,
         shoent4 => 0,
         shoent5 => 0,
         shoent6 => 0,
         shoent7 => 0,
         shoent8 => 0,
         shoeoa => 0,
         nbunirbn => 0,
         nbuothbn => 0,
         debt13 => 0,
         debtar13 => 0,
         euchbook => 0,
         euchclth => 0,
         euchgame => 0,
         euchmeat => 0,
         euchshoe => 0,
         eupbtran => 0,
         eupbtrn1 => 0,
         eupbtrn2 => 0,
         eupbtrn3 => 0,
         eupbtrn4 => 0,
         eupbtrn5 => 0,
         euroast => 0,
         eusmeal => 0,
         eustudy => 0,
         bueth => 0,
         oaeusmea => 0,
         oaholb => 0,
         oaroast => 0,
         ecostab2 => 0
   );
   --
   -- simple print routine for Benunit : benunit
   --
   function To_String( rec : Benunit ) return String;

   --
   -- record modelling Househol : househol
   --
   type Househol is record
      user_id : Integer := 0;
      edition : Integer := 0;
      year : Integer := 0;
      sernum : Sernum_Value := Sernum_Value'First;
      acorn : Integer := 0;
      bedroom : Integer := 0;
      benunits : Integer := 0;
      billrate : Integer := 0;
      busroom : Integer := 0;
      centfuel : Integer := 0;
      centheat : Integer := 0;
      charge1 : Integer := 0;
      charge2 : Integer := 0;
      charge3 : Integer := 0;
      charge4 : Integer := 0;
      charge5 : Integer := 0;
      charge6 : Integer := 0;
      charge7 : Integer := 0;
      charge8 : Integer := 0;
      charge9 : Integer := 0;
      chins : Integer := 0;
      chrgamt1 : Amount := 0.0;
      chrgamt2 : Amount := 0.0;
      chrgamt3 : Amount := 0.0;
      chrgamt4 : Amount := 0.0;
      chrgamt5 : Amount := 0.0;
      chrgamt6 : Amount := 0.0;
      chrgamt7 : Amount := 0.0;
      chrgamt8 : Amount := 0.0;
      chrgamt9 : Amount := 0.0;
      chrgpd1 : Integer := 0;
      chrgpd2 : Integer := 0;
      chrgpd3 : Integer := 0;
      chrgpd4 : Integer := 0;
      chrgpd5 : Integer := 0;
      chrgpd6 : Integer := 0;
      chrgpd7 : Integer := 0;
      chrgpd8 : Integer := 0;
      chrgpd9 : Integer := 0;
      contv1 : Integer := 0;
      contv2 : Integer := 0;
      covoths : Integer := 0;
      csewamt : Amount := 0.0;
      csewamt1 : Amount := 0.0;
      ct25d50d : Integer := 0;
      ctamt : Integer := 0;
      ctannual : Amount := 0.0;
      ctband : Integer := 0;
      ctbwait : Integer := 0;
      ctcondoc : Integer := 0;
      ctdisc : Integer := 0;
      ctinstal : Integer := 0;
      ctlvband : Integer := 0;
      ctlvchk : Integer := 0;
      ctreb : Integer := 0;
      ctrebamt : Integer := 0;
      ctrebpd : Integer := 0;
      cttime : Integer := 0;
      cwatamt : Integer := 0;
      cwatamt1 : Integer := 0;
      datyrago : Ada.Calendar.Time := FIRST_DATE;
      entry1 : Integer := 0;
      entry2 : Integer := 0;
      entry3 : Integer := 0;
      entry4 : Integer := 0;
      estrtann : Amount := 0.0;
      floor : Integer := 0;
      givehelp : Integer := 0;
      gor : Integer := 0;
      gvtregn : Integer := 0;
      hhldr01 : Integer := 0;
      hhldr02 : Integer := 0;
      hhldr03 : Integer := 0;
      hhldr04 : Integer := 0;
      hhldr05 : Integer := 0;
      hhldr06 : Integer := 0;
      hhldr07 : Integer := 0;
      hhldr08 : Integer := 0;
      hhldr09 : Integer := 0;
      hhldr10 : Integer := 0;
      hhldr11 : Integer := 0;
      hhldr12 : Integer := 0;
      hhldr13 : Integer := 0;
      hhldr14 : Integer := 0;
      hhldr97 : Integer := 0;
      hhstat : Integer := 0;
      hrpnum : Integer := 0;
      intdate : Ada.Calendar.Time := FIRST_DATE;
      lac : Integer := 0;
      mainacc : Integer := 0;
      mnthcode : Integer := 0;
      modcon01 : Integer := 0;
      modcon02 : Integer := 0;
      modcon03 : Integer := 0;
      modcon04 : Integer := 0;
      modcon05 : Integer := 0;
      modcon06 : Integer := 0;
      modcon07 : Integer := 0;
      modcon08 : Integer := 0;
      modcon09 : Integer := 0;
      modcon10 : Integer := 0;
      modcon11 : Integer := 0;
      modcon12 : Integer := 0;
      modcon13 : Integer := 0;
      modcon14 : Integer := 0;
      monlive : Integer := 0;
      needhelp : Integer := 0;
      nicoun : Integer := 0;
      ninrv : Amount := 0.0;
      nirate : Integer := 0;
      norate : Integer := 0;
      onbsroom : Integer := 0;
      orgsewam : Amount := 0.0;
      orgwatam : Amount := 0.0;
      payrate : Integer := 0;
      premium : Integer := 0;
      ptbsroom : Integer := 0;
      rooms : Integer := 0;
      roomshar : Integer := 0;
      rtannual : Amount := 0.0;
      rtcheck : Amount := 0.0;
      rtcondoc : Integer := 0;
      rtdeduc : Integer := 0;
      rtinstal : Integer := 0;
      rtreb : Integer := 0;
      rtrebamt : Amount := 0.0;
      rtrebpd : Integer := 0;
      rttime : Integer := 0;
      sampqtr : Integer := 0;
      schmeal : Integer := 0;
      schmilk : Integer := 0;
      sewamt : Amount := 0.0;
      sewanul : Amount := 0.0;
      sewerpay : Integer := 0;
      sewsep : Integer := 0;
      sewtime : Integer := 0;
      shelter : Integer := 0;
      sobuy : Integer := 0;
      sstrtreg : Integer := 0;
      stramt1 : Amount := 0.0;
      stramt2 : Amount := 0.0;
      strcov : Integer := 0;
      strmort : Integer := 0;
      stroths : Integer := 0;
      strpd1 : Integer := 0;
      strpd2 : Integer := 0;
      suballow : Integer := 0;
      sublet : Integer := 0;
      sublety : Integer := 0;
      subrent : Amount := 0.0;
      tenure : Integer := 0;
      totadult : Integer := 0;
      totchild : Integer := 0;
      totdepdk : Integer := 0;
      tvlic : Integer := 0;
      typeacc : Integer := 0;
      usevcl : Integer := 0;
      watamt : Amount := 0.0;
      watanul : Amount := 0.0;
      watermet : Integer := 0;
      waterpay : Integer := 0;
      watrb : Integer := 0;
      wattime : Integer := 0;
      welfmilk : Integer := 0;
      whoctb01 : Integer := 0;
      whoctb02 : Integer := 0;
      whoctb03 : Integer := 0;
      whoctb04 : Integer := 0;
      whoctb05 : Integer := 0;
      whoctb06 : Integer := 0;
      whoctb07 : Integer := 0;
      whoctb08 : Integer := 0;
      whoctb09 : Integer := 0;
      whoctb10 : Integer := 0;
      whoctb11 : Integer := 0;
      whoctb12 : Integer := 0;
      whoctb13 : Integer := 0;
      whoctb14 : Integer := 0;
      whoctbns : Integer := 0;
      whoctbot : Integer := 0;
      whorsp01 : Integer := 0;
      whorsp02 : Integer := 0;
      whorsp03 : Integer := 0;
      whorsp04 : Integer := 0;
      whorsp05 : Integer := 0;
      whorsp06 : Integer := 0;
      whorsp07 : Integer := 0;
      whorsp08 : Integer := 0;
      whorsp09 : Integer := 0;
      whorsp10 : Integer := 0;
      whorsp11 : Integer := 0;
      whorsp12 : Integer := 0;
      whorsp13 : Integer := 0;
      whorsp14 : Integer := 0;
      whynoct : Integer := 0;
      wmintro : Integer := 0;
      wsewamt : Amount := 0.0;
      wsewanul : Amount := 0.0;
      wsewtime : Integer := 0;
      yearcode : Integer := 0;
      yearlive : Integer := 0;
      month : Integer := 0;
      actacch : Integer := 0;
      adddahh : Integer := 0;
      adulth : Integer := 0;
      basacth : Integer := 0;
      chddahh : Integer := 0;
      curacth : Integer := 0;
      cwatamtd : Integer := 0;
      depchldh : Integer := 0;
      emp : Integer := 0;
      emphrp : Integer := 0;
      endowpay : Amount := 0.0;
      equivahc : Amount := 0.0;
      equivbhc : Amount := 0.0;
      fsbndcth : Integer := 0;
      gbhscost : Integer := 0;
      gebacth : Integer := 0;
      giltcth : Integer := 0;
      gross2 : Integer := 0;
      gross3 : Integer := 0;
      grossct : Integer := 0;
      hbeninc : Integer := 0;
      hbindhh : Integer := 0;
      hcband : Integer := 0;
      hdhhinc : Integer := 0;
      hdtax : Integer := 0;
      hearns : Amount := 0.0;
      hhagegr2 : Integer := 0;
      hhagegrp : Integer := 0;
      hhcomp : Integer := 0;
      hhcomps : Integer := 0;
      hhdisben : Integer := 0;
      hhethgr2 : Integer := 0;
      hhethgrp : Integer := 0;
      hhinc : Integer := 0;
      hhincbnd : Integer := 0;
      hhinv : Amount := 0.0;
      hhirben : Integer := 0;
      hhkids : Integer := 0;
      hhnirben : Integer := 0;
      hhothben : Integer := 0;
      hhrent : Integer := 0;
      hhrinc : Amount := 0.0;
      hhrpinc : Amount := 0.0;
      hhsize : Integer := 0;
      hhtvlic : Amount := 0.0;
      hhtxcred : Amount := 0.0;
      hothinc : Amount := 0.0;
      hpeninc : Amount := 0.0;
      hrband : Integer := 0;
      hseinc : Amount := 0.0;
      isacth : Integer := 0;
      london : Integer := 0;
      mortcost : Amount := 0.0;
      mortint : Amount := 0.0;
      mortpay : Amount := 0.0;
      nddctb : Amount := 0.0;
      nddishc : Amount := 0.0;
      nihscost : Integer := 0;
      nsbocth : Integer := 0;
      otbscth : Integer := 0;
      pacctype : Integer := 0;
      penage : Integer := 0;
      penhrp : Integer := 0;
      pepscth : Integer := 0;
      poaccth : Integer := 0;
      prbocth : Integer := 0;
      ptentyp2 : Integer := 0;
      sayecth : Integer := 0;
      sclbcth : Integer := 0;
      servpay : Amount := 0.0;
      sick : Integer := 0;
      sickhrp : Integer := 0;
      sscth : Integer := 0;
      struins : Amount := 0.0;
      stshcth : Integer := 0;
      tentyp2 : Integer := 0;
      tesscth : Integer := 0;
      tuhhrent : Amount := 0.0;
      tuwatsew : Amount := 0.0;
      untrcth : Integer := 0;
      watsewrt : Amount := 0.0;
      acornew : Integer := 0;
      crunach : Integer := 0;
      enomorth : Integer := 0;
      dvadulth : Integer := 0;
      dvtotad : Integer := 0;
      urindew : Integer := 0;
      urinds : Integer := 0;
      vehnumb : Integer := 0;
      country : Integer := 0;
      hbindhh2 : Integer := 0;
      pocardh : Integer := 0;
      entry5 : Integer := 0;
      entry6 : Integer := 0;
      imd_e : Integer := 0;
      imd_s : Integer := 0;
      imd_w : Integer := 0;
      numtv1 : Integer := 0;
      numtv2 : Integer := 0;
      oac : Integer := 0;
      bedroom6 : Integer := 0;
      rooms10 : Integer := 0;
      brma : Integer := 0;
      issue : Integer := 0;
      migrq1 : Integer := 0;
      migrq2 : Integer := 0;
      hhagegr3 : Integer := 0;
      hhagegr4 : Integer := 0;
      capval : Integer := 0;
      nidpnd : Integer := 0;
      nochcr1 : Integer := 0;
      nochcr2 : Integer := 0;
      nochcr3 : Integer := 0;
      nochcr4 : Integer := 0;
      nochcr5 : Integer := 0;
      rt2rebam : Amount := 0.0;
      rt2rebpd : Integer := 0;
      rtdpa : Integer := 0;
      rtdpaamt : Amount := 0.0;
      rtdpapd : Integer := 0;
      rtlpa : Integer := 0;
      rtlpaamt : Amount := 0.0;
      rtlpapd : Integer := 0;
      rtothamt : Amount := 0.0;
      rtother : Integer := 0;
      rtothpd : Integer := 0;
      rtrtr : Integer := 0;
      rtrtramt : Amount := 0.0;
      rtrtrpd : Integer := 0;
      rttimepd : Integer := 0;
      yrlvchk : Integer := 0;
      gross3_x : Integer := 0;
      hlthst : Integer := 0;
      medpay : Integer := 0;
      medwho01 : Integer := 0;
      medwho02 : Integer := 0;
      medwho03 : Integer := 0;
      medwho04 : Integer := 0;
      medwho05 : Integer := 0;
      medwho06 : Integer := 0;
      medwho07 : Integer := 0;
      medwho08 : Integer := 0;
      medwho09 : Integer := 0;
      medwho10 : Integer := 0;
      medwho11 : Integer := 0;
      medwho12 : Integer := 0;
      medwho13 : Integer := 0;
      medwho14 : Integer := 0;
      nmrmshar : Integer := 0;
      roomshr : Integer := 0;
      imd_ni : Integer := 0;
      multi : Integer := 0;
      nopay : Integer := 0;
      orgid : Integer := 0;
      rtene : Integer := 0;
      rteneamt : Integer := 0;
      rtgen : Integer := 0;
      schbrk : Integer := 0;
      urb : Integer := 0;
      urbrur : Integer := 0;
      hhethgr3 : Integer := 0;
      niratlia : Amount := 0.0;
      bankse : Integer := 0;
      bathshow : Integer := 0;
      burden : Integer := 0;
      comco : Integer := 0;
      comp1sc : Integer := 0;
      compsc : Integer := 0;
      comwa : Integer := 0;
      dwellno : Integer := 0;
      elecin : Integer := 0;
      elecinw : Integer := 0;
      eulowest : Amount := 0.0;
      flshtoil : Integer := 0;
      grocse : Integer := 0;
      gvtregno : Integer := 0;
      heat : Integer := 0;
      heatcen : Integer := 0;
      heatfire : Integer := 0;
      kitchen : Integer := 0;
      knsizeft : Integer := 0;
      knsizem : Integer := 0;
      laua : Integer := 0;
      movef : Integer := 0;
      movenxt : Integer := 0;
      movereas : Integer := 0;
      ovsat : Integer := 0;
      plum1bin : Integer := 0;
      plumin : Integer := 0;
      pluminw : Integer := 0;
      postse : Integer := 0;
      primh : Integer := 0;
      pubtr : Integer := 0;
      samesc : Integer := 0;
      schfrt : Integer := 0;
      selper : Integer := 0;
      short : Integer := 0;
      sizeft : Integer := 0;
      sizem : Integer := 0;
      tvwhy : Integer := 0;
      yearwhc : Integer := 0;
      dischha1 : Integer := 0;
      dischhc1 : Integer := 0;
      diswhha1 : Integer := 0;
      diswhhc1 : Integer := 0;
      gross4 : Integer := 0;
      lldcare : Integer := 0;
      urindni : Integer := 0;
      nhbeninc : Integer := 0;
      nhhnirbn : Integer := 0;
      nhhothbn : Integer := 0;
      seramt1 : Amount := 0.0;
      seramt2 : Amount := 0.0;
      seramt3 : Amount := 0.0;
      seramt4 : Amount := 0.0;
      serpay1 : Integer := 0;
      serpay2 : Integer := 0;
      serpay3 : Integer := 0;
      serpay4 : Integer := 0;
      serper1 : Integer := 0;
      serper2 : Integer := 0;
      serper3 : Integer := 0;
      serper4 : Integer := 0;
      utility : Integer := 0;
      hheth : Integer := 0;
      seramt5 : Amount := 0.0;
      sercomb : Integer := 0;
      serpay5 : Integer := 0;
      serper5 : Integer := 0;
      urbni : Integer := 0;
   end record;
   --
   -- container for Househol : househol
   --
   package Househol_List_Package is new Ada.Containers.Vectors
      (Element_Type => Househol,
      Index_Type => Positive );
   subtype Househol_List is Househol_List_Package.Vector;
   --
   -- default value for Househol : househol
   --
   Null_Househol : constant Househol := (
         user_id => 0,
         edition => 0,
         year => 0,
         sernum => Sernum_Value'First,
         acorn => 0,
         bedroom => 0,
         benunits => 0,
         billrate => 0,
         busroom => 0,
         centfuel => 0,
         centheat => 0,
         charge1 => 0,
         charge2 => 0,
         charge3 => 0,
         charge4 => 0,
         charge5 => 0,
         charge6 => 0,
         charge7 => 0,
         charge8 => 0,
         charge9 => 0,
         chins => 0,
         chrgamt1 => 0.0,
         chrgamt2 => 0.0,
         chrgamt3 => 0.0,
         chrgamt4 => 0.0,
         chrgamt5 => 0.0,
         chrgamt6 => 0.0,
         chrgamt7 => 0.0,
         chrgamt8 => 0.0,
         chrgamt9 => 0.0,
         chrgpd1 => 0,
         chrgpd2 => 0,
         chrgpd3 => 0,
         chrgpd4 => 0,
         chrgpd5 => 0,
         chrgpd6 => 0,
         chrgpd7 => 0,
         chrgpd8 => 0,
         chrgpd9 => 0,
         contv1 => 0,
         contv2 => 0,
         covoths => 0,
         csewamt => 0.0,
         csewamt1 => 0.0,
         ct25d50d => 0,
         ctamt => 0,
         ctannual => 0.0,
         ctband => 0,
         ctbwait => 0,
         ctcondoc => 0,
         ctdisc => 0,
         ctinstal => 0,
         ctlvband => 0,
         ctlvchk => 0,
         ctreb => 0,
         ctrebamt => 0,
         ctrebpd => 0,
         cttime => 0,
         cwatamt => 0,
         cwatamt1 => 0,
         datyrago => FIRST_DATE,
         entry1 => 0,
         entry2 => 0,
         entry3 => 0,
         entry4 => 0,
         estrtann => 0.0,
         floor => 0,
         givehelp => 0,
         gor => 0,
         gvtregn => 0,
         hhldr01 => 0,
         hhldr02 => 0,
         hhldr03 => 0,
         hhldr04 => 0,
         hhldr05 => 0,
         hhldr06 => 0,
         hhldr07 => 0,
         hhldr08 => 0,
         hhldr09 => 0,
         hhldr10 => 0,
         hhldr11 => 0,
         hhldr12 => 0,
         hhldr13 => 0,
         hhldr14 => 0,
         hhldr97 => 0,
         hhstat => 0,
         hrpnum => 0,
         intdate => FIRST_DATE,
         lac => 0,
         mainacc => 0,
         mnthcode => 0,
         modcon01 => 0,
         modcon02 => 0,
         modcon03 => 0,
         modcon04 => 0,
         modcon05 => 0,
         modcon06 => 0,
         modcon07 => 0,
         modcon08 => 0,
         modcon09 => 0,
         modcon10 => 0,
         modcon11 => 0,
         modcon12 => 0,
         modcon13 => 0,
         modcon14 => 0,
         monlive => 0,
         needhelp => 0,
         nicoun => 0,
         ninrv => 0.0,
         nirate => 0,
         norate => 0,
         onbsroom => 0,
         orgsewam => 0.0,
         orgwatam => 0.0,
         payrate => 0,
         premium => 0,
         ptbsroom => 0,
         rooms => 0,
         roomshar => 0,
         rtannual => 0.0,
         rtcheck => 0.0,
         rtcondoc => 0,
         rtdeduc => 0,
         rtinstal => 0,
         rtreb => 0,
         rtrebamt => 0.0,
         rtrebpd => 0,
         rttime => 0,
         sampqtr => 0,
         schmeal => 0,
         schmilk => 0,
         sewamt => 0.0,
         sewanul => 0.0,
         sewerpay => 0,
         sewsep => 0,
         sewtime => 0,
         shelter => 0,
         sobuy => 0,
         sstrtreg => 0,
         stramt1 => 0.0,
         stramt2 => 0.0,
         strcov => 0,
         strmort => 0,
         stroths => 0,
         strpd1 => 0,
         strpd2 => 0,
         suballow => 0,
         sublet => 0,
         sublety => 0,
         subrent => 0.0,
         tenure => 0,
         totadult => 0,
         totchild => 0,
         totdepdk => 0,
         tvlic => 0,
         typeacc => 0,
         usevcl => 0,
         watamt => 0.0,
         watanul => 0.0,
         watermet => 0,
         waterpay => 0,
         watrb => 0,
         wattime => 0,
         welfmilk => 0,
         whoctb01 => 0,
         whoctb02 => 0,
         whoctb03 => 0,
         whoctb04 => 0,
         whoctb05 => 0,
         whoctb06 => 0,
         whoctb07 => 0,
         whoctb08 => 0,
         whoctb09 => 0,
         whoctb10 => 0,
         whoctb11 => 0,
         whoctb12 => 0,
         whoctb13 => 0,
         whoctb14 => 0,
         whoctbns => 0,
         whoctbot => 0,
         whorsp01 => 0,
         whorsp02 => 0,
         whorsp03 => 0,
         whorsp04 => 0,
         whorsp05 => 0,
         whorsp06 => 0,
         whorsp07 => 0,
         whorsp08 => 0,
         whorsp09 => 0,
         whorsp10 => 0,
         whorsp11 => 0,
         whorsp12 => 0,
         whorsp13 => 0,
         whorsp14 => 0,
         whynoct => 0,
         wmintro => 0,
         wsewamt => 0.0,
         wsewanul => 0.0,
         wsewtime => 0,
         yearcode => 0,
         yearlive => 0,
         month => 0,
         actacch => 0,
         adddahh => 0,
         adulth => 0,
         basacth => 0,
         chddahh => 0,
         curacth => 0,
         cwatamtd => 0,
         depchldh => 0,
         emp => 0,
         emphrp => 0,
         endowpay => 0.0,
         equivahc => 0.0,
         equivbhc => 0.0,
         fsbndcth => 0,
         gbhscost => 0,
         gebacth => 0,
         giltcth => 0,
         gross2 => 0,
         gross3 => 0,
         grossct => 0,
         hbeninc => 0,
         hbindhh => 0,
         hcband => 0,
         hdhhinc => 0,
         hdtax => 0,
         hearns => 0.0,
         hhagegr2 => 0,
         hhagegrp => 0,
         hhcomp => 0,
         hhcomps => 0,
         hhdisben => 0,
         hhethgr2 => 0,
         hhethgrp => 0,
         hhinc => 0,
         hhincbnd => 0,
         hhinv => 0.0,
         hhirben => 0,
         hhkids => 0,
         hhnirben => 0,
         hhothben => 0,
         hhrent => 0,
         hhrinc => 0.0,
         hhrpinc => 0.0,
         hhsize => 0,
         hhtvlic => 0.0,
         hhtxcred => 0.0,
         hothinc => 0.0,
         hpeninc => 0.0,
         hrband => 0,
         hseinc => 0.0,
         isacth => 0,
         london => 0,
         mortcost => 0.0,
         mortint => 0.0,
         mortpay => 0.0,
         nddctb => 0.0,
         nddishc => 0.0,
         nihscost => 0,
         nsbocth => 0,
         otbscth => 0,
         pacctype => 0,
         penage => 0,
         penhrp => 0,
         pepscth => 0,
         poaccth => 0,
         prbocth => 0,
         ptentyp2 => 0,
         sayecth => 0,
         sclbcth => 0,
         servpay => 0.0,
         sick => 0,
         sickhrp => 0,
         sscth => 0,
         struins => 0.0,
         stshcth => 0,
         tentyp2 => 0,
         tesscth => 0,
         tuhhrent => 0.0,
         tuwatsew => 0.0,
         untrcth => 0,
         watsewrt => 0.0,
         acornew => 0,
         crunach => 0,
         enomorth => 0,
         dvadulth => 0,
         dvtotad => 0,
         urindew => 0,
         urinds => 0,
         vehnumb => 0,
         country => 0,
         hbindhh2 => 0,
         pocardh => 0,
         entry5 => 0,
         entry6 => 0,
         imd_e => 0,
         imd_s => 0,
         imd_w => 0,
         numtv1 => 0,
         numtv2 => 0,
         oac => 0,
         bedroom6 => 0,
         rooms10 => 0,
         brma => 0,
         issue => 0,
         migrq1 => 0,
         migrq2 => 0,
         hhagegr3 => 0,
         hhagegr4 => 0,
         capval => 0,
         nidpnd => 0,
         nochcr1 => 0,
         nochcr2 => 0,
         nochcr3 => 0,
         nochcr4 => 0,
         nochcr5 => 0,
         rt2rebam => 0.0,
         rt2rebpd => 0,
         rtdpa => 0,
         rtdpaamt => 0.0,
         rtdpapd => 0,
         rtlpa => 0,
         rtlpaamt => 0.0,
         rtlpapd => 0,
         rtothamt => 0.0,
         rtother => 0,
         rtothpd => 0,
         rtrtr => 0,
         rtrtramt => 0.0,
         rtrtrpd => 0,
         rttimepd => 0,
         yrlvchk => 0,
         gross3_x => 0,
         hlthst => 0,
         medpay => 0,
         medwho01 => 0,
         medwho02 => 0,
         medwho03 => 0,
         medwho04 => 0,
         medwho05 => 0,
         medwho06 => 0,
         medwho07 => 0,
         medwho08 => 0,
         medwho09 => 0,
         medwho10 => 0,
         medwho11 => 0,
         medwho12 => 0,
         medwho13 => 0,
         medwho14 => 0,
         nmrmshar => 0,
         roomshr => 0,
         imd_ni => 0,
         multi => 0,
         nopay => 0,
         orgid => 0,
         rtene => 0,
         rteneamt => 0,
         rtgen => 0,
         schbrk => 0,
         urb => 0,
         urbrur => 0,
         hhethgr3 => 0,
         niratlia => 0.0,
         bankse => 0,
         bathshow => 0,
         burden => 0,
         comco => 0,
         comp1sc => 0,
         compsc => 0,
         comwa => 0,
         dwellno => 0,
         elecin => 0,
         elecinw => 0,
         eulowest => 0.0,
         flshtoil => 0,
         grocse => 0,
         gvtregno => 0,
         heat => 0,
         heatcen => 0,
         heatfire => 0,
         kitchen => 0,
         knsizeft => 0,
         knsizem => 0,
         laua => 0,
         movef => 0,
         movenxt => 0,
         movereas => 0,
         ovsat => 0,
         plum1bin => 0,
         plumin => 0,
         pluminw => 0,
         postse => 0,
         primh => 0,
         pubtr => 0,
         samesc => 0,
         schfrt => 0,
         selper => 0,
         short => 0,
         sizeft => 0,
         sizem => 0,
         tvwhy => 0,
         yearwhc => 0,
         dischha1 => 0,
         dischhc1 => 0,
         diswhha1 => 0,
         diswhhc1 => 0,
         gross4 => 0,
         lldcare => 0,
         urindni => 0,
         nhbeninc => 0,
         nhhnirbn => 0,
         nhhothbn => 0,
         seramt1 => 0.0,
         seramt2 => 0.0,
         seramt3 => 0.0,
         seramt4 => 0.0,
         serpay1 => 0,
         serpay2 => 0,
         serpay3 => 0,
         serpay4 => 0,
         serper1 => 0,
         serper2 => 0,
         serper3 => 0,
         serper4 => 0,
         utility => 0,
         hheth => 0,
         seramt5 => 0.0,
         sercomb => 0,
         serpay5 => 0,
         serper5 => 0,
         urbni => 0
   );
   --
   -- simple print routine for Househol : househol
   --
   function To_String( rec : Househol ) return String;



        
   -- === CUSTOM PROCS START ===
   -- === CUSTOM PROCS END ===

end Ukds.frs;
