1. package Entities.Poles is 
  2.  
  3.     type Pole is abstract new Entity with private; 
  4.  
  5. private 
  6.  
  7.     type Pole is new Entity with null record; 
  8.  
  9.     procedure Construct( this : access Pole ); 
  10.  
  11.     function Object_Input( stream : access Root_Stream_Type'Class ) return Pole; 
  12.     for Pole'Input use Object_Input; 
  13.  
  14.     procedure Object_Read( stream : access Root_Stream_Type'Class; obj : out Pole ); 
  15.     for Pole'Read use Object_Read; 
  16.  
  17.     procedure Object_Write( stream : access Root_Stream_Type'Class; obj : Pole ); 
  18.     for Pole'Write use Object_Write; 
  19.  
  20. end Entities.Poles;