type FootnotesAdapter = class public function Create(_obj: Footnotes); function Init(); function GetFootnoteById(_key: string); function SetFootnoteById(_key: string; _value: tslobj); private object_: Footnotes; footnote_hash_: tableArray; end; function FootnotesAdapter.Create(_obj: Footnotes); begin object_ := _obj; footnote_hash_ := array(); {self.}Init(); end; function FootnotesAdapter.Init(); begin elements := object_.Footnotes(); for k,v in elements do footnote_hash_[v.Id] := v; end; function FootnotesAdapter.GetFootnoteById(_key: string); begin return footnote_hash_[_key]; end; function FootnotesAdapter.SetFootnoteById(_key: string; _value: tslobj); begin footnote_hash_[_key] := _value; end;