unit TAssocArray_unit; interface type TAssocArray = class( TObject ) private keys, values: Array of String; public procedure push( k:String; v:String ); function get( k:String ): String; end; implementation procedure TAssocArray.push( k:String; v:String ); var l:Integer; begin l := Length( Self.keys ) + 1; SetLength( Self.keys, l ); SetLength( Self.values, l ); Self.keys[ l - 1 ] := k; Self.values[ l - 1 ] := v; end; function TAssocArray.get( k:String ):String; var i:Integer; begin i := Length( Self.keys ); for i := 0 to Length( Self.keys ) do begin if( Self.keys[ i ] = k ) then Break; end; Result := Self.values[ i ]; end; end.