From 9e4f5c57704a0f5e390c9e3f5e960f956092e3e0 Mon Sep 17 00:00:00 2001 From: inoussa Date: Wed, 7 May 2014 14:33:32 +0000 Subject: [PATCH] Compress the RTF document as it gets difficult to commit. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3017 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- wst/trunk/doc/WebServiceToolKit.rtf | 3929 ----------------------- wst/trunk/doc/WebServiceToolKit.rtf.zip | Bin 0 -> 647620 bytes 2 files changed, 3929 deletions(-) delete mode 100644 wst/trunk/doc/WebServiceToolKit.rtf create mode 100644 wst/trunk/doc/WebServiceToolKit.rtf.zip diff --git a/wst/trunk/doc/WebServiceToolKit.rtf b/wst/trunk/doc/WebServiceToolKit.rtf deleted file mode 100644 index 2e814afb9..000000000 --- a/wst/trunk/doc/WebServiceToolKit.rtf +++ /dev/null @@ -1,3929 +0,0 @@ -{\rtf1\ansi\deff1\adeflang1025 -{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset0 Nimbus Roman No9 L{\*\falt Times New Roman};}{\f2\fswiss\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f3\fnil\fprq1\fcharset0 Courier 10 Pitch;}{\f4\fmodern\fprq1\fcharset0 Courier New;}{\f5\fnil\fprq0\fcharset2 StarSymbol{\*\falt Arial Unicode MS};}{\f6\fnil\fprq2\fcharset0 Nimbus Sans L{\*\falt Arial};}{\f7\fnil\fprq2\fcharset0 HG Mincho Light J{\*\falt msmincho};}} -{\colortbl;\red0\green0\blue0;\red0\green0\blue128;\red128\green0\blue0;\red204\green204\blue204;\red192\green192\blue192;\red128\green128\blue128;} -{\stylesheet{\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\snext1 Normal;} -{\s2\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon1\snext2 Body Text;} -{\s3\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs28\lang255\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\loch\f2\fs28\lang1033\sbasedon1\snext2 Heading;} -{\s4\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b\sbasedon3\snext2{\*\soutlvl0} heading 1;} -{\s5\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b\sbasedon3\snext2{\*\soutlvl1} heading 2;} -{\s6\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b\sbasedon3\snext2{\*\soutlvl2} heading 3;} -{\s7\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b\sbasedon3\snext2{\*\soutlvl3} heading 4;} -{\s8\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs23\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\b\loch\f2\fs23\lang1033\b\sbasedon3\snext2{\*\soutlvl4} heading 5;} -{\s9\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs21\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs21\lang1033\b\loch\f2\fs21\lang1033\b\sbasedon3\snext2{\*\soutlvl5} heading 6;} -{\s10\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs21\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs21\lang1033\b\loch\f2\fs21\lang1033\b\sbasedon3\snext2{\*\soutlvl6} heading 7;} -{\s11\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs21\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs21\lang1033\b\loch\f2\fs21\lang1033\b\sbasedon3\snext2{\*\soutlvl7} heading 8;} -{\s12\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs21\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs21\lang1033\b\loch\f2\fs21\lang1033\b\sbasedon3\snext2{\*\soutlvl8} heading 9;} -{\s13\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs21\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs21\lang1033\b\loch\f2\fs21\lang1033\b\sbasedon3\snext2{\*\soutlvl9} Heading 10;} -{\s14\cf0\tqc\tx4818\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon1\snext14 header;} -{\s15\sb120\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i\sbasedon1\snext15 caption;} -{\s16\sb120\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i\sbasedon15\snext16 Illustration;} -{\s17\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon2\snext17 Frame contents;} -{\s18\li283\ri0\lin283\rin0\fi-283\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\loch\f1\fs20\lang1033\sbasedon1\snext18 footnote text;} -{\s19\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon1\snext19 Index;} -{\s20\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b\sbasedon3\snext20 Contents Heading;} -{\s21\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon19\snext21 toc 1;} -{\s22\li283\ri0\lin283\rin0\fi0\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon19\snext22 toc 2;} -{\s23\li566\ri0\lin566\rin0\fi0\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon19\snext23 toc 3;} -{\s24\li849\ri0\lin849\rin0\fi0\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon19\snext24 toc 4;} -{\s25\li1132\ri0\lin1132\rin0\fi0\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon19\snext25 toc 5;} -{\s26\li1415\ri0\lin1415\rin0\fi0\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033\sbasedon19\snext26 toc 6;} -{\s27\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af4\afs20\lang255\ltrch\dbch\af4\langfe255\hich\f4\fs20\lang1033\loch\f4\fs20\lang1033\sbasedon1\snext27 Preformatted Text;} -{\*\cs29\cf0\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Footnote Symbol;} -{\*\cs30\cf0\rtlch\af5\afs18\lang255\ltrch\dbch\af5\langfe255\hich\f5\fs18\lang1033\loch\f5\fs18\lang1033 Bullet Symbols;} -{\*\cs31\cf2\ul\ulc0\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Internet link;} -{\*\cs32\cf3\ul\ulc0\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Visited Internet Link;} -{\*\cs33\cf0\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Endnote Symbol;} -{\*\cs34\cf0{\*\updnprop5801}\up10\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Footnote anchor;} -{\*\cs35\cf0{\*\updnprop5801}\up10\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Endnote anchor;} -{\*\cs36\cf0\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\b\loch\f1\fs24\lang1033\b Strong Emphasis;} -}{\*\listtable{\list\listtemplateid1 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid1} -{\list\listtemplateid2 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10146 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid2} -{\list\listtemplateid3 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid3} -{\list\listtemplateid4 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid4} -{\list\listtemplateid5 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid5} -{\list\listtemplateid6 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid6} -{\list\listtemplateid7 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid7} -{\list\listtemplateid8 -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'00.;}{\levelnumbers\'01;}\fi-360\li720} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'01.;}{\levelnumbers\'01;}\fi-360\li1080} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'02.;}{\levelnumbers\'01;}\fi-360\li1440} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'03.;}{\levelnumbers\'01;}\fi-360\li1800} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'04.;}{\levelnumbers\'01;}\fi-360\li2160} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'05.;}{\levelnumbers\'01;}\fi-360\li2520} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'06.;}{\levelnumbers\'01;}\fi-360\li2880} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'07.;}{\levelnumbers\'01;}\fi-360\li3240} -{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'08.;}{\levelnumbers\'01;}\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc0\leveljc0\levelstartat1\levelfollow0{\leveltext \'02\'09.;}{\levelnumbers\'01;}\fi-360\li3960}}\listid8} -{\list\listtemplateid9 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57356 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid9} -{\list\listtemplateid10 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid10} -{\list\listtemplateid11 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid11} -{\list\listtemplateid12 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid12} -{\list\listtemplateid13 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid13} -{\list\listtemplateid14 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid14} -{\list\listtemplateid15 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid15} -{\list\listtemplateid16 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10132 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid16} -{\list\listtemplateid17 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid17} -{\list\listtemplateid18 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid18} -{\list\listtemplateid19 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u10004 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li707} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li1414} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li2121} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li2828} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li3535} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li4242} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li4949} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li5656} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li6363} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-283\li7070}}\listid19} -{\list\listtemplateid20 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid20} -{\list\listtemplateid21 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid21} -{\list\listtemplateid22 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u8226 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid22} -{\list\listtemplateid23 -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'00);}{\levelnumbers\'02;}\fi-360\li720} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'01);}{\levelnumbers\'02;}\fi-360\li1080} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'02);}{\levelnumbers\'02;}\fi-360\li1440} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'03);}{\levelnumbers\'02;}\fi-360\li1800} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'04);}{\levelnumbers\'02;}\fi-360\li2160} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'05);}{\levelnumbers\'02;}\fi-360\li2520} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'06);}{\levelnumbers\'02;}\fi-360\li2880} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'07);}{\levelnumbers\'02;}\fi-360\li3240} -{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'08);}{\levelnumbers\'02;}\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc4\leveljc0\levelstartat1\levelfollow0{\leveltext \'03(\'09);}{\levelnumbers\'02;}\fi-360\li3960}}\listid23} -{\list\listtemplateid24 -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li720} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1080} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1440} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li1800} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2160} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2520} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li2880} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3240} -{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3600} -{\*\soutlvl{\listlevel\levelnfc23\leveljc0\levelstartat1\levelfollow0{\leveltext \'01\u57354 ?;}{\levelnumbers;}\f5\fs18\f5\fs18\f5\fs18\f5\fi-360\li3960}}\listid24} -}{\listoverridetable{\listoverride\listid1\listoverridecount0\ls0}{\listoverride\listid2\listoverridecount0\ls1}{\listoverride\listid3\listoverridecount0\ls2}{\listoverride\listid4\listoverridecount0\ls3}{\listoverride\listid5\listoverridecount0\ls4}{\listoverride\listid6\listoverridecount0\ls5}{\listoverride\listid7\listoverridecount0\ls6}{\listoverride\listid8\listoverridecount0\ls7}{\listoverride\listid9\listoverridecount0\ls8}{\listoverride\listid10\listoverridecount0\ls9}{\listoverride\listid11\listoverridecount0\ls10}{\listoverride\listid12\listoverridecount0\ls11}{\listoverride\listid13\listoverridecount0\ls12}{\listoverride\listid14\listoverridecount0\ls13}{\listoverride\listid15\listoverridecount0\ls14}{\listoverride\listid16\listoverridecount0\ls15}{\listoverride\listid17\listoverridecount0\ls16}{\listoverride\listid18\listoverridecount0\ls17}{\listoverride\listid19\listoverridecount0\ls18}{\listoverride\listid20\listoverridecount0\ls19}{\listoverride\listid21\listoverridecount0\ls20}{\listoverride\listid22\listoverridecount0\ls21}{\listoverride\listid23\listoverridecount0\ls22}{\listoverride\listid24\listoverridecount0\ls23}} - -{\info{\title Web Service Toolkit for FPC & Lazarus & Delphi}{\keywords Web Service FPC, Lazarus, Delphi}{\creatim\yr2006\mo4\dy20\hr13\min39}{\author Inoussa OUEDRAOGO}{\revtim\yr2007\mo8\dy14\hr19\min26}{\printim\yr1601\mo1\dy1\hr0\min0}{\comment StarWriter}{\vern6800}}\deftab709 -{\*\pgdsctbl -{\pgdsc0\pgdscuse195\pgwsxn11905\pghsxn16837\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\headery0{\*\headeryb283\headerxl0\headerxr0\headeryh0}{\header \pard\plain \s14\cf0\ul\ulc0\qr\tqc\tx4818\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\b\loch\f1\fs24\lang1033\b {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b Web Service Toolkit for FPC & Lazarus} -\par } -\pgdscnxt0 Standard;} -{\pgdsc1\pgdscuse195\pgwsxn11905\pghsxn16837\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt1 Footnote;} -{\pgdsc2\pgdscuse195\pgwsxn11905\pghsxn16837\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt2 Endnote;}} -\paperh16837\paperw11905\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\pgwsxn11905\pghsxn16837\marglsxn1134\margrsxn1134\margtsxn1693\margbsxn1134\headery1134{\header \pard\plain \s14\cf0\ul\ulc0\qr\tqc\tx4818\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\b\loch\f1\fs24\lang1033\b {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b Web Service Toolkit for FPC & Lazarus} -\par } -\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc -\pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b\qr \ltrpar\s4\cf0\qr{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\ul\ulc0\qc{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs96\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs96\lang1033\loch\f1\fs96\lang1033 {\rtlch \ltrch\loch\f1\fs96\lang1033\i0\b0 Web Service Toolkit for FPC & Lazarus & Delphi} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs96\lang1033\i0\b0 0.5} -\par \pard\plain \ltrpar\s1\cf0\qc{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs96\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs96\lang1033\loch\f1\fs96\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs40\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs40\lang1033\loch\f1\fs40\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\ul\ulc0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs40\lang255\ab\ltrch\dbch\af6\langfe255\hich\f1\fs40\lang1033\b\loch\f1\fs40\lang1033\b {\rtlch \ltrch\loch\f1\fs40\lang1033\i0\b Inoussa OUEDRAOGO} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \page\pard\plain \ltrpar\s1\cf0\ul\ulc0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs40\lang255\ab\ltrch\dbch\af6\langfe255\hich\f1\fs40\lang1033\b\loch\f1\fs40\lang1033\b -\par \sect\sbknone\cols1\ltrsect -\pard\plain \ltrpar\s20\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Table des mati\'e8res} -\par \pard\plain \ltrpar\s21\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Web Service Toolkit for FPC & Lazarus & Delphi\tab 4} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Client Side ( service consumption )\tab 5} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 overview\tab 5} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Example\tab 6} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The \'93WSDL importer\'94 wizard\tab 6} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Import by the ws_helper.\tab 7} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Connection Parameters \tab 14} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 HTTP connection Parameters \tab 14} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 TCP connection Parameters \tab 14} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LIBRARY ( LIB ) connection Parameters \tab 15} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Multi-Address service ( Address per operation )\tab 15} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Server Side ( service creation )\tab 16} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Overview.\tab 16} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Example\tab 16} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Defining the service Interface\tab 16} -\par \pard\plain \ltrpar\s25\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li1132\ri0\lin1132\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Export the pascal files.\tab 20} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Providing an implementation for the service\tab 22} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Providing a binder for the service.\tab 23} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Host the service into an application server.\tab 25} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 WSDL generation.\tab 28} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Meta data Service.\tab 28} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 WSDL generation API.\tab 28} -\par \pard\plain \ltrpar\s25\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li1132\ri0\lin1132\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 WSDL Customization.\tab 28} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Sample\tab 28} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Services Extensions \'96 Server side\tab 29} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Services meta data.\tab 30} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Extended Meta data.\tab 30} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Headers support.\tab 32} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The THeaderBlock class \tab 32} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Defining header class.\tab 32} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The ICallContext interface.\tab 32} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Client side headers.\tab 33} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Server side headers.\tab 33} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The ICallControl interface.\tab 33} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 SOAP Specific.\tab 35} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Binding style.\tab 35} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Client side.\tab 35} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Server side.\tab 35} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Encoding style.\tab 35} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Client side.\tab 35} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Server side.\tab 35} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Provided examples\tab 36} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Client side examples\tab 36} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Server side examples\tab 36} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Delphi examples\tab 36} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Status\tab 36} -\par \pard\plain \ltrpar\s23\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li566\ri0\lin566\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Serialization\tab 36} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 SOAP serializer\tab 37} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Binary serializer\tab 37} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Class type serialization. \tab 38} -\par \pard\plain \ltrpar\s25\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li1132\ri0\lin1132\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The root \'93TBaseRemotable\'94 class.\tab 38} -\par \pard\plain \ltrpar\s25\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li1132\ri0\lin1132\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The \'93TBaseComplexRemotable\'94 serialization.\tab 38} -\par \pard\plain \ltrpar\s26\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li1415\ri0\lin1415\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Attribute properties.\tab 39} -\par \pard\plain \ltrpar\s25\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li1132\ri0\lin1132\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Provided array implementations.\tab 41} -\par \pard\plain \ltrpar\s24\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li849\ri0\lin849\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Test cases\tab 43} -\par \pard\plain \ltrpar\s22\cf0\tldot\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\li283\ri0\lin283\rin0\fi0\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Author\tab 43} -\par \sect\sectd\sbknone\pgwsxn11905\pghsxn16837\marglsxn1134\margrsxn1134\margtsxn1693\margbsxn1134\headery1134{\header \pard\plain \s14\cf0\ul\ulc0\qr\tqc\tx4818\tqr\tx9637{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\b\loch\f1\fs24\lang1033\b {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b Web Service Toolkit for FPC & Lazarus} -\par } - -\pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b -\par \page\pard\plain \sb240\sa120\keepn\f2\fs32\b\f7\fs32\b\fs32\b \ltrpar\s4\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs32\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs32\lang1033\b\loch\f2\fs32\lang1033\b {\rtlch \ltrch\loch\f2\fs32\lang1033\i0\b Web Service Toolkit f{\rtlch\ltrch\dbch\hich\fs28\loch\fs28 or FPC & Lazarus & Delphi}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs28\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs28\lang1033\i\loch\f1\fs28\lang1033\i {\rtlch \ltrch\loch \'93}{\rtlch \ltrch\loch\f1\fs28\lang1033\i\b0 Web Service Toolkit\'94 is a web services package for FPC , Lazarus and Delphi; \'93Web Service Toolkit\'94 is meant to ease web services {\rtlch\ltrch\dbch\hich\b\loch\b consumption and creation} by FPC , Lazarus and Delphi users.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Client Side ( service consumption )} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b overview} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch \'93}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Web Service Toolkit\'94 is made of two parts:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls23\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 a set of programs : {\rtlch\ltrch\dbch\hich\i\b\loch\i\b \'93typ_lib_edtr\'94} a WSDL based type library editor, a command line tool {\rtlch\ltrch\dbch\hich\i\b\loch\i\b \'93ws_helper\'94} and a Lazarus integration package which contains some wizards,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls23\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 a collection of support units. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Given an interface definition file( a WSDL file or a pascal file describing \'e0 web service ), {\rtlch\ltrch\dbch\hich\i\b\loch\i\b \'93ws_helper\'94} ( or within Lazarus the {\rtlch\ltrch\dbch\hich\i\loch\i WSDL file importer} wizard ) will create a object pascal unit containing a proxy implementing that interface. At runtime when - a call targeting the web service is issued, the proxy's role is to :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj (a)\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls22\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 marshall the call parameters, } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj (b)\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls22\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 make the call to the target web service, } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj (c)\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls22\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 receive the call return and unmarshall output parameters to the caller.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj \tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Behind the scene, the proxy will take care of the SOAP plumbing details.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Example} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 We will use the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b \'93Amazon E-Commerce Service\'94}, freely available ( you will need to create a account, it's free) for personal use at this address \'93http://www.amazon.com/gp/browse.html?node=3435361\'94.In order to use this service, we have to download its exposed - WSDL(Web Services Description Language) interface and translate it to Pascal language. To that end, within Lazarus we can use the import wizard; we can also use {\rtlch\ltrch\dbch\hich\i\b\loch\i\b ws_helper} as a standalone program.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b\tx1815 \ltrpar\s7\cf0\tx1815{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b The \'93WSDL importer\'94 wizard} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This wizard is contained in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b wst_design.lpk} package located in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \\ide\\lazarus} directory of the toolkit. Once the package installed, it adds a menu section \'93Web Services Toolkit\'94 with two (2) sub-menus items to the Lazarus \'93Project\'94 menu ( figure 1 ) : -} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \'95\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls21\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Import WSDL file ...} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \'95\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls21\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Type Library Editor ...} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par -\pard\plain -\pard\plain\absw6540\absh5730\nowrap\pvpara\posy1\phcol\posx2{\*\flymaincnt0\flyvert44304\flyhorz44288\flyanchor0\flycntnt{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}}{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw436\pich382\picwgoal6540\pichgoal5730\wmetafile8 -89504e470d0a1a0a0000000d49484452000001b40000017e0802000000652578c3000000017352474200aece1ce90000000467414d410000b18f0bfc61050000 -00206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c00004f8249444154785eed9d099414559aefd36e5b6d -b5971967ce99396fce79fd5e4fcfcc7967a6a797e9e9d676b46940e9d6d176b4d176c17d03048494662fb6020b101001a1481464b328a1141010904256415665 -55b1c4720104ec02d90bf2dd887be3ee11191199191137f3cb1307b2226fdcfbddff77ef2fbe1b91f9c5053f6ff7722aa6d7e2e1ad636a199a05054001502097 -02088e716d5f1e380c1b28000a8002c9542015171951bbc95404ac02054001500029602e1c5feb904a75a883d8336e05368e6ed162f4e6e81701751df1a2a894 -c780ddc716a3b626055571f93afad165b7a881636396be1a2bfd2cbafbed6cdcbff33e6d498f8f7491630be122408b511b5d677e5dfb20b3a2e04e7566a6656f -fbd7123176f3eee3e6514c7eaf09491bc26ff26c37a492e8d4680f8f3c5be7679dd4afc24d48715477acf35b33eaa355980df50276566fc3566b08d0539dda5c -d10d88fb4c2fcaa2832325dda4c6ac1bf5fc401395090ac722c5200575aa0d1136c4ebdafb1feec5f47d7e7db43ac5c4b7a272573e4a0de5d16e782551a39c0b -0a7372caa323de06142cb22e9a85c47eabfe8e1d5ab80725c536c0ef69a398f388b3c1138eedd6adcd3656da809bb5058593762089fe2491a5fd2702287a6186 -b28f9a66f543f77916cfdaef145db858bdb8a90e29651871b3d49a0f4eb040024cea45ab1859648de25679c497f6f9d07e5913deaac7f9cb093d46b5477bfc32 -6e9476f4b06aed7ac838c3eb3e6280b500e4f6b325a174ec81c32c88b381c5c5742c5cb26da6eb4aa18fd2e17ed84102313a32d4a85015b37d473e720cd1a86f -25478b9d65eeb69d6a2fea9986f61e7e1a737da18e96253dc00988fb25d4497d2a59e26b966ae0e83a08b90b055219c5423668e592f2f8f133005019a4099a20 -285025e7453e94a64b3a5919afe59dcf76135bcc0b8ef72d6cb2a867236fed247c531be192bcb73eddb2ceda49c2439ba438a2a40163d0c8915f563337a0a189 -c62e7603596b588272d3955d785267052ba93bdc1e5881ae5be962167601d49a7568a14d516e2d1b6dcbd11b3c69f19fc82aeb23d435edb184d472588a0e2195 -3b36e36af93e725195ffa856775aea58e72d260fd0708d6a4e485a353c3b6b759fbb00ed8675374763492501c53a399f2a96f808769465b5328679db8843d571 -ce5d4310faa2adcd65fc7859eb4c31794429da6ae6a0af93446221e86698e735471a0fd2c5350f3b0b9a4e2ce930945daee43f725983fb881c2dd1f1499e9dcd -84eb92e2041638280e2635beb0ea510ef733d6d5b5bf0411be5afef42b5fa1b32f9cd589a1ae834b2192cd1916c92780008130f642be70b4f1e43ffa766954bc -868881eb1fd0d8771e70e41d2749aac2d1c3a7d230cb3566646df9a6d54148ed97c6b906df4e7fe592617cc15dbd15afe76a6370d5b65c22184746971b32d275 -4609883c282538aa172883468eda6b8efc3d3bde55fc6490d683d24712a1b497e17d7b575e81aa44ce178ef83cec0c713ed8749bf99ae91a6c86f85e562ba71c -c123f935eaada4960eb8751aecf884a32a69c47094c6b916401ee760ed09431ec0c17cc1df8e6317a0dc2f50c4f0fd04df33b45020f6bee628ae91732fabe9ea -dbf962398d2e75c1a3bfc811af1a9cb319bf80226259578b8465b5b358633719d8a24ff902904adb5c3ed0dd46d02d06d5d5ae34d4d8028ad84f976f1dc8b737 -ec950e175a921eb90553b8e31b470b87bbdff1e7f5d7df90e116cb1a31c56575c846e55b5bee4a7ac0910d0f2e729486810b505cfba5bddce17127d77dd868af -a40b577234b6e9bea946dda19c90a4da42f8429844f41210b9bc402e04395a95cbb7e882c251b921235d61a4eb6a278aacb4eee4641b7dde9011c275e412ce0d -e40a9d72e91dcf19e740344ae839b005bdb26e7f1f42b921a35cb9cf85454a13e1344baf58111bd8c57bf95220b9e6483be9dc0262f6e33dec8603be98808db7 -ec17ef810857ca581f47d3db5381be22c7778a4e362f310563649b7d9ebd0328e905477c01d7798977b134a2a992daae2783c4f3860c8998829c533d6fc8b8dc -3e124735fd22816c215d21097d0fe30bd148f1828fa32d9b50ea4509df73c7e7c04842b1427c093cec377e92d0ffa86d0832a9a2b6ad34c637bdc1521add815e -c4a780068edc4d15f2d6fd2786d6cdeb6c167f7127f0a64e7e2170b4ff482020542303d89954386a3b15a05fa146705e4a8a2dd2e03ae84da1080658e98fea50 -de8f40f93c9b2844e4181c8b98a4799a0e878302a00028503c05008ea5f915ade28d18a81914281305008e00475000140005340aa466cd9c0d1b28000a44a080 -7a351ff62459010b8e49b60f6c03054a430134d1ca64355a32dd043896c6d4835e245d0180a371d00438267d52817da5a10082e3b333de34719bfcdafa37b71d -f8f4932ff0b66ad757d3176f35b123aacdde5d033896c6d4835e245d0173af5f7dd1947d75f5878889988ce8fdfb0793aeb64ffbbcbb0670f42923140305f252 -00c1f1e8d1a3274e9c3873e6ccb973e7ce9f3f9f5775111e8c2cdd7d208ba2450447f42f22a339b6e790c9bb6b00c70847193455c60a2038eed9b3a7b1b1b1a9 -a909f1d1203822a71d399e456b520447f46ff3b992f2a247d7008e25e569e84c621540705cb060c1ba75eb101f8f1f3f8e82c7c49aaa358cc2d12cb3fd58ebd6 -b5a8e1d826956a936920163764dab03ffcf422d6321ed69ad59158552cdbc6111caf4b4f427c44f1235a5f8783231a68f497dae9fac269e96300bbc291b72995 -2a8c55f5699e1385eba7bea6c4c0b14d3a4d89e8c325c5d6a530f5974c470a2307d4a25100c1f18fff9cbaa1df2b9bb7ed3870a8e9eb93cd27cf64c9f661a675 -ebcc1efaa7cb9b3d13daa458b1fa2ea95497a54e0d1ec7faa9dc47194a1066366e5438b6e1f9d62e56f96882d6fc46d75497aee9d6131ae4b6724914aebc5bd7 -228f1c51a8884e0bf8fc4299c24e3ef6073c6bf07bab003d2739c7b3a348fcc99dc3ec3d6a3d74d05a1f214c93d3b055b55d3883ce58b821c924eb54e69ccce4 -76153b000ea080a200826365cfdbffedc78fd76ddcfec981a643c79abf3a9125dbee4ccb569977e99ffa370d635ab519b3db39244761ae989fca7d94a1044136 -379d74afdfad2a1f4d3882a09ea6e79fa87f22b726c1d5d0e9e6d6b538e098cd12bc117859e0a1b4b4dee9a04689ea1ccc7608e5f1a0c41f7ac391aeef71fb36 -e21c002b263164ebda85c81168984b0104c781433b5c9fbae9d90ddb673cc6d298b55fd830aa95fd67abcca663d9ba4efc47d983c79c6d47a6855d80edc1efd1 -7ee7145f87ff6c9519e55422546e7d946e6fb595aed31d852adf3496c40b2dc636480d5182680c100cab6f8fea973be2af8fb4479dea0f1e4387b419b503f717 -d5495eed17baec613d2247497d09d1b578e048b045a3427ae51147885aa83950aa4f3b51a190274f0af7ec282f47e448af7da2aadb64eab90ba0d28134962431 -2cdfb012eae69a24f079792a80e0d8afb2efddfff693ae73b7efd8d7f4d197cdfb8e64f76dcb5cdb32b306ff8bfee43769a7b6cc9186aa96a947e65b07ae79b6 -4daa63bd55618aec912bb73e6a53b50d15d61d651950ff482a5d83adc26fb88dc25130927681954495e3569ccd7f1fed435047688fae7db681b7769f6521aa9c -d9cfed711a2542497d09d3b598e0682f5bd31967c9ec078ef611f52826c485d560cd02ab539116bbfccd1fe1f08070546f2241e4589ec00bd26b1b8e1d5aa56e -1ab176fb8eb5cf5d43cfb0121c6dba91174fcc9c00551924eda135f05509652ce8a0978d2491d447d8577972c191c710d711a9516d1fad46890d4c01b5e3da3d -42a84400caf5254cd76283a3bdf4c557f174cb6a67812b112f8dae1392808f1d4586284728721477a592af47b8dc89d7e05298a99a242cab955b72c2255167c6 -f03bddde07995d50d66805101c7b76bdfd5ffef5f1c92b5fbc27d56ae08666f4cdeadd1b3357b7c8bc89ff457f1ea87f20d566f046eb4bd7e4236b27de1a06b7 -703ea23bd9816a55ca1e5ad8fba803d997ac456cfa25d6b465008d1c1d7b1cc3f8da98d94a477cf5d1b6b97dbdd0e53a2a8e4b8bb851c5605c89d497405d8b11 -8e0e95d4bb1fdced10fee6b67d9384fbaa00bb11426e95e0bb2616729d5be2b488508fd0227707460a2d9d4b39d6fd193e5655dac58025a8a73318e06834cc0a -6d3c82e3f53f4cfda66bcd9ce5993b534f54ef3bbdf5d3e6adb3bba5aead5ef476f555e85ff4e7a7cbee4d75cb586f9c8ff07b7b5b34fc3aab30f913954cdd3b -7b6fc5b5e85fe7d3c7966d65553593f7740ffbc8e5285420755dc5dba8365400bf611b8523bfd37acfb7681d88ed513ae2bb8f570ddfcb77f9aae1cb681fed6a -9161cc7ecd1eab17dd32525f6687e95ad4702cf4900b5b5f8885300e30c33608c795b902088ebf68377cd8f3b3662fdd327b007d5c265ac44e58b06f693bebdc -fae4c47da71754b5660b44eba3d39bb88dffb45d8dfdd19a0957e2037061f4273d8abc772a973ed21d45ebbfb2ea03be5df49ec251dacf0cb02b2456693ae2a7 -8fa84cebbe6bb82e5bbd43b2e063f9fa3df6901aa4be84e81ac0d1cf9cd5c4857e0e8332a0005500c1b173afa1439e9b3673e186655b3e5fb3fb2feb3e3866d0 -46e16890cd3e4d75eb5ab9c211662d2810ad02088eed9f1ad8ff99c92fd4ad5cb076efb2ad5f2c7ff7a0411b25884136fb34d5ad6b00c768a708b456ae0a2038 -3edab57f9f61d5d5b397d7addcbde89d4fded8f499411b25884136fb34d5ad6b00c7729dacd0ef681540707ce089dedd078d1d336dd1cc37b6ce5db907254634 -68a30431c8669fa6ba750de018ed1481d6ca550104c71bda3e74d7633dba0c18d77f4c4de5c4d7864e9a0f5b9215003896eb64857e47ab0082e38811235faea9 -ddba6dfbe1234da74e379f6dcec2966405008ed14e1168ad5c1540701c367ce4cc97676fdefadec1437f397ef2eca933e7614bb20200c7729dacd0ef681580c8 -31c941a2d6368063f1a748882f9cfb34ca67cdce2f873489487dd6e0d31e28e6ae00c0b1b070ec1ff6259931a862fc807e93ffdcb57ac49005037ad776ed5cdd -afcfd4cacaa9e9a7aaa28663396602cf0740dec7faaad9f9658fb6b0367f07fc10a808944770bcf4d24bd18f3cbef9cd6fa27f2fb800fdfb8dc2f2425bdbdcd4 -15da2d44d3efa5aed06eb15485d818c24b2b56ac4047f106f7fef398f367b2975ef8b38b53fff9fd4b5a7ee7e296dfb9e4b7a78e679bcf64238763196602f785 -b0108ed6a52652abd126c5a0c58a675ba80e95f041088ea9d485b5b5b5efbdb7ada9e9d0a237e6223c86c08acf43705c8558e00647f49136f652eba755b9c131 -aeaad068414d077a61a4f27d1c3ef40504c72bbefbcbf327b3e78e674f3765bf77f11f9a4f642fb9f097d1c3b16c3281abf929d81e9aa85c938dbc011342ccba -261d4a2042d1a6ff1895a2b93870420efcdb70b613678db3f39f5b2f9a11dd2aa6b196cb945ec2182b4ed76c387eab7676ed37be7141ea82d4868d6fa5be515c -38627678c051eda81a58218e60a0a08f3ce018635579c2b15f9f61e79bb3177de3877f77c5af2f4cfde46fbe7be33753bf3e792c9ec8d19a9f6590099ccba846 -10a6a410e7d3a8d16ce47c6a4b9a488d8bfeead3625e2292f3cdd9e9b14c261f8991a44d4072b090ba4d6b6d811e9f541cfa24bc5604c70b52df4491e3c30f3f -3c60c080254b96a0b391cf303044314ab43cd9c1c3b124ab1a3870704545559fdec3fbf67eb66ac8d4ae5d478c78e6a5be15c3fb0e181c47e4288545fc7cc633 -57da837961562670b50b7c2089a33401642e09771958496027208046972c918b528c8f2ee5b4952e8febd1263c8705787ef4b523c70b060c183475ea8cb973e6 -ad5eb53e95ba3804f57c1e0270d4a25c5d56233d2b870c6b3e9f6d6ece9e3c99454fe53e8d36f467f64c4c702cf94ce05a384a373a02c011cf4bbc1c5622476f -6c8586a397b5f971a22c8fb6e078015a507f33f58d8bd0fa1a91d14438e2eb987e5e5a0ca9c846033a676d3eabca590fbe368a469f7482e9d967c0b1e3d9bffa -fe55975e7af5a597fdf23bdfffe9c597ffdf33e763b821c33fb9a5843381b3ec8fceead92b7539cb462ea5407762c334914d04211757ba3e2f5882a39431d815 -e29ed6f274e397e96eefcb928652a7111c873f33f2e5d9b55bb66e3fd2d474b6b959ba5bad8ab473e766edce868606ed47fc3abd189123aa133581f938347585 -db8621e54d34cc44fc6f9e55f961222da3b56ad09067102e8f1fcf9e3c9e3d7e22fbf589ece9662b788c2d722491107d200c774b80bf1960702670e7b607eb02 -bfb29697ae046eb408394a585673f754f0a4e1c14757d66e119fae30798c0f5f9b5b9d6ef129c0d11ffa111c2fbae807177ffb07dff9de0fd073ab4f37377feb -920bf8100655839047b7c1830723086a77a232da8f8a0d478c3c9f30ca19eef98919fd70d6a73d1e55fdb9d7a053a7b3975e7acd65df6e73d965d75f7af9b5a7 -cfc601477f03a9f8a5425c412b7826f01036145f1868a1480a583f1f7c7ae4cc9956e478f8aba663279ad13d6b158e8889881a087fe80d0e0f25626232d28f50 -615c121f482b2c46e4983f869269558fde83916ea74f670f7f993df1751681f22f47ada577d4916391465ee06a8381a93899c083d910b88b7040a2144070bc29 -7551bbd4c55b366e3f78b0e9d429b4acbec21b8e7e22c788e158c0c811a3d64ffc983308f54f6d6d55e93ff73f7132fb8dd4cfbeffddffbef85badaef8eb1bbf -ffddff3a75aa6ce198a87903c6948102148e4fa5be3d3875e9b0d465a9d40fbc97d57e22477e195eecc8d1cf3547efab7b3472f473cdd16755fec9e87625f4e9 -e1632d479cce9e3d993d7d327be4b075f1110592e51a3996c16c842e264a0104c7aaaa913367d46e7c67bb03c77f92e08896c6fc0b478eea4e7acd51faa8d870 -2cd56b8efd078db8fcf27fba20f5af975e7ccd772f6dfdd7dfbbeee20b7ffaf77f7715c0315133088c2959057491e33ff07014beab1af60fb8e6e81d486a97d5 -4fa6fba22f399e3d933d73ca8a1cd1867e587dfc6b881c4b763242c792a50085e3e6addb0f7ed574e234ba2163de97c04bf29ae3e0a123d177bfbf73d94f2ebe -f0df2ffff67f7cef3bff817e6d7dfe2cc031593308ac295905acbbd5c350b2dbda0d9bb61f38dc740a7dcfb1c88927909481aec7e5fc72a29f6b8ee84b8b7ebe -7fe3e79aa3cfaa02f5511b390e1838047db7b1f9ac1530a27fbffedabae6887e700dcbea929d8dd0b1442980e078e185fffcad6ffdf32597fdcbfe434d879a4e -a62e2a62cab2227d69a68091a39ffbd47e389b3f1c7bf7e977f1c57f954afd6d2af5f7e8df4b2efa5fdfbaf06f52a9cb018e899a41604cc92a6025bb1d3e7296 -fd0c99435f5991e325977fcfe70fa543142b121cfd93a8d8dfbf296007dde4657044ce830d1400050aab00853d4e59964a5d94bae0f254eab20b2fba02fd1b82 -7a3e0fc1211efa37e80b192c3551f255e58663c99eb2a163a040021488fe3109a13badc2a2e4abd2f21196d5a1fd0e0782020114881e8e3e634c280691638071 -0c454181822b0070348ec21039167c164085a08046018023c011260628000a001ce5bb3ac691b18cb3f2c0fc0505a255002247e3f8186659fd44e70efcf6e8e3 -0fa32dda9106ad8102862900702c7d38222c6e565e6bd7ae79f0e1fb0d1bad602e2810a10200c7d28763fb8e8fad58513ffef97168abce4c985533dd6d1b3f71 -4c84630f9a020512ad00c0b1f4e18856d0ebd7af9f69bf10163dc6a3f7a7891ec8605c89299080a4eb00c7d287e3fd0fde4b23478cbfe3c7bf5637b4df0d8ed2 -63a6c24cc318c7ba47d3315a1546c49238c6798a197b66add60b399f5eebfae0effab4f4c032f4a048798f2f25018ea50fc77beebd4b8a1c1119376edcc06f68 -8f1b1c9de794e2f1640ded5023cdd7708cba10c0315ac5edb32c7b246d7dda7eef138eea336915e3c9599c1ba0ea1eff3d063896051cf3891cd3120cf118d53e -3d998d7bc4d074bd5d26633dd69ebcc747913d74906aab22c55878418a5b85d36934c5ec9735b7a43a59946b4f3cfe415bec23f9f1b2a5837bff533f86926e14 -24dec4cfb615060c6fa40f385ac5d546c29e02018ea50fc73fdd75bb47e4b87bf72ebcc4768b1c2d140a1389818fec77069ffd81135fa2777c9c4091ca470eb8 -5a3d67b9aa7803f838163fc55e8846d883edadddd81a523fb34e7878347031324a3297884dd201a00e180f38ba2dab018ee8f901e5ba05fe9ee31f6fbf15458e -f7f7aafe8f87a7e7dc5a76982c4d16ff70b4c23412aed9c871090945d4e62a268d75e14ffbb9d4f57624abe52cb686e33237a1dc177491c1a2dc1a728be07838 -6a5cc95fa414624c7920a963c06d8f3fe52172340eb261e088224784c5b5bbbf5cfeee7e8f0d1540c5a491e377594d8234041de7fa77d2e0a8068961175cfe26 -17949214b04f662ad272c0d1a90496d5e51a0ffa67741838a2c811516feebac611afed76dbaae6ee9cb9f263158efc4296dd90e196487c01f43e8dae1ce119e0 -1f8ece1a9a54e5310df88ff05c936349b6985696d5dcbd001a5328fbecab01ce4d03b7f7c0bd500a089740acc1e4c4ef7c8cef2700f438abc1b2ba8c191a068e -38729cb3ae71f8abbb101cd1bfc3ea763d3d7767e52b3b06d46cef33f3ddee2f6dedfae296ccd2bd2a1c31e5e88294de6ba43bf17574b6b0e5c922ad925cc6b4 -5c95371cd9da58b73466b67280936fc0b03beefc0d1b32df018ea1c0e7f3207e2cd19142bc200d2429caf41139aa03553b747d9a0acb6aff215b424a8681238a -1cefe83e69d2d2bd5d5ed8dc65f2964e933777ca6c7e22b3b9e3a4cd1d266d6a5fbdf9f1899b1e9bb869ecc20fb470f43998a228166221ecb2988bc25a68c364 -05008e09419e7f33c2c0b1a6b6a6aa6e17e260876a84c24d160a276c7a64c2c687276c7af8f98d0f8ddff8e0b88dd54b3ebaf5c9f1adefe999e8f11c0c8e9ab8 -30d1bd03e392a400c0d13f95125232301cafb9af2ae74d6a5ce0dafb86246970822da0409c0a001c13823cff660486639ce30bda06058c5500e0e89f4a092909 -703476b681e1462900704c08f2fc9b0170346a8681b1c62a80e0386cf8c8992fcfdebcf5bd8387fe72fce4d95367cec3966405008ec6ce3630dc28052072f41f -b225a424c0d1a81906c61aab0082e30d6d1fbaebb11e5d068ceb3fa6a672e26b4327cd872dc90a001c8d9d6d60b8510a203876eed4a572f0d019d3672d5db27c -f5aa756bd7ac872dc90a240a8e2c0b8e51c31e8c2d7705d0cfac724a80e058d16fc0c40993962f5bb16be7fbfb1a3efdf4932f604bb20251c391fd7250c91ac0 -6501cb39d2721508f6edee5cb505fa3cd00f7503d50c8593aa00fe0daab775088e7ffba35bfffedf1efcdfbfeafdc3df8cf8d16fc7fca8e558d892ac40e470d4 -fe6e3aa983bec076c588ec02f704aa1314a03fd0f7d005c1f117373e79eddd4fdfd4b5e64f0356dc33747dbbaa77604bb202f1c191e66b44038afda0df61a794 -f1419b9207528503a392a1009f2ad7cd2204c7df3fd0f74fddc7771af346df99ef0d9cfbe1e0571b604bb202f1c191657050b36a2b29b875395420557832c800 -56647d468efff0cbc7ffef6f2bfedf2d93fffd9ef93fbd7fe9cf1e7813b6242b10391ce93812d6d7fca9d779440c9e7438e59736c114a40a072e2543019fd71c -7fdcf2f15fddd2aff5c3999bbacefb9f1e4b6eedb90cb6242b10391c5932442543221de8120adde0688113528527030fe56d45cebb31481eb4acfe71ebc77f75 -6bbfd68f666e7a6adefff45e726b9f65b025598198e088060b5b3aabdfe0d12daba5fcde4e5809a9c2cb9b4bc6f41ec1f1dfaf6b7fe56dfdaf7bec859bbb2f40 -50b8adef72d892ac407c7024b7619c876749cb6d250537a40a37060360a84e0104c79f5cdfe1cab603aeef30e50f3d17de56b1fc8ffd57c0966405a286a36113 -27c4976f2055b8613e8ec85c0b8ebfeb78e5ed03afef38f50fbd17df86c83870256c495600e0e8393782c111528547041a139b4170fce90d4ffcface41bfebf2 -d2ad156fdc3ef8ad3b86ac822dc90a001c4d9c6860b3790a5891e38d9daeba6bf0f54f4ebf65c0923f0e59d5f6e935b025590180a379d30c2c36510180639239 -a8b50de068e244039bcd53c05a56dfd4e5d7ed86fceea999b70e7ef3f6616bef18f1366c495600e068de34038b4d5400c1f167373f79f5bd4fffbe7bcd6d4356 -dc3162fd9f46be035b921500389a38d1c066f3144070fcf92dddaeb97fd88d3d6b6faf5a75d7a88d773fbb19b6242b0070346f9a81c5262a60c331fd5f0f0cbf -b1e72b6d87adbe73f4a6bbc66c812dc90a001c4d9c6860b3790a20385e7367cfdf771c73f790058f4fd8d4e9c59d9da7ee812dc90a94341c837d4bd1bcf90616 -1ba40082e36feeea7563a7e7ee7d7a61c7495b9e7c6977d7e91fc0966405a2862397091cfd60d0c93d51a4315e0c3842a2ef2239abd4ab4570fc6dbbbe7f7872 -fc8323967499b2bdfbacbd7faef918b6242b10391c69a6b208264331e0e86176c4cd45202034513805101c5bdd57f13fe9090f8f7eb3dbf45d3d6b3fee35a711 -b6242b9000384a69c06dc464d2765c69bd4fa7ed68d3fe03bfb107acc7517440535aa999c67119ae7e5233dfbad08add2cfffb40b94eb7360a37bda026931540 -70bcee817eb73df5fc63cf2eed3e63479f391ff5addb075b9215881c8e7c5a5b0b744a1a701b321c01ed50d3a292f3c6fadff328198e6aa671a784d59613cae2 -34697ceb5c56359c72d7e1a9ce00825acb58788102aa02088ed73fd8af6d8f091dc62eebf9f2ce8a571bfacffb04b6242b10391ca565358bb730355d927ef331 -20aac1fb28098e6a6135b4b4f6d8e974eaadb895004ecdb94b09a8ad1396d500457705101c7ff748c51dbd273c31e1cd3e73760d78fde3418b1a614bb2020980 -a38a4b154f2a1c3d8e52e1e876a153c0594038aa75021c018e39e0d8cf86e3b23e73760e78bd61d0a24f604bb20271c3915bba927125c56bf4b10ac21b2579b8 -164c64a79a699c5b5653c6e13c8c322ed9625a59562bf7dad9da1b20010ac80aa0c8f186c7fbdfd5afba4b6679ff79bb2b977c3274d967b0255981d8e1c8df5a -b1af2bfa82a3e751eaaa995f05f3119fb03ab6af294a9065059427dee8ea84848e00453705101c6f6a5f714fff89e917960f5ab0ab6ad9bee1cb3f852dc90a44 -0dc7644d9e100b6148f49d2c171a630d82e3cd1dfadf3ba0bafb94fa210bf78c58de3872c5e7b025590180a3fffbcb10171a43a2041a8ae0f88727fadf3fa8ba -c74bf54fbfb167e45b8da3577d0e5b9215286f3826700e814925aa00c031c91cd4da06702cd1b908dd4a9802088e2defa9b8a5f3848787bdd975f2ae1ed33fee -39b311b6242b00704cd81c02734a540104c7410307bf907971d5ca351f7df8f1fecf0f7e79e0306c495600e058a27311ba953005008e49e6a0d6368063c2e610 -9853a20a2038de72f7e3f777aee85935b92a337fd4b4a5cfce7833e26df26bebdfdc76e0d34fbec0dbaa5d5f4d5fbc35621bf2692e62fb018e253a17a15b0953 -00c171e4c891b5b5b5dbb76f6f6a6a6a6e6e8edec02f9ab2afaefe1031119311bd7fff60f456846f3162fb018ee15d05478202fe1548021ccf9fcfee3e9045d1 -228223fa179111ed31e815b1fd0c8ec879b08102a0406115a0e849021c9131478e67d1c216c111fddb7cce20301253a3b41f2247f3c607586ca202098123928e -c2d14419a3b41fe068e80801b30d538087e3eb9db8b4cd85ed878f5fc48681a38f6aad7ef829e6a78ca72661ecf716599bcf219b053816766c426da0805e0104 -c761c347ce7cb976d3d617dba73a2d3ad97cf24cb6f0db8799d6ad337bf87f9556285c02b4eea35aab365cccbb5f7eca78d6e0667feea6ddaa75e91dc0112633 -28108502088e955523a7cca85dbb60e06f7ef3dcd663cd5f9dc8167edb9d69d92af32eae997fcfb545e182ca349df467838f6a3d5a14bae962957f29dcec671d -0f2aac4bef008e514c0c6803144070fcc77f6a71fd8fe97342bad51dcbd6d9eb6bfc6abf307bf018daeadb4b7b76645a903d6d46edb0cb78ed49a55a6536a102 -add2ed5bd987a13fad6ad946e1c2efccbf5a5243abcc28a753a44792b5966da285a93492426300eb8553c02ee6663feeacd57aa77adc35246f8b4e6926056d48 -14c4d29398241a867c0603171400058aad009a683f4cfdcbdd236a97ce1d78f56f9e5bf565f3be2359b66dcb5cdb32b3e6484355cbd423f3f1fefa47526daab6 -a13de85f7b0f2ba3ee718e9a9f4ea17a7049529e6bc56e91c24530e04856d750806a898529e710376ba96d56ef2c7bd63cdb26d5b17e9fd577b15fa8a4538637 -d5cd7e5b405ba554ba860898aee12a711a920521c232c3481720722cf6a480fa41014b010b8e3fba7df014118ed6d4755e5a9cf105ac826daae67387d03d980b -14a0a1e0c82c09552d876fd112e1997ab6fd524f31ceb43da5fde24e2439e078245bd3d1a61b3a4f20e6f26708c64d918fbc5c5c7980234c5d50200a05101cff -cf3fde5e91a95d307be095d73cb7f4f3e6dd07ea1f48b519bcd1fa62f6ee8d99ab5b64dec4ffa23fe986f6a4d22fe5dc438fe2eb516bb3eba17061add8fb350d -05a996f5025b4b2d51ed977aea5d92efbbb7fdd4daba74aa7dfd4bed6d6d79115c0411c4e7ca001ca39818d0062880e0f8831fb6ed3db166ceccfebfbc7acceb -fb4e6ffd74d9bda96e994f9bb7a26d76b7d4b5d58b3edd5b716deaded9f61eebd3eb2adee6f6bc5d7d9555de6bcfa2e1d759f5a092f45f5c3fb751384afb59d3 -4a437eaab56ac3ede2b6c87bc55a6a9bd377abf2c7966d55fbc5d7e6c37ed6b4255dcad6d336436e48168498aa180670d44ddbbcbf8a052c000524056c38feb1 -e7f3b3664feff79f578f9ef7d1894dfb4e2fa86acd169dd74e58b0eff4a67d4bdb39bbdad5a03ff93dadfbae71d9b366c295f8a86b5b5f89ea417f5ab5e1aa9e -9c6855c2360a477ea7bea120d55a359076edb6d87bda23db7ebcdffab7b56333eeb8d253be361ff6f39d9df848eacaaa0f1c33d486044138936cc3a84b22be21 -d346bc00e1ff1905ae93cd0d64f9002e9f63dd0cf5a8b318cd019c12a6009a689d7b0d1df2dcb4990b372cdbf2f99add7f59f7c1b158360ac7585a278dae18fb -cbabc7d68552c087fd0bef4a751a872bcfa3a1a823c7366e8f902ef850ce8738f91c1ba223113717c24238246f05101cdb3f35b0ff33935fa85bb960edde655b -bf58feeec158360a97bc5baf6b2bc43ad6f79146f9ecd4e251bfb86ad42c9f85c56239ec9f6c7d15ea17fd3791de691af26b76dc70b4b99049138dade79fb23d -ceb3529d2f799130537a26aa4316b6dbe22ff7573aed34a1ab506a0ecf014a2bb1523641ac02a85e3f66db8df2cfe692eb746b23efe9081524490104c747bbf6 -ef33acba7af6f2ba95bb17bdf3c91b9b3e8b65a37089a5f5fc1b8dccfec8e1c89f6af053aa5329f24c68fcd4537e8f0515e981d11666c82e8c30fa2fab467c02 -b57785c2a7ce642270545be70a58b6da7f628be4568835d66e6cae479d103926896245b205c1f181277a771f3476ccb44533dfd83a77e51e944e31968dc22596 -d6f36f3432fb2387a3b4ace6b9c0c38e467042dc6e3388d62094c7b199435229fae30ff1a8904e0b065cbeb4ae7242c736997ac530d6050ed67cd84b0d063816 -094849aa16c1f186b60fddf5588f2e03c6f51f535339f1b5a193e6c3966405120f4709a638bae417bf02593844f24b63e9107ece68c1a4625a9a6672a341e0a8 -5e75053826896245b205c171c488912fd7d46eddb6fdf091a653a79bcf3667614bb202c9862359b2f2c395a3a3b8ac4eb34b92367ee88256a1271701ba245962 -4b603e16e5cce0eba4570318f5d8da5fb7ac56ea64858a3431a1daf8154070bce79e7bbb74ee3a7cd8332f4c9e3a63facb85cdaa0bb5155c81c8e1287d95475d -8d4a6114bf0ec5f4c1d1217ed16b8edc5eca287217c4be2143824dbcdcd61c2e4e1e3eeae40bf3eb6e6684788953be20205d33550cb0cbf3376ce29fc7604111 -144053f7f737dcf4a7bbda75eef254bffe8307550eab1c3a02b6242b10351c0b39eab8fb2585acd64f5d2116c2fc05013f4d4099d252203999c04b4bd722f6c6 -3c387281a3b03e2ea2486ad5c1e0087161a4ce49666300c764fac5c32af3e0689cc4603028801400381a370c008ec6b90c0c36520180a3716e03381ae73230d8 -4805008ec6b90de0689ccbc060231500381ae73680a3712e03838d5400e0689cdb008ec6b90c0c36520180a3716e03381ae73230d84805008ec6b90de0a87359 -b0af311ae77430380605008e31889e5f9351c31132816bfc052cce6f101b7134c0d10837f146460e47c804ae8e1180a371f326b8c100c7e09ac57c44dc70b4b9 -0099c0691a0d3a1c587e0c7c3a617f2b792e1cb6ca87c43cb4a079410180a3710322723842267039b7b92e6d1a97c4ac3e8d68a8e440e3834d9aba4dca856edc -602c6983018ec6b93772384226702915398e0ae5ab0d6262730985f8a90c72065f2517ba7183b1a40d06381ae7dec4c3b1ac33813bbcf305473cf60091099d83 -00c7843ac6ddac64c3b16c33813764c4c4e6ba6535f79c319cf457ce852e5cbfe472eef2eb7a974ce7c68de3e41b0c704cbe8f240b238723640257739b6b3281 -b3ac952474966ec8707768ac67c45a859443008e499a8e00c72479c3972d51c3d197513e0b4126709f4241b1042800704c80138299601e1c211378300f43e964 -2800704c861f0258611e1c03740e8a8202895100e0981857f83504e0e8572928070ae4a300c0311ff5623916e0188becd068d929007034cee50047e35c06061b -a900c0d138b7011c8d7319186ca4020047e3dc067034ce6560b0910a001c8d731bc0d1389781c1462a007034ce6dc983a39a852144bac3108718e73a30d82805 -008e46b9cb32366a387299c09d5ffb4a9ab9c13110ef0215f6e9348f3a8bd19c4faba098210a001c0d711433337238d22c3be8972edaace026468e0047e3067e -e406031c23973cdf06e383a39528419797d0020d4aa5c0e5c6a6c95ce59cd8f6df2c9738178a525ab965c7165ab153d348f548891ef08f16b5067049ba237b06 -44be6e87e3235700e018b9e4f936181b1c2df8d889b6e4a4ade403ab6342195292cb36c132602b89b7dc0a53b9b856485e349b860e5f951461d81a92fc864bff -4571095ccc772896f8f10047e31c1c391c69ca32152b528448e8e844971c0ab9b46762ecc9b30f93574dbb8dcb080b617b855fafe6d6764a6266ba1920d766dc -180083a35000e01885ca056d237238067e4c8202478f1a5438ba0574f9c051ad13ae391674509664650047e3dc9a00382a19ade942db8afc50d02644946cc14b -b4d682892d815d525df347e15b43322ec981c4066159ad5bc5abedb023f105025d2e6ee3c60b181c5601806358e5623b2e6e38aa19adf9b530bff4a6f0920a78 -c1917fa2a9733b852eabd98a5b79d82959d1e312ba2b8cd2c5014d2a6f7720f2a08ccdefd070d40a001ca3563ceff6a28663de0617a882100b61b7ef1e15c822 -a8a6b41500381ae75f80a31f97f15fe4f1531eca8002b2020047e3c644b9c2d1384781c1862b007034ce810047e35c06061ba900c0d138b7011c8d7319186ca4 -020047e3dc067034ce6560b0910a001c8d731bc0d1389781c1462a007034ce6d0047e35c06061ba900c0d138b7011c8d7319186ca4020047e3dcc6e0889c071b -28000a1456014a0480a3c17034ce7430181430480180a341cec2a6c2b2da389781c1462a007034ce6d0047e35c06061ba900c0d138b7011c8d7319186ca40200 -47e3dc067034ce6560b0910a001c8d731bc0d1389781c1462a007034ce6d0047e35c06061ba900c0d138b78581e333afeded3debc35e333fec35fdfd9e2fedee -3e65c7532f6cef36f9ddaed55bba4cdcdc79fc3b1dc7aeef55bdda382dc06050a0780a001c8ba76d916a0e0cc7ca57f68e7963bf9fadf3e8b78a6434540b0a18 -a700c0d138970586238a19f9ad62dab625c36e5b30e4e6dabeff5d317d1bffd123c3571827876c7088a72918df67e840511400381645d662561a188ebda67f40 -ed3973a26943f5bd5ba63db2f2f97b36bfdcf9b5c1379d3979947efae0d03755cb9d07493b4fad2a78df0a8bb3c2d6863beb5167319a2bb8c250612805008ea1 -648bf3a0c070ec396d0fb2f7f4d9e6af8f7df54ee6c18d2fb45b31bedd8637a62e1971f3eac9ed6bfaded4f0f1671f7d6121f2beca259a9e157bfe17b6fec2d6 -96d3d1113797d31e28503805008e85d332a29a82c3f1a5ddc8b433e7ce6d9af2e8a6971eaa1f77f79e5ddb8f9d3abf63c3b2593d5acf1f7ed7e42ed7ef3f7402 -9569376091171c6d1064d2e421a73892644f5d250f924ea7a550532881abc74fbfc20f51153f960af3e8e19e856ddb2046b2dac7c39246f0e3629d97558f6824 -eb97f3c457be8bfca3bae4be68fa16d12880668aaf00c0b1f81a17b885c07044f7a69109cde7cead9970078a193ffee8fda663c78f1c397cf4eb93dbd7bff5dc -fd578fbafb57878e9e4265eeeef77a0e385226e1a79e720f74ae4f63d03924b298825883fe939e22ad3c049a115029ac85a3cc45425bd20c39446d9783a364a4 -8d38c74a6237e13e3d0358ddd2d509916381877782aa033826c819fe4c090c47f4ad1d0b8ee7cf9f3d77eeb5b9b34f9d691e346860b76eddfaf5eb87f6f74977 -397af2ecd1e367d1fb3bfbcccb193992208c31880be20452d8f8acb7b8c3bd6c808a911cbba2c7477f34aca485b9c8910f0449f8aa1693da1522471a4a3a464a -87e3c214e3b469b54e80a3bf516b622980a3715e0b0cc76e996d188e687be595da13c74f3cfdf4d393274faea8a8c89e3f5f5131f0c499b35f9fb2e07847af57 -03c21117c72b4f097c0a7728713ce0e8f611461559b90bab6457384a5515048e6a9d0047e326906f83018ebea54a4ac1c070ecfcfc4664fb9acf568d7a7b6487 -290feffe64f7b8e7c6cd9a356bc8e0219b0f6de8fafa6343970dae7de71554e6b6a7ac7fe5179dffba456e9a90cafe0cc589141f78dd6d7353bd3a28ec61eb6c -a530b704274b763d8c486324dad3b7eb748baf815e1c60d4f35e564b7de1a2cba40c0fb0a3600a001c0b26655415058663a7b11b906dede73c70ffb43fdd3cf4 -f7dd7b3dd5b3474fb4a6eedebd7bfb818f3e3ae3de9bc7b4695b752b2a736bb7d96a2fd8fd15158edcad150b2fc2ba98bbd44857a398415c315c88ddf3e06bb0 -0bd31dd64d14b7c89156914a9162622bf41a230933d9ead8b903c38784cc06e96aa960b970dd12b5ab84b3518d0768a7580a001c8ba56cd1ea0d0cc78e63de46 -c61cfefad081a6037b3fdafbe1871feed9b36797fddab173c79ef7f77cf6e5675f367d89cadcd2b5262fb38d586386309205a679c903079ba500c0d12c7f216b -03c3f196276b1e1bb90afdfae5a1a797df5fb9f4de416fdcdd6f01baf77247efd76eef39b76df739b73d557b6bb71a540c6d79c911823b79b517eae06046f25f -e409d51c1c64ac020047e35c17188ec6f5100c060592a000c031095e086403c031905c50181408a900c031a470f11d06708c4f7b68b99c1400381ae76d80a371 -2e03838d5400e0689cdb02c371c82b7ba564b73da7bae6bb7df2b955c62902068302c55000e0580c558b5a676038a264b79b3f6c9af2d64135dfed9ab737a19d -f8dfec43ad66adde0ff96e8bea3ca8dc2005008e06390b9b1a188ed60312a67fd0739af580841e5377757f7147fa85f7d06f0aad67243cbfa9d338eb19091d9e -5df7f8a8d58f3e637de3c73845c06050a0180a001c8ba16a51eb0c0c4744c6edb95eef392f6dbedba2f62777e5c1be9998bb3e28114c016ffd9dfc73054e869c -00a7031c838d9304940e0c479cec567abdfffefb3367ce44e927d6ac59c37fa4cd77abfca8cf4506edafb0f397ac18f3c4a3ce623497bf0851d6c0f99bfc2ad4 -352108f7e3219fbab1649eceafeeb5077ad726fc50554aee599f967fcba9eef1a526c0d1974c492a141c8e76b2db73dcebd8b163888cfbf6ed7bf7dd77172d5a -74ead4a993274f1e3f7e1c1553f3dd928c0f44026b68bbfe8ed8e7f408aa6691aa753323e2e682aa51f4f2fc8f25ad2c9d399e1221e7eb14ed13c5b499c6424c -bb7697a750a85ed0fcb45fd68230931ba0ea1efffa011cfd6b95909281e18893ddf270443faf7efdf5d73ffffcf3eaeaea79f3e6cd9f3f7fc992258898a8989a -ef1667d7612f3c46ad7fa5a4dfec6caecbfec0a681572e715e63295ef5981baa31766196309c55659b01c9bdbdc63297d317176362e2cc7414675c10c80d0661 -b8088c730b119d8ced766e11e2b55070a4d6f203d60bee9e731ae09810e4f93723301c71b25b0cc7e6e6e6b367cfa2c41388893b77ee9c3265ca98316356ac58 -316cd8b0a347adc7c8a8f96ee5dcb43821361f4fd22c5ff2b25a49ffc5470eda5ce24c062e7d19c3b1436969e6a8c608210a24f7f63fbaac92847934c2d37a8d -2658d2e609a60d4aa73425e59b8033bea19c70f495cc98c15dc0a53f3d008efe744a50a9c07024c96e6d2c9e397306ada06b6b6bdf79e71db4a65ebf7e3dfa77 -eddab5a3468dc27054f3ddbac251c881e8e417e3e78c3a3134d19f93285752582d99237284e4de851ea3d4331ebe70750a7f6551080c359092cfa912d18254e5 -c4b91039167a3498515f6038a2afeca09e212ca26b8babde3b3c6ace47d3ea56efd8b163e9d2a5e8ca230a1e478f1ebd6edd3a0cc7b63de64832b82fab451ea1 -f1288d725f70c4ad29888c0c8e90dcdb6bd83bab04b78755789cb170b54200e892fa2d071c1dfb72b6a56911224733a056282b03c31167024701e39a1d8787d6 -7cfceaba2ffb4cdd3b6ec6b29a9a1a14396edab469fffefd888c188e6a32707ecd8a2926dfc1a463de2aca5f62d72dab956926e41267677c25b937ad1ce79c95 -d2d34a19c8e539499673ac0e52805bbc53ff700d319ff13bddde17cac3f1d6837ac72fa8a504c35837379ca9ab667175ccaf9bed53227ddca3726726e7b2daed -b6a0f78141b485657510b5125136301c7126f0b53bffd26f1a22e3a1d7371c9eb6fcc04323adbb34ea4b9b0cdc1ed3c21359f549bfe9ad0e9cb51b070efc71ae -cb6aab90fa050c7c28bdbd432b63377c68b050ece4dee50347c1b5e2d5121a096ae128dee822434b41153f9684473ef259dce59053090055023a45a481aa19ba -be6731c0d1b754492918188e2813f8e6cd9b7bbcb877ceea2fe7bd7da8e6ad837da67e54356deb860d1bde7efb6d74c1117dd571d5aa552b57aeacababf39b0c -dc6574c62352086320b9773cae32a95580a349deb26d0d0cc7279e5d8532813f3a664f66f1e733ea0fa4277df8c78a35aec9c0bb4cf3a548081ef9aa3754a160 -c64072ef502297df410047e37c1e188eb487b70cdaf1bbbedb5af6b49ed40a2f500014f05600e068dc08090f47e3ba0a068302312a00708c51fc704d031cc3e9 -06478102c114003806d32b01a5018e0970029850060a001c8d7332c0d1389781c1462a007034ce6df9c2b175afe57833aee760302810a50200c728d52e485b21 -e1488188de2cdbd488e108942c884ba092925400e0689c5bc3c0110371c8ac77d19b8746af9bbcf87df42f7a8ff65050265788605f632c443fa26fb11056431d -855500e058583d23a82d241c11071113d56dd4f4e5e3aaa74c9a3469e2c4896ed6f3bfc172cd748b0e76f95559bea244892ae9b7c3aae9511a93af70707c5e0a -001cf3922f8e83c3c011afa01119fb4cdd725daf256d87ac42ff0e9cb16df2ebdbc74d7c01a5e7993b77eef8f1e3b5ddb1c82864272bf54ce03ce5018e710cf1 -84b409704c8823fc9b11188ef8c2225e4d2326feb643063576ed83a37ed7674966ceea575fadfbecb3cf6a6b5f41291d478e1cf9cc33cf48a6189009dcb29865 -fd23a9aae58417246f39ced3cb65b416f3998b91231732cb8934486a222757a19566434dab61ef6109c9fd3b194a2640018063029c10cc843070441716f1821a -c58cb435f47ed29c55f35e5f84b2960d1d366aead4a968715d55552599634026703b910cf7f43b6d06729b6ef411382c0fb91315e383dc96d5f4d9018c80dce3 -04d4a3e81efe9929c11c0da5635600e018b30382371f068e3472bcb1e2cdb60317a1465b769e7167c56b53aa9f9f337ff1962d5bd0ca1ae5e679f1c5172b2b2b -fdc231a199c095088e228f5f2f6b2068f3b25ec957487360490f0610726fd991a84be488980c2f131500381ae7b5c070c43dc437acd135478b8f435675185473 -64dee07d2ff75bb37af5b499352fbef8c2b871e3060e1ca8ca615a26f0c2c191bfdaaade6b52efcc001c8d9b4c9e06031c8df3671838e26fedd05bd5750b561f -5d382cbbe1a5ecf2611f553fd663d0b31e2ae86fc8f020883d13b89f65b51af74939aee9429beee7fac844602b78258b38b7b827e5dd6e6df39701dcde1b3730 -4bce6080a3712e0d0947fa3dc78163e71d7d7d6876cdc4ece2caec5be34e55b7bda3f75c6f15f81524b9b4272c2af927110bb9bb23ca048ed7cb7cae72f6a798 -7f5f0a00d55e88cb6d7a9787cf3dcef241f2873b39b385ece50047e3a6176730c0d138ef8581235e56e35fc534cee8995d3321bb704076d9884363efecd4dbba -791df8e536ed035714eb01a5d18b58252ce1c6018ec63937241c693fcfce7834bb727c76e9f0ecf89bc277be34b0521abd08ef4538d24b0180a371e3235f385a -1d9e7053f699ff32aee760302810a50200c728d52e485b858063410c814a4081925600e0689c7b018ec6b90c0c36520180a3716e03381ae73230d84805008ec6 -b90de0689ccbc060231500381ae73680a3712e03838d5400e0689cdb008ec6b90c0c36520180a3716e4b0c1c9d9f8f58bf41e1df4b8a86fe2e61ce03731608e4 -dbc2d616a869289c4805008e89748b9751b1c0d1fea19c90049cfea01ad9eabcd7f2253474721e28fed44fd62ce7e179415cf8e121f9c9a095134d7c89a5b8a4 -6ac68dba723418e0689cd7e380a3051a941496a3a3ff74094121451d92f340ef02390fcf0b8ecec1fe6db041097c3468be011c0d721636350638620270b1224b -bb9d6ad386667cb0734ee0f089cbcb9da1d9b09dfcdbe873165239091bd48cd90e77b8f04b7c808d18398a557afd25b89c0fee74d9be5563e5c379a3586d62c2 -0b7c0c25a954ccb831581e06031c8df373f47074e634bf92e623267ece3b4f0f6021121f31911a7439b4d5a84a0dcab8e3186b28229db0ac3e2d8149698ef99c -4b3b469ad3da467a436ae6878c60a42e03b97c2d0255a514336e0c9687c10047e3fc1c391cd9fce7e8e80147096a6a49f14a9c9c435b5d56abc11d1f8831a891 -07c3900a34611abe36c82d6dfdd846a2609705b15607126d8ab9c14940ad240c87a57652a720c031a99e71b52b6a384a282391509e70941ef0aa068974116a35 -ef94d6625789dd08fee4785627a8168efa87cfe20b050a2203c19106b9b409ab77701d32a17310e09850c7b89b15351c85e9cb27fde667b890675b9cf11a7ce8 -7268ab485250c273525d56a7c9cd62a73d6685d29cb0ac66b4b721acb14dae39e4b29ad6ecb9ace6c5737b6fdc9835d36080a3717e8b1a8ee2d30775dfda5163 -342eda4cdb37641af8853059753a99bba5c71528cb6a6d3a6e198edc2d20da9a47ca6ef1aaa35bf6727c7f89dd5cd2c4946a302b3d12963e9f8bff2614d34717 -8ad25812e018ebec0438c62a7f98c6a38663181be11850c07c05008ec6f910e0689ccbc060231500381ae73680a3712e03838d5400e0689cdb008ec6b90c0c36 -520180a3716e03381ae73230d84805008ec6b90de0689ccbc060231500381ae73680a3712e03838d5400e0689cdb008ec6b90c0c36520180a3716e03381ae732 -30d84805008ec6b98dc111390f3650001428ac029408004783e1689ce96030286090020047839c854d8565b5712e03838d5400e0689cdb008ec6b90c0c365201 -80a3716e03381ae73230d84805008ec6b90de0689ccbc060231500381ae73680a3712e03838d5400e0689cdb008ec6b90c0c36520180a3716e03381ae73230d8 -4805008ec6b90de0689ccbc060231500381ae7b63280a3f66184aaa39c87bb681edfe7b3063fcecf59157d1098f01c41dd53bd7256e5c71ea3cb782be0e1d038 -7a0d708c43f5bcda8c058ef613a1f8e74b059ae7810a23717c95d73dea8b0aabd6e0ab4e9d63721ea83e70356b3d94cb15d97e9e199bd70829dcc11e7dcf290b -b6827bd49a357cbcfce2f254746d6fb86ae5679123ede507a1a97b7c490470f42553920ac501476b4ca7d3e273080368e2732279a04d6d8c7f329ff653fde3a7 -03584d8ae6349e14f03103d5471516cac8e0ddcaf7889cb2580d70bc43efd1e9c29bb6fc6317dd1ed54b99ab938e3093fb48dde3bfe30047ff5a25a4640c70c4 -439a8d74f6cc533e34b043257ef493f7ec2c4f6207f2b4527b08db653269b48b8bb4f8d88a2fcc3cc01e976a3f56153ffa95edc4cf83b5abb55e56d56e756a0d -10431e52bfd80f668b8a3cc9663ecc61cfa1cd2d8bdd29c772173ba5c84ca7bf632939c3c99a30f1595db62ff45ea64f28d73b469c244a00cd7a21f98573a875 -1ad655ae195aba29e9159c069bc200c7607a25a074f47074861b1f07d070c9a11a89e4b42398ede4660bde694f487905ca2a773ef118f11c82593d7cb5d86cb7 -3ab506d86020b5e53446b04de9a05a158f698675b1a7aa8c7a3bb9f1885bf6208855831353e1fe0975b22e1357b2539dda299f973e9cf315758cab5fb4a75571 -b6495d630f047739b3d2a3d5c1e36f1a031cfde994a05291c351409b33bb28dae812064f296f38da73837b89e5a5d1ac16e6bd2021469a005ab8382cf66b8014 -b8f9998dde1d9444e3bbe0218b2ab5a4033d969d03b89053cf08fb8c516f9f9ff86ed2f7f8d4409b56fb1e8838382ed4b25b73aa90c82bae126c4bbcaef1a886 -053295d316e09820ecf933256a384af39dcca6d070942e156907ae370ea4c9ac2dec0147ff06487074bb3ee811acb1e08ba3958a03eff9eca186e51bcfd395eb -3db48070f4be02e86be0dae1a79b5fb44249d57aebec1127021c7d39a8140a450d473b207484a32b6b32e094b5188e1f1d147057ebf04ee50b2e1e70540b7b44 -8ef66d5161592dc5448ac1a432fdcc6157101cfee8be9aa3c65c1a9b95aa8480d15d1649462fa12c3b889d5afd553b854b0df863ef65b5eed287ee86bc30c390 -31fc825a1bd8ba458e6ae500c752c05771fb10351cc57bd4ce54176638bbed4166a9b2f66117f7f940549a2deac95f2aec0547e15b23f8864c030f058dc1f69d -1cb7b0c259ccb1159c9b31520d6a31a92aaebcab2c5c6f88012e76d23527b593b62faf3d79c3f855332f3b77b7861057be01c3bed1c5dfb07119f28a163e2347 -f16e90e634e6a206df1ec6b2bac7ffec8465b57fad1252326a38eabbcddf9c4988306086b702215697e5ed6580a371532a7638fa88188c13b51c0c0e0647f072 -16e068dcb4881d8ec629060683026114003886512dd663008eb1ca0f8d978d020047e35c0d7034ce6560b0910a001c8d731bc0d1389781c1462a007034ce6d00 -47e35c06061ba900c0d138b7011c8d7319186ca4020047e3dc067034ce6560b0910a001c8d735b79c031d897f28c7322186c80020047039c249a18351cb93c3a -9ea959b53f920dad6e31e0e85167319a0bdd773830190a001c93e1870056440e472929999ba985e54b616bcb296fc4cde5b4070a2440018063029c10cc84f8e0 -c83f1985fda05f490d8d9fa760e3469765da3d0138d2c1232d859adf814b194d737d1733af75303f4169d31500381ae7c1f8e0c8d21078a686c614b331e724ac -52ca0b9f52177069c16825da6cac04a351e7b5366eac80c1f9280070cc47bd588e8d1c8e7ca269dc6321f99593a45ebae62825a7f29f009c3691d8bcd6b1b81d -1a8d5c018063e492e7db60e47064eb66f727ba6062d292de5ce30bf36a7824fb530f1156d9d1e7b5ced78b707cf215003826df47928531c11159c156bdbab4d8 -5638293e7884dddcf697009c7b92a75519599b2b79c5f9d012bf2f525e6bda23122c73e7869c49b08d1b5660b0a200c0d1b841111f1cc97adab9a3a22cb7490a -40ee864c0355d7e34e0bef0125ff363d2e86bcd60047e32647410d06381654ce282a8b1a8e51f429441b21be7c53de79ad43685ce687001c8d1b000047db65c1 -e00879ad8d1be7f11b0c708cdf07012d003806140c8a8302a114003886922dce83008e71aa0f6d978f020047e37c0d7034ce6560b0910a001c8d731bc0d13897 -81c1462a007034ce6d0047e35c06061ba900c0d138b7011c8d7319186ca4020047e3dc067034ce6560b0910a001c8d735b62e0e8fc9ac5fa551dff5e5234d817 -12b983431f689c4bc1e0442a00704ca45bbc8c8a058ef6aff88444e0fccf4d9cf75a9c85665ce8038d7329189c4805008e89744bd2e068710aff64dab1cced77 -c7aae5a11917fa40e35c0a06275201806322dd923038624c71b1a2b38a46b927dab4e11e3243a34b56209da129c1ad4c155c8e1d9cb8c23d31389f038d24b990 -1f62c3d259c8f9c8b9fc40584c2e7b2ecb164e2f0760c3e4ea8c1b1b6070211500381652cd48ea8a7e59ed508a5f49abb91729806cc638e9bd0871c89fa4067f -89c14913baace394774e3bf569d4024b8c462cd0268864f9c9453ba58740783e4c2c12474323312b00708cd901c19b8f1c8e0c311c1d3de0282d875d08c5a506 -4fd77b5cace4739d71a1a7ad1b8e4f75297831f7b44d7b3d7781cf57cef01edc4770442928007034ce8b51c351a213614b9e7094e2326f38e608e21c444a2685 -8023448bc6cd86621a0c702ca6ba45a93b6a380a6b641a3b065a56cbc19abfc4e06c59ed9277bb2193267788e8455152922dabf98b9cd2c31ba4e53fb72a2f8a -dfa052d31400389ae6b16cd470e4ef513b4f2410d329f2774ee41b23297c43a6815e25540a90c721a8519be6868cfa7522f14e0d8b72e51b3fe466bbbae47756 -d2e20d19a921e30609185c0005008e051031da2aa28663b4bd83d64081a42800704c8a277cdb0170f42d15140405f25000e0988778f11c0a708c477768b5dc14 -00381ae77180a3712e03838d5400e0689cdb008ec6b90c0c36520180a3716e03381ae73230d84805008ec6b90de0689ccbc060231500381ae73680a3712e0383 -8d5400e0689cdb008ec6b90c0c36520180a3716e637044ce830d1400050aab002502c0d160381a673a180c0a18a400c0d12067615361596d9ccbc06023150038 -1ae73680a3712e0383cd50a0b0cb73a82d3205e8f002389a31d3c04ae3144093d9389bc160de6b0047180fa040511400381645d62257aa87e3cfdbbd0c1b2800 -0a144a013acd0a5521d45354053075018e701a00058aae00c0b1a82c2b78e500c7a24f8982fb0c2a34540180a3598ea3703c7af4e8891327ce9c39c3ae399ad5 -13b0161448b80200c7843b48328fc271cf9e3d8d8d8d4d4d4dc98663bf9d8dfb77de574a1743718f4aaf5fa5e4a3e07d41f34a0501c0d1158e891cff148e0b16 -2c58b76e1de263d47064b04302659b66f5c3ebdc756bb38d95eaa0f416d1aa81bc1a172e0e7c9acacb438b67ed976f9bf9b2410b476a495e26c11583d814c043 -411a8179c2d119dbba79111cdfc4367580f17bb453529a65dc9fa8cb6b27d99abb8d5bb17016cdf1040707148e93264d427c44f163d470a410bc6f6153e3fea6 -dce2ba468e88a71c5bb7ac0b0cc7d0238c3f3028cebc0747d0da0ad205a8246f05e879921f8479c2d19538f958ab19602c2ed14d496596c930b5f9e80147edfc -4de438a7701c3d7af42bafbcb263c78ea8e158b98510ad724b63e5a446126dd137ec546317b3446c5c4b62348a42f7605373f8ce595b50afed53160b4eed01c1 -3c84fe242fe269f21769110d1ab243f5b4e466668073c297f648709c84e283a65993f0d503168dfa0a42f39924706c4115e01711948f058323370bd64e2283c4 -41129d1d5c10e7aca6aca5983ddec8147019609e535259d2a903dee332915ba0ca2f95c4b9164f88630f060ac7912347d6d6d66edfbe3d6a385a67276b09bc78 -d6168483756b6ddc546ec1aee53c4121e2848716a14436a1a3ac178b19b5873b8386b5f2f2cf1192d051c443d6682301acb4c0673610d25940972695e07e0bb2 -b82acb5acb30650f0f47ca6b7eac94d835d6823228c699e3dd747123476b9cd8e7697c2ac56f3092e8e2c9fa080d4edd78a38b5f97f5afe794b4e6a630cb64de -497186786583450658216959ad4cd858474bfc70b49084c164b10381097914ff6b9fe584eb787c70873fd55d7fb186858d48efc351fd988916256958aadc1b51 -2bb1079c3df27497b4f8b122bd178253c77e065cae4e8063acb3227fe6e2615bd86b8e6cadaa0e0f69fd414eea7409e25c079446a0dbc5418f2949fdc2cf32e1 -fc9d0b8ed2c95e0e0ef8095fd0ababc1475402e088c3c3498d4e84d538ab1f891f35572e54dce8fbece221f92c87292c36a75d26685a7141646838eedf5949a2 -4bee928dba0c09eee3fca73ad4105401958ca886822eabedef6c489494572d61e1e8312585e1a79b651a4c7331843a9e253826699d9404385a811bba1543ee53 -a3ab8dfbf1421b2fabf915ae70a1d759a83ad293d893bf59e675381eeea892b55b9c0b9dc473eab25ab6612d310f9594ae7b4a97a2032eabed95bed5777ed0bb -85a84049d31488148e78a1ed7619874ae7b2fc729d92ea2c93891cf0868c005365c2f22ee64d757b5fd0219108380a570fed652cbbe4c7af6ac9551527f0964f -32fc97691c66a987ab513da58f8024d28a7843264b071cb964a27e61480d3c494dfe6ec8d8a3b911f1dab1135fe2811b324163b70496cf138eecab3c1ecb6ab6 -2af51c6f1c44b403cc7d4a2ab38c9f62f48aa7b0935b1d7b478ed29534efa9ca4fdbe2041089806302c73198040a145c813ce198db1eb808537a91636eaf17b4 -cfd01c28108b0200c758640fdd28448eb1fd8822b4cfe0404315283a1c218628a80200478023281091020047b3ce6a00c788268659c302ac2d860200c762a85a -bc3abde0287cff1afe00054081fc1480c724e4a75f3c47f30f898467c8c4e30368b5e41500389ae862198e913df3101a0205ca4a0113e950e6360b7094b44029 -c251223394ce0c253543a97b50820a788102a040080520723491b35e70440f4f40297051225cc44794d40ca5ee811728000a8450c000383664dab4c93444ccb0 -581af5dd472f38a2c7caa08727203ea2f811a57b4449cde0050a80022114c8138e29f1952fc42424e13f8bc42954ad60bc68bbd474916cf04d43a9a0171ccf9d -3b87f878fcf871b4be4694841728000a8453204f385a93b680e0d05655c0fa79c67857abc574589615fc382f389eb75f0891e8d50c2f50001408ab40a1e168c5 -63e97a4c83fa74aa4da61e457fe9b413a4918f58d4a68bd7284b58f8466bb0cbdbfb336914f859f57121a0faa9620f5d9fbb819886932c6815cd657fd9bd118d -293807b5157ac1311a0ba01550a0e41528341c6d246204e237164a1c02a23dd62e5a42893add96d54e0da4321b4f0e823917b116b94f257b78f2f2cb6acb4662 -1f0b87a93dcc30568670d7cd98620e1d806331d585ba41015b81c2c3d1611f8192c03b2796142ef67194cb79cd1103492da609f7a88389211c92ed8fd4c891df -e376cd512aa31a13c9b802384622333452de0a14018e988e0e8bb47074bb7113028e7c642a11cdf1ac600f1f394a66001ccb7b2e40ef4101418162c0115f0524 -e4e18963078ec2ea55f2462e38b2952ce51a77085b74abd4a3f678c0115f246d2061a5f5965f56b38b05e49dc618be3be463274aa50b7d7e7fd8c108916358e5 -e03850c0b702458123bf64b541e9bc9c1534bf93079954984682fcaa5959115b5701ed9775e347ffd51f75092ddcc7c1475b5874ea52abc29f58859891ec868c -4d54f10570f43d08a120289044050a0047b55b2c022be8177d42ebc7db13ba92241d08916392bc01b694a802c580a370eb4317b445aca57c2b26e2e68bd01cc0 -b108a24295a080a84031e0081a175b018063b11586fa4181427c9507548c5c018063e4924383e5a700448e26fa1ce068a2d7c066c31400381ae630db5c80a389 -5e039b0d5300e06898c3008e263a0c6c365181b2ca795e4a9d45898d51fa4e94a42e65e2b0039b4101e314801cfb21b2a9c772087a08024af58d12da021c8d9b -6560b0910a408efd10d9d463390491113d0a0125fc06381a39d3c068e314801cfb21b2a9c772088a1911195186e3ff0f73d9f3fc688f18940000000049454e44 -ae426082} -\pard -\pard\plain \absw6540\absh5730\dfrmtxtx0\dfrmtxty0\nowrap\pvpara\posyt\phcol\posxc{\*\flymaincnt0\flyvert9281\flyhorz14850\flyanchor0\flycntnt}\ltrpar\s16\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb120\sa120\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i {\rtlch \ltrch\loch\f1\fs20\lang1033\i\b0 Illustration 1: TheLazarus toolkit menus} -\par \pard -\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Click on the first menu item(Import WSDL file ...), it will bring up the dialog below( figure 2). We specify the WSDL file and the directory where to store the generated files and click on OK button to finish.} -\par -\pard\plain -\pard\plain\absw7215\absh8370\nowrap\pvpara\posy1\phcol\posx2{\*\flymaincnt0\flyvert44304\flyhorz44288\flyanchor0\flycntnt{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}}{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw481\pich558\picwgoal7215\pichgoal8370\wmetafile8 -89504e470d0a1a0a0000000d49484452000001e10000022e0802000000077e27a5000000017352474200aece1ce90000000467414d410000b18f0bfc61050000 -00206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c0000562949444154785eed9df9931ec779df37ff877f -49aa5471ca969c487114c749ec8dc412aa54b64595ad2446859229f910b0122d6b73d022238794682b8ab51049517404eba242c090a82562c8a044210069f128 -1204012e010812048000411c8b6b4182b8b179667aa6a7bbe77867de7766de9e793f6f7501b3f3f6f4f1e9ee6f3ff3f4bc3dffe0edb76e79ff6ffea3293e1080 -000420e02101d1e8cf3c7af0b6ef9e244000021080806f04a694467ff4e1e3ab081080000420e0198148a33ff2cd931f79880001084000027e118834fa96b547 -3ff8d7af112000010840c02b0291467fe04b07ffe3970f112000010840a069027fbc71f10377bff01b9ffcfbbc20df4a1c558c48a3ffcd5d0bbff699dd040840 -000210689a8048f07ff9cadeaf3e793233ac7df2a47c2b715431228dfe977ffae2af7c6a270102108000049a2620e6f3bd9b8edebde9b5bc70efa657258e2a46 -a4d1bff2a7dbdf79fbf63fdfb32c9f673604c71f7ee262f0c79e0372fccefb5e3ba28f379c09cec79f234fec7ea77d6679f1b50fcb2512d47995821d5446d147 -c74f454b5f58fdcc8167826ccefc792389bbf5aa5e3c52800004268ec0bf9f79e6731b8f7c627d20abf2910315f49ff2adc4517a1269f4afdefeec3f9f7dfaf7 -b6be29918e6cdd29c7f7ec0ee32f1ef93de3fc2faf3f1d9cdcbd4f22e8609efce5b923613ea7ef997d3a3372e655666af51efff2ecbea7e3f2d49b32a9410002 -10188e80d8c8a6462b99d656ab1ccbb71247256ed9d186bd1c989f4716c5940e2cd0d0ecbdf837f745c675603b9b66a96d2f2b033cb1afb3ec68d7ca5676fae2 -c5b89867fe5cdbe6caca561152a67764ec87e7a3524549bdf6e1208533cf9806bbb2a64dabdf4c5c8ec34bb0b8b91b8000041a25f01b9f7cf2aeef1efefdaf05 -c11436395627e55b899361474756a7d8ce8139fce6faf5e1bf733bd72fdaa6719caab2b81d7b59ff59de8e36ad6f65cb2b535dd9f24faf7f3a8a906fd4a762be -199bf3961dadd2318b2dc771e2fa92e41661b84992ab200001081410985efded99affd64c55fec59f117bb256899567f4af8d8d77ef2ef3ef6ed2c3b3a329995 -192b1665604d3fb32174e926e6b0f2f0c61f39eff89df59ff9fee81c3b3a30991333dcf48f6bebd870739bdef3a40c91c5adcd61cb1f6ddadd5105a4fcee2513 -e71d6bd46420710840c021f04f3ff4cddbbebef75fdff1ac04c78efed53b9e9570dbd7f6befd43dfb4ece85fffaf4fff8bdb9e9470eb960bcbcb179e79f9c2f2 -c9c3b7def6c2fa93cb475e5e0c6ccf2d2fa80849f8fce1c0569568df0accece597f71a2984f1edf3eee5e6b73aa9a8005176f7bc1c24fcccb79efc1746049d6c -f2ad944aa766c60c4abb379c5116ef496a97aa8b7b895d4da7d6fc09010840603402bffc3b91466b8136c55a8e45a3258ed2ccc81ffdeffeebd3eff8e8b620dc -7328f2fc2eec913f3fbba012b9b0ee9ef05b337c23946689a60ff4e5270e7d488ecdf3ceb5ceb72ad3f0aa0f3d2e93c4f291c79fd7b93ffd8db854610455a4e0 -a4917e72d2482a2ced9e70cd70f1b3aa00ea12fda75965556602042000818609fcfcef3ef8575b0eddfaf9c82521072a28b59503f956e228398a34fa3dffeda9 -777ce487615808456df9e9af867f7ef544f8d789cf86df7e7697d6fde0e0c863cf1a71e2af8e1ffc904a2aba3675de4947e2df7d30d0e8f0c20f3df6864e5965 -17944445d09f5d0baab42ab2fa448531924ac5096b6127155c95ba2446a1801020000108d449e0e77ff7cba2c27fb1614f5e0835fa01253e9146ffc69f3ef5cf -3ef898bfe1d3fb4311df7f8bcf85a46c108000044a1078dbcaf98fdff7fc779f3f9617e45b89a30439d2e8f7dff1d43f5df977de867f7647a8d1c7f6dfe27121 -bda547c1200001af08fce2ef6cfc850f6cf8f995f7fdfccafb55f82761d07ffee27fd820715499e33d953efdd45b3fb0910001084000025e118834fa773ff3ec -db3eb0f1173fb089000108400002fe108834fa7d77eef8b9df9affc7eff9df040840000210f08740bcc7ffe79e7fcbbbeeb71edae00f0840000210182b81750f -6f70357af1c469020420000108f840008d664282000420e02f0134dadfb6f1610ea70c1080c07809a0d16834042000017f09a0d1feb6cd78676f728700047c20 -8046a3d110800004fc258046fbdb363ecce194010210182f01341a8d86000420e02f0134dadfb619efec4dee1080800f04d068341a02108080bf04d0687fdbc6 -87399c32400002e3258046a3d110800004fc258046fbdb36e39dbdc91d0210f08140358ddeb37b1f0102108000044624b06bd7d6921340058d56652a992ed120 -00010840208fc0c2c28f4aca69598d46a0e96d108000046a24b0b0f0541999aea0d135168ea42000010840a08cc7038d66cd10021080c0780860478f873bd601 -042000813204d068341a02108080bf04d0687fdba6cc1c4b1c0840a0df04d068341a02108080bf04d0687fdba6dfd601b5830004ca1040a3d16808400002fe12 -40a3fd6d9b32732c712000817e1340a3d16808400002fe1240a3fd6d9b7e5b07d40e02102843008d46a321000108f84b008df6b76dcaccb1c4810004fa4dc063 -8ddebe667a7acd8e1368680304cab2dd39373d35b56a631b63607e666a6a7a6e7b0395a50b41a0cb045ad5e8447345239201b971f5d4cc7c1a62b18e0429449f -e9b99d9545a4ac48e5488691bb1462f5fcc8ca52501efdd51065b6cb39259c5522e592da210a6d0ab47955660b3a8d9249a9206b916966e52eab49e56148654b -106855a3b516cbe0974f246d7983b6484744d6b5cdb571753b869e49d355ab3a643aafb5cae969f6f01886ad9e6f4cc8ea64329b66b560aa51322915552730db -6b98f04af47bd404025d21d0aa46cfaf8a84757ed5ccfcfc4c64ffea83c4ec0aa30583796675642d3b77c159a677c6e56be65689991b1a8f89a91e5e9b2885fc -197d0275701239713ab025d5c734f11ca1314d5d6ddc87b7eda9cb8dece6029336296164deea2a2bb50abd0d2aff5533d18d4852c8f0fe23cc3d4c27f8581a97 -1644c78e4ed537e9b859566d610ba61a259352e1941348ff107745883204fa4ba0558d8e47e0ceb955e268deb83a54bdf9554a568c11ae7524369603a5b3ef82 -e5aae09358d09997278215e7727a51a447ae8a94c231dc321389fc30c1bca2fb812b34eac28197dbd985fa68dd4c980e84c03f9b4870e0978f320d545e5d15f9 -22cc741c61b5bd0d295f47aac04647cf94cbc2160c9ad26a944c4ac5b705aa75fa3bdea81a04aa126855a3039551fa188c43112cd120f5af69c02a73d03475d5 -b7593eeb40c842a5ce13233ddae3c11f59828e39a9a2a5130964372c8ca31a79ea139be451159ccbf3ac6fadbf5684d875601ae98e2b596131af2ac842d75127 -9251dfc4b19e6dd216b4a0895a378a35b33a7730594efc620547bb21307904dad5686569cecfc466e0ccdcf6c89a8e8d4463dc3ad293a9d1da499a77539fb4a8 -9a0cecec062a5a74794aa9abddc5c7977ba8d1f96b74396e87fc16b4064f961c67ce8bce90c38e9e3c0daa6a574e5afc96355a6e8783d5c2e8112bf144077fa8 -a732925bf8a80d0c45cb78c040df11a73c00e9cbd5194964b5b8745576d155695f87ebcf5d1d154f621a3e71d7e0d5ee9ae2cb53be0e2d9169fdd25e0b7d0f91 -aa69e2eb70d2c9f5c9c415cf83660a44ce5316b92d18dd1ec57724eed32371fb165acaf8a3274d80a8ef40026d6bb4e5590eefb593352ef3d65b8d70ed3a70cd -bd64252d79a8367db9739516bb44a32dff86bd66a8160993253e6b2dcbf212d8da6d953975b971e1ea70cd307a005c6b74e22d491c2ccacf5bbc6668a55356a3 -6df78e0b39fd5c47ec04378b9db460aa51322959271d2712cf758cfc10276678ef08b4add103278d898ee09937d6bd7d69baf7f37c74d38449bf8304d0689f2c -17cf343a7af2af9d072df89d6107e563a22daab6da0b8df649a3db6a7586160420d0150268341a0d010840c05f0268b4bf6dd395799e72420002cd1140a3d168 -08400002fe1240a3fd6d9be6666652860004ba42008d46a321000108f84b008df6b76dba32cf534e0840a0390268341a0d010840c05f0268b4bf6dd3dccc4cca -1080405708a0d16834042000017f09a0d1feb64d57e679ca0901083447008d46a321000108f84b008df6b76d9a9b9949190210e80a01341a8d86000420e02f81 -56357addc31b0810800004d20486b36a4f9f3a7bf6ccd2896347db09278fbd26d949a6c39576b8abdad6e8653e108000046c0222d9c3e99728e6facdcffdf627 -1f78dbcd77ffc26fddd56878ebcd77bf77e65ec94e321daeb4c35d8546335c2000813113185aa3c5b0fdcd8fddf7a92f6eda73e8d4cb074eed6e2c48e2928564 -24d99d3eb5389cda0e77151a3de6de49f61080c0281afd4b37df7df0f8854b57972f5f6f36481692916477f64cabce6b349a010201088c99c0d01a2d6ee8b7be -efaebd8796ae5e5f7efd52b341b2908c24bbb367ce0c67110f77d5d834fae0da15fa15d8b35bcd2eb27576c5da83e60933ead4941d79cc7d2b95bd5d7829b953 -97facb9bc2552d8b112f0f33cba8661dc9e655c4cc6e74c2b929b855d83a1b74d8a8fb95cd3787439096ee1941ffd6bd3aececfaaf205e92633c60d267d437ea -7cfec8aad6336a8e6d142b3d8487d668f1758868bef4b37397af2d5fbf71a3d120594846a1464fc09a61d05e8978191d311ef2562bd63b266bee7a6e7252d8a4 -f06547f24865b2722c999251b01a0a9c55cd1a922dd66895e9e884f3d3b1c14a2f0d1bb662be99ad13a4359b9822766bac904f64a424ea2d57a44ee6602f1859 -257b4703d1b2ca6f6433a246bff8d3d397aedcb87afd7aa341b2908c2645a307999705d6683c541ae847352569147e74052955a6ea46ab55b0910b9c5dcd9193 -6dd38eae5a850a2d9b6e1da5dbc6f944c182935bf5f0d09d3d33bb8c93158a55aa67d5156950b946d4e8e7f72ebe79f9faa56bd71a0d92856434291a9de30148 -f437d70a4bac18b143c2dbbbe41e2ab65f9333e10d657049147936bc5d4d6e0c93af24a20c8de09bc05cc93b6fdd4946768dcecdbc7775ee88d56db279436a9c -09e2ba118c0258f7c4611e453926f7241a662400c655514d4dcb2c3611c3325ad0ec9bf2d8745d1bd728b8301981613d0c83cf4936b82a6ea5a058d22c51d324 -5e04e35e3dc74f645ab226a8023758d2254c6b346e125d06bbb7a89a85e5d5ed13f637d37e4fa55cd43a4af2a2444ddd8a1b4bfd1fe76ac408527571a4852f4f -0a9d31327ab737c65430d9e43a612c7f4e81db6f448d7ee6655934bcf6c6952b8d06c942329a708d36676ddb0a4b244eab946af1a0f7256eb848306ca76156f7 -4eee5855cfd771f408cc3c6f7a5ea3f160dc029b6e445dbab46fdd3893945e573d5d00b39f07c78539ea128603c71050fb2a7730c7b4f57907881617254f8e5b -3641e1d4363359d55c61798ca68951d8ba9439ac1d8d36fdb0d98b15e9340df06a0a4b573c6a91ac2a24f1d32917b78e21d1961b3f4a27166795a9d3485a68b3 -a619e58eced6e8d418311b57f7f3a865b38643badb270d67766107a5b350912a7f7dbe8e1fed3af6fa9b57972e5d6e34481692111a9db45bdc5fb396a4cc11e5 -4898d94dcdc1ac5546cbbd33324d554da79f4867325dc406676c7d1b7d2e2abc35f2b5d516af889add5b77e0c48c8de72057a3a3a869f137c42fbc91de6ade52 -db57a506734681d3d34c26cf58b59345ab020e9136c7ff398d65dd15295c5922ed68b465ab6589b4c956a52964f2ba4d4932c3f58748a28d2e64e8ad21b12af5 -1cb79e768ca4153953a30b4684d3cfcb777b0d30b30ce61049b7a0e19ad63d65443bfa891daf9ebf70e5f41b171b0d92856434291a3dc81fadda2e65c238c6a6 -32a32b68b4bd7031a446679b6ada6c8dcb18163e2a5e2adf78ac9af7fdc9325166c19cca46b7df6661625cc1ff6b43432c116a4d2e2a67c660360b6c802d4938 -ba454fbb1bec6463033a2a6b66e2039fdc29d0e83cbbdb49b38c6c25334d169944a3abf487c4d161de98449ddd5c460ca6ccb5e6eab331ef9937526e7db344ba -4c659dd937addd7900b335baf8d9ab8cb9078d2e782c6f3ccfde05964dd2bd121faad91393fe5c642f04290df6754479199d237d875bc68e365c2bd1615213b7 -94d13033bd134aa1f4dd64d293f30ba607a4beb638c7c08f10f054b549660ee72a6d073936afe8826b3e17942df59043d21af6fd904e564dbdda3e36e2c78719 -a79c5e613d595122bae9108b1bd0ee367993629cb1d1944e9553d90f6a1da797187fdab3bce5d837bb5dd285b21e794c9c76b1f047f726d6187124584fff79e7 -33bb7d34a6cc26d783ca7c5ed0f13f1ae537da75448d7eecd9574e9fbb7862e942a341b2908c26c58e56bdc25946d3f7c146dbc55ecbf48dbd75876bdf169b49 -9bc3cfced4f54296d2e858628cdb709d5bca864bc69959a27851d2f4b95834ac8299658e1fca2acc512d39c583c41058fb2ab5cee3d83beaa4ebd94c0aaf0a60 -ca8c3a36ce84911d1246b2b17224035c9274bd1a3a7ea6556caba4d3d6ae9cdbf70fa6f324c1a11e758b8138221a2560cf2b5695ddd20ee80f0e9cd4641197d8 -f508e86c9256b37a5552b78c91e594a9b246a7babd4529299a715f98dba899bf701851a31fddb6ffd8a9d78f2c361b240bc96882343a7734d5f845c64d558da9 -93d47004ec79234787874b9aab3a4a008df6ced7d1644f320c8ecc15a726f326ed0104ec5bf8ccbbf5540a6683c6667e513655e3d368e32730a2467f67cb4f5e -3db9b473ff62a341b2908cb0a3c7df5d28010420d0328111357afd0ff61e3e7eee99ddc7068547564e7df44b41b4f4c1c06b8f491692111add72df203b084060 -fc0446d4e887beb7fbc0d1334fbc78b8d12059484668f4f8bb0b258000045a2630a2467ffd6f17f61f39fdf873071a0d9285648446b7dc37c80e0210183f8111 -357aedc697f6bdb2b8f1c91f371a240bc9088d1e7f77a104108040cb0446d4e807bfbb6bdf2b27bfbd65a1d120594846a2d1e726616fd2967b00d94100023e13 -185ea38f1f9317a33cf8c8ae17f6befaf0632f361a240bc948b23b77f6dc70bbf50f7755dbbf33e48dc810800004ea7a2ff8e289e337fdc1dc07ef58bf66ddf6 -35eb5f6836acdb2e19bde78fd62c9debaf460f378d7015042000814c02eabde0efffc40362de8a17a2d120af1e7fefcc7d3d7f2f38fd0c021080408d044e9f3a -2b322dce87a5734be71b0d4be7cf8741b2934c6bacc2c0a45af5750c2c0d112000010840c0248046b7fa1a763a1f042000814a04d068341a02108080bf04d068 -7fdba6d2644b640840a09704d068341a02108080bf04d0687fdba6974601958200042a1140a3d16808400002fe1240a3fd6d9b4a932d912100815e1240a3d168 -08400002fe1240a3fd6d9b5e1a05540a0210a844008d46a321000108f84b008df6b76d2a4db6448600047a49008d46a321000108f84b008df6b76d7a69145029 -0840a01201341a8d86000420e02f81c9d0e8ed6ba6a7d7ec38e16f33549a57890c01084c0e81b6357ac7dcf454fc999edb990bbaaaaa16c757df564d5369fa70 -57311f40000210a88340ab1a1d087462cf6e5c3d35952bd35595b18c460fc7ab6a4986cb85ab2000010864116855a3578b266f371c0e69f33612c49ddada9e5e -35333d3db33a36be57cfdb866d3abe699bcbb789d11edbd1e12573abe48b99796526477174d982c9437d56cf1b25919493c8f1b5495241cca078016549c1ae29 -9d0f021080c050045ad5e8945358b46c66de3454f5b179a0f56e7e2610d6e2f80985406a23d134278350670d310dd536f1699852ebf83a9204831b82551b9564 -c7499d5e94e2c949494a1f0cd52493e368a3a61080c040025dd068cb3d323d376f2c00a6355dcb625aca33cd766d680707f604e0f8a39d0433228753ce89d3f3 -ab0ce146a6210001088c40a0558d2eedeb301c1a963b38f421d4abd1cef31e69ef73e6341058d019821eaa73a4d403a74722400002101848a0558dce5e33547a -17ce3349047dd2144df121a8c7330ae25bbe8ec8291c259bf17487e10f892eccf27544d965f93ad2125fb0103ac25c3ab02189000108f49240ab1a1da970b222 -17ad1fea07f2c215c2e84166b149e5139c49dc118694872733e29b6b8681ffda8896a1d1e69aa12417666dac342a5f7354929c3543fbb16b9178560b790e1d02 -10a88d40db1a5d79a2ebd6a36fcad2c75e8600042050130134bab6e94e59dcc9631e35b550e5598d7c2100811e11f05ea37bc41ab5850004205095001a5da71d -5d953ef121000108141340a3d16808400002fe1240a3fd6d1bec0b0840000268341a0d010840c05f0268b4bf6d830501010840a0558d5ef7f006020420008134 -81e1b4f8f4a9b367cf2c9d3876b49d70f2d86b929d643a5c6987bbaa6d8d5ee603010840c02620923d9c7e8962aedffcdc6f7ff281b7dd7cf72ffcd65d8d86b7 -de7cf77b67ee95ec24d3e14a3bdc556834c3050210183381a1355a0cdbdffcd87d9ffae2a63d874ebd7ce0d4eec682242e59484692dde9538bc3a9ed7057a1d1 -63ee9d640f01088ca2d1bf74f3dd078f5fb87475f9f2f56683642119497667cfb4ba88854633402000813113185aa3c50dfdd6f7ddb5f7d0d2d5ebcbaf5f6a36 -481692916477f6cc99e12ce2e1ae1a9b461f5cbb42ef6737bbd5ec225b6757ac3d689e30a34e4dd991c7dcb752d9db8597923b75a9bfbc295cd5b218f1f230b3 -8c6ad6916c5e45ccec46273c7a0ad580133b83c0d01a2dbe0e11cd977e76eef2b5e5eb376e341a240bc928d4e80958330c543711afadb3b6f2cab79610d73b26 -1b1e2356e15b19ff2eae3215340a564381b3aa5943b2c51aad321d9d705de994c14e9c1c02236af48b3f3d7de9ca8dabd7af371a240bc96852347a907959608d -8aa0fb6d492f1b851f5d414a8deaea46ab55b0910b9c5dcd91936dd38e6ea9a54a35e704461a51a39fdfbbf8e6e5eb97ae5d6b34481692d1a468748e0720d1df -5c2b2cb17a66670367c9ecd6c413126bb7e91b894cad28f2ac58ecf127881da4a6be12b37eabf2be04f67dde79755f1fa510dd08e813fac620297c3cf2833b05 -33df651172eb841bc1284072c311a7569463724fa261ca41542795a5aea94e392e709cb0054d11317c1a6131d6c6e58f31aa38613de2f8e96483abe2560a8a25 -ec63fec91729c2ae669996af09aa60f24ea7697592a80f04254f12f4dc14e895928fa8d1cfbc2c8b86d7deb872a5d12059484613aed166b7b3adb044e2420108 -06985282e0480da6f8283913f94993c846fa7a9cab74749ce2f3a6e73552cc580a8d6c03a9d2a54bfbd68d33d6458e0eea82391219e86058e3cc1c750943b534 -04d4be2a96fb9848aac00e10b76cb11c9a721914cca96d66b2aab9c2f2184d63349fa1f199de7c47a36375cf801955cfa86d7468c455a5d651327b4baff4d0c7 -ca8ca8d13fda75ecf537af2e5dbadc68902c2423343ae940b11596b524658ea82c2b2f6df72567b4dc3b23d354d574fa897627d345683146f6585a8a2d03d3b2 -da0cb3549b7e4e84820ac6967c768e91f885b3c4d6d0af1fe9a45d4e57a38344dd02a7a7194b916dcb5a5149999e6eb271f1a289c62c86924d93437c5733c88e -cee2695e934e53c8e4759b14191f25ad77651a51a39fd8f1eaf90b574ebf71b1d12059484693a2d183fcd1aa0f96b0469d41ee2c22b99a62187ace578e261669 -74f62db0365b2dcb344a2795af69f74746a56d3c1669749443768e11b6b5a1219f08b51ed4d155194a14d2ceabb86347a7052e9067c3384d44c44e3636a09389 -233ba9421132db2edd01d297a6cb55d06dd0e8714c006874c16379e379f62e1835891de83ed7a13b49da0a4bddbc26e32f3e32466486469bded07c49ca952a3b -71eb6edd1ddc41e1d7aac9c858e78ce5dad68d548424b1acaf123f8f654c47b842a7b0fa22d1f1847898b46948c6b88d029bf72e05658ba399b852b6b4956c34 -21c5e54be1b43c38999a2f29381a6df85d723cd2e96cec6e9339398d43aa2636cf1135fab1675f397deee289a50b8d06c942329a143b5a0db4d4f3d1e9673662 -af6581575727645a64990e0d3b53d70b59c6d7a125c6b80d4fe79f98d2f1029a59597b012f59a4b45cee86e027d7ae904fec3c8f56ff0221363e0aa021490651 -bb9c6a91d2b927d02b97a1cfc1b0ece355d2b000e664e4ce82aa59535ee9e8fa28bbe4b622b87c45d40fec393bbb7e6973de249be9bc36ef3a4ce7498243518d -81b853edc4ca66ab151f51a31fddb6ffd8a9d78f2c361b240bc9688234ba8d2e90d6fc3672258f6202f6bc5124ac909c140268b477be8e26bb9e36068da7c09a -cc8fb42b10081b2791e55246abd9a0394b93eecd84b9ae9bb59459a1c4446d83c0881afd9d2d3f79f5e4d2cefd8b8d06c94232c28e6ea34390070420e0158111 -357afd0ff61e3e7eee99ddc7068547564e7df44b41b4f4c1c06b8f491692111aed55cfa1301080401b0446d4e887beb7fbc0d1334fbc78b8d12059484668741b -1d823c200001af088ca8d15fffdb85fd474e3ffedc814683642119a1d15ef51c0a030108b44160448d5ebbf1a57daf2c6e7cf2c78d06c9423242a3dbe810e401 -0108784560448d7ef0bbbbf6bd72f2db5b161a0d928564241a7d6e12f626f5aa7f5018084060bc0486d7e8e3c7e4c5280f3eb2eb85bdaf3efcd88b8d06c94232 -92ecce9d3d37dc6efdc35dd5f6ef0c79233204200081bade0bbe78e2f84d7f30f7c13bd6af59b77dcdfa179a0debb64b46eff9a3354be7faabd1c34d235c0501 -08402093807a2ff8fb3ff18098b7e2856834c8abc7df3b735fcfdf0b4e3f83000420502381d3a7ce8a4c8bf361e9dcd2f946c3d2f9f36190ec24d31aab3030a9 -567d1d034b430408400002103009a0d1adbe869dce07010840a01201341a8d86000420e02f0134dadfb6a934d912190210e82501341a8d86000420e02f0134da -dfb6e9a55140a52000814a04d068341a02108080bf04d0687fdba6d2644b640840a09704d068341a02108080bf04d0687fdba6974601958200042a1140a3d168 -08400002fe1240a3fd6d9b4a932d912100815e1240a3d16808400002fe1240a3fd6d9b5e1a05540a0210a844008d46a321000108f84ba0558dfeb99bffac4ca8 -34c91019021080408f09b4add1fbf7ef55e1c0817d870efdf4f0e103478f1e3e7efce8a95327ce9e3db5b4745644bcc7b8a91a042000814a04c6a3d17902fdfa -eb4b191a3d3f3335353db73d7533b27dcdf4f49a1d278cf3e933eadbbcf3e6b51e1ea78a3dbf6a4a3eabe7bb5c290f39532408784c600c1a5d20d0172ebc91d6 -6811a6d5ab66a6e776ba93cf408dd6117cd3e892e571a36d5c3d3533afa79c9289e8ce5735fec05e5b3ec1f23107664a04084c1881b635ba58a02f5e7c33a5d1 -3be7a6459836ae764ce64cebd8d1829e69745eed4a76d9310ae518b32e09876810f09540db1a9de98316178758d022d0972f5f72355a86f7aa8d8b2744a96377 -879c09eef8c38f12eef49900b75c12c70935622e741458be823815d791529445588c320906716656076598591d671de66e14cc2a7c7e0583ea8811ad3e33f34a -f2cc19c8aec88ea8e6e221d2371f79998686b9656bab328719451361548b205f5d06738e4cce6b97942e6daabebe8e844a2e422243a035026d6b747a91d014e8 -ab57af381a2d72a3dcaf72102a4ea035914356fcd48146a7cfc4a263ab98edc6b545df32d28d04a314529143551a90601027e54677e4d5997bca5727d1e87445 -0c9788d259d7299f543050f3600a34e2c4658ebe4a6a91ba2a0f8ed922c1d4323d379f5a3940a92100817204dad668e7290e47a0af5fbf666b746cfd69abd9bc -6b76f52eb53698e9ebd05769633c34c813533a330b27b2293a79093a714cdb3fc3048e6a68c959b1eb26b7221134d7835f4023d3671da8736cb33b9e2593bc79 -cfa148a615195f47b9d1d89a6946461d22d0b6469b8fd9a505fac68d1b9646478e0e65e5850663a6386a2bb858d44c73520950e6c8c9d6e8b44f207ea424d1ca -bc38a12da99e4bc970530c4a392da0ae446657247c0824cb8e4e57304fa31d8f8ac37970c5d326bcbfbf14e8d0a0a5a81345a06d8dd6cf41670af4f2f2b2a9d1 -b17f231ad8e19f1bb5af23b819b79d03f1992c5f87abe3b643c3d2eb4c5f87e1d930adcbc4c04c25984861ec7c90c8ca3f937c952e86ed52309d308e219cb81a -52658ba604c30d6219c2c5be8e48d6135f475486025f875d007c1d58cd10a88f40db1aad7ea89227d08e4627e6a73681953e468e81e9e8f9e8f49908905ab932 -6ed82da9d2eb5a595e63d335612dd9256b86d1a3d99616c72e8b785d51c5d18b78a133400cf0b860e99455099d0a3a0e65d7c9e356246bcd50af3ac62b81da7d -6476a620e5e938f7783dd69cdeccabf22a6e554ac9b7595f4c690840a00281b635ba58a01d8d1eff1d8d98bde6925a7d73e3f8ab36d0cf33b0b2789907222202 -044626d0b6467761bf8ee4b9b1ecdf378e0cdd53817616068bab19fcf8736ab226b01eb73b55f39840ab1aedaf3679dc42408300042699001a5dc13134c91d85 -ba43000263218046a3d110800004fc258046fbdb366399b4c9140210f08a001a8d4643000210f097001aed6fdb78359953180840602c04d068341a02108080bf -04d0687fdb662c9336994200025e11d8b56bebc0f2ac7b78c3d4db6fddf299470fdef2b9e7dff2aefbe5d78099d788de9791fc81f91101021080000484c0c2c2 -536544b5ac464b8ac8341d0b021080402d0416167e5446a025af0a1aad655a8935010210800004862350c6cba126836a1a5dcb04422210800004205092001acd -ba22042000017f09a0d1feb64dc96996681080408f09a0d16834042000017f09a0d1feb64d8f4d03aa06010894248046a3d110800004fc258046fbdb3625a759 -a24100023d268046a3d110800004fc258046fbdb363d360da81a04205092001a8d4643000210f09740631abd6ddb3b6e591f864d5fd9ed6ffd4b4e6544830004 -20301602cd687420d0db36ab1772efdebe324fa6e5abdbb7bfa4e2a80302042000010818049ad0e8c35fb9ddb69d45b2efdd9ba1bf48337d1102108040218106 -343a309c63233a31a5b76d0e1479db9db72b07884410290f8fc582360deac84312a6109effcabdea92f5776e0b0ced97366c527faedc7018bb1b02108040bf09 -54d3686717be6c3419d6f1de3b45940da747a0b36259bbbe8e40b51321561162698e238749452e147b26b0e7a2e1360ce42a084000022d1068646fd2b27bfc17 -d9d1b1d359c57134da1477759c3e135bdf18d1fdb61da81d04fa4da0fe3dfecb0a7460cce6f8a30b24384f9133343a5a57dc1c38408aece87e3730b5830004ba -4ea0e67765957cad4b442df3b90ec3beaee0ebd0cf7b681d8f9e1249cd04ac3c40000210e81481321e8fb2fee86a1a2d98d2cf470722bb49fccbd13a6180529c -cba1399c5e334c3f9317c761cdb0ebe603e5870004148132bada9846a767339eb4ebd40ccf288200049a268046f3a31808400002fe12f04ca3b1222100010840 -c0208046fb3b7f367d0f45fa108080ff04d068341a02108080bf04d0687fdbc6ff199e124200024d1340a3d16808400002fe1240a3fd6d9ba6e767d2870004fc -278046a3d110800004fc258046fbdb36fecff094100210689a001a8d4643000210f097001aed6fdb343d3f933e0420e03f01341a8d86000420e02f815635fae7 -6efeb332c1ff998d1242c01f0265c694c4f1a7c094a41281b635faf0e19fa970e4c8c1a3475f3976ecc8c993af9d3a75e2ecd9534b4b675f7f7d89ce54a9fd88 -0c011932fbf7ef55e1c0817d870efdf4f0e103478f1e3e7efca81e590cabeef693f168749e405fb8f0bad599b6af999e5eb363d80d56e6574dc967f5fca87731 -563aa315a9bb1d85927b4b406b749e4067983ed28d83c151cf002945c6c8716a6a7a6e7bb9515965b8f5759c8e41a33305fa1f7ee31f8a405fbcf866298d2ed5 -721b574fcdcc0fabef46b78bd3519996caba5cffaba16c640481d34aa30b04fac285376c3b5aba74ac928174561c26c30d0133a3f243a9425ebd1da76d6b749e -408b468b405fbe7ca9368daed0ba85e3dc49a7ae64116808d44440864cb14097357d6a2a4fb6596d4d06a5eda7f2c3adbfe3b46d8d563e685164ed2993631544 -a0af5cb99ca1d121fdb9d07111fa2e76cea9fb34e50649eea142d320883cb35adfc8853682ba09b2efeca497d8679c74a2feaaa3cdcc3b937f767ccc3a08b44d -40864ca60f5a5c1c624167983e278211343db7d312d3a271641addd373f3da035972108540f2ec687774ebc8f1f81c30ccd54d409fc769db1aad16099528cb22 -a123d0d7ae5dcdd668ed5676ef92a4b7191d48f922d47d5ce60c1c9d0cfa68eca756f77da974b44da1d3b1b2ce8fdfa83142e21048119021935e243405faead5 -2ba935c3d8d0899c1ef9e328347194a0ef9061b36a633cb2aa0c22cb960accab64848673433418d3c3737e2634c58a8a17cd34fd1da76d6bb47a8a434bb36941 -8b405fbf7e3dcf8e8e560e738d5935eb1a93bca9d1898d105adf69f93623a874f49a4666db17c4474420d02e011932ce531c8e405fbf7e2df7b90e2582e9fe9c -18cbdadc8985d2b593e2fb86e24191f675a4d3293893dc09dbc3bcd896eac5386d5ba3f35c1c4aa06fdcb8515da3ed150f4752a3fba094aded3c2e627520fb5e -3557a32baeb4b43b6e4b2db553a45e109021633e66971668775859b50e5dc3e9fe6fd931a13a6bd52ed2e8fc4161656124e8d8528e09a5f372163633cd2ced15 -d189148cebee347ddb1aad9f8396a738b40f5a0bf4f2f272358d0e3d6bc98d92ea6d6653451a1d779de4d629edebb0d319ecebc889df9db647c7fb4140868cf9 -0b03ed8316178758d022d0ceb08a5c16aaa3a64784d2355b04834b82bbcbd0859df64804ee60e530cc1f14a65c9a59a435da18d441be91af2367984fc0386d5b -a3d50f55d463766a91d014e8b21a1d2d1138cb05b61bda687bd5c3a24f6441a7963b926507fbe1cd4c3bda5aa628fdb027f20d81060888461ba64fb448680ab4 -3bacac55746df9ea1191b59c13a8aa7d336a0d01d3e289bd8ece13d0b6db21b0abf23c1ba6f37a5a3eea171285c54b668e74b2f6850df06f7aa66f5ba38b053a -dd999aae3fe943a0eb0444a363d3275ba019569d6ee2b635baccde029d064ae121d0328132638adf82b7dc283566d7aa46d7586e9282000420300904d0e8b67f -713009bd8a3a420002751140a3d16808400002fe1240a3fd6d9bbae661d2810004ba4b008d46a321000108f84b008df6b76dba3bf353720840a02e0268341a0d -010840c05f0268b4bf6d53d73c4c3a1080407709a0d16834042000017f09a0d1feb64d77677e4a0e0108d445008d46a321000108f84ba04b1acdbe0475cdcca4 -030108748540c734faf0e19fa990f9eeda8c77d477702bc2ae741dca090108b440a0931a9d27d0b22db5fb8a00e3153bf10b0c1bb8a9c97b3305330404200081 -d108744fa333055a5ee9a2de1b90f11a170528fd729dd1c059f367a646379a638d8527290840c063021dd3e83c81168dce7847bda592e17bdb1a6a0934ba21b0 -240b818927d0318d3e7af49563c78e8822e7bdbb76a01d2d2fa2d79ff8853d33ab837769cdccc5afd44adedb16bf5f2b794d78d863b212715e371ebcdb2d7cc3 -f89a39c951de781f5f38bd6a667a5ae518641a4d1bc99b84a23712e9f77b458599f89eda82e38f2c20e021818e69b408f4c993af89464b90f703a903f3ddb5f9 -fee8d45b0793570eabaf62433b7a3966fca6fa623f8969413bce0df345889116eb77301b421cc8773a2fa7300df8d0117d0840a00b043aa6d122d062416b6976 -04fafaf5ebb976b46e0cf3dd97d68be223cb37654467bd433333913c8d0eedeec0669777308b223b2f4256ef6036d63683f72f87af584edec4dc859ee4a10142 -9120d003021dd3e83c17877eb9f8208d562f99375611532b7ba11f43e9669eff3a27917c8d56ea3cbf2af5c6e5c496cfce2b2a0c1a0d01084c2a818e69b4f18e -fad74d178758d0376edc70df7f9cf16485b17228ba69dad1c9dbe995e721b064a3c7f55cbdce49a440a3d59be7d55be88dd402a773e4ebb0f3720b83af030210 -9850021dd3e8f81df5c16376972f5fba72e5b2b6a045a04b68f469bd16a716f47618c29a5aa60b8555b91c94e91d87ec44dc29415d1e19c86211275e94e9e9c8 -b9a1543b086e5eac19f6e02e952a406074021dd368f925a17a0e3a53a05d8df6e8e6c830bd796edaa3769950d36c74e12085d608744ca3cb6cd9d11abbb21989 -532530c57746f1d168341a0210284da04b1a5d56134b579e0421000108784e008de66e1702108080bf04d0687fdbc6f3e99de24100022d1040a3d16808400002 -fe1240a3fd6d9b16a668b28000043c278046a3d110800004fc258046fbdb369e4fef140f02106881001a8d4643000210f097001aed6fdbb4304593050420e039 -01341a8d86000420e02f0134dadfb6f17c7aa7781080400b045ad5e832bb6d581b40f3ab6e084060100186550b4239c62cdad6e8c3877fa642e6db63655b3b34 -7a8cbd81acbb484086ccfefd7b55387060dfa1433f3d7cf8c0d1a3878f1f3faadf89c1b0ea62cbaa328f47a3f3045af61dcd7f2161bc0bfe20b3626063a837c6 -26fbf7279b38e3f78040f708688dce1368d7f4a9baf362d5f8238fd08143784004e3e573f17ba5f546ed39ed5b771d6b1499316874a640cb4b55d4c6d0035fec -3d6afb99ef96b5f7f81f39e5ee0d6faadc03024aa30b04fac2853706bd43aeb0ebd6ad5f01f38234cd97350f633fd9afb253efbd1b984e5e9c32d766cc49c63b -a3471699b6353a4fa045a3d5cefdf99dc9d8267f9489bae88d56882c04ba4740864cb14017993e6586d2903a35acee8f985dfaf23209d6abd1b58a4cdb1a7df4 -e82bc78e1d1145ce7b7bec003b3aa8fccceae04d53e6ebb483f751053717c90b03c3575c05af0a0c3a4af29eaae49554f1ec6a4eda396fc6ea81a945157a4c40 -864ca60f3a7c69d11bb9a64f3294e405141b93f7d01be7a337bde58d91bc14a297761aef990b53980b7d8ca19b317aedbd1ab0ca2d90f15546bee19be7dcd49c -c920483c79a58665b33baf15754b18bf6e549fb7ca19be89547d8a8ba1df7b578fc8b4add122d0274fbe261a2d415e4ea80eccb7c7e6fba3e3976a476f174cde -091bbfb9556971d0db222754f42e41db0077eea4a23fd57b66c3c62e33eb96b13e8803815608c890492f129a027df5ea950cd327501c7b4ca99eafcf9f085ffe -29864ede18c94be1446a3485ea66ad00658e325d006d6c0507a9919e4ecde51c6babae60908ee103c92c619497ad034939ab14a35691695ba345a0c582d6d2ec -08b4bcde7b80e3cca9bc6a9b8463388319e673d02de45555f1192bb2d9219219d2985a5b19603db6efa85a3b0464c8384f7138027dfdfab56c8db6a4301e47a6 -7a06e3c23006137b377cfbdb7cece74d4b525e4c3d5add5ce20b4cefad23d979d716f89a65ec47b38e75636d58c4f178577549eb40ba8e658a91a9d1c38a4cdb -1a9de7e2d0aff71e49a31505dd66a13acfafb2dfea9d8b2f7a81773be38a5c205017011932e663766981be71e3c6f01aad4553e9b569b8a40da6c412cf899921 -70f6125fbd1aad1e10884a9e18c2a1466795b04c1d47d2e86144a66d8d3e7bf694b838d4ebbd4d178758d0d293dc177ba76f880a6e3de27b22d7fbec4cb3b9b7 -21c6bd98d37e18d410f09880e8af367d32053a7b589550d894afc31e23792918de89480d1dabd97ad4c170456ab377a0af430fea944468cf673005a6138c8676 -4aafa374f2cecbfd7a96af23af18b58a4cdb1aad055a2d655cb972595bd0d293aa6874786b16dda9444eabd8a711783cd4a281a1d7f1c242363ef9567bfa6dbb -dbe3c1599721463a9d26201a6d983ed122a1f8a0c5c5a1ec9eca1a3d3d6d8cac942f311874b1233bd35b120c197b34a5353a8a10d89581aaea4fe4380ed7e5cc -a19a8c747bc5286dc6598b90c9e25eb01e18e5a506785e091d1d507fc6e9942c46ad22d3b6462b0b3a4fa0ddce34aa3ed6f4b8dea8c5e8dee35c9dd6ac492bbc -68746cfa640b74b56195a57a9386d4abfab6add165f616a80790dce6c4d6743d09a2d410f09240993155e1b7e068b467addcaa46a39510800004205089001a8d -230202108080bf04d0687fdba6d2644b640840a09704d068341a02108080bf04d0687fdba6974601958200042a1140a3d16808400002fe1240a3fd6d9b4a932d -912100815e1240a3d16808400002fe1240a3fd6d9b5e1a05540a0210a844008d46a321000108f84b008df6b76d2a4db6448600047a49008d46a321000108f84b -008df6b76d7a691450290840a01201341a8d86000420e02f0134dadfb6a934d912190210e82501341a8d86000420e02f0134dadfb6e9a55140a52000814a04d0 -68341a02108080bf04d0687fdba6d2644b640840a09704d068341a02108080bf04d0687fdba6974601958200042a1140a3d16808400002fe1240a3fd6d9b4a93 -2d912100815e1240a3d16808400002fe1240a3fd6d9b5e1a05540a0210a844008d46a321000108f84b008df6b76d2a4db6448600047a49008d46a321000108f8 -4b008df6b76d7a691450290840a01201341a8d86000420e02f0134dadfb6a934d912190210e82501341a8d86000420e02f815dbbb60e9c7bd63dbc61eaedb76e -f9cca3076ff9dcf36f79d7fdcbcbcb99d788de9791fc81f91101021080000484c0c2c2536544b5ac464b8ac8341d0b021080402d0416167e5446a025af0a1aad -655a8935010210800004862350c6cba126836a1a5dcb04422210800004205092001aedef7a42c926241a0420d0630268341a0d010840c05f0268b4bf6dd363d3 -80aa4100022509a0d16834042000017f09a0d1feb64dc96996681080408f09a0d16834042000017f09a0d1feb64d8f4d03aa06010894248046a3d110800004fc -258046fbdb3625a759a24100023d268046a3d110800004fc258046fbdb363d360da81a04205092001a8d4643000210f097001aed6fdb949c6689060108f49800 -1a8d4643000210f097001aed6fdbf4d834a06a108040490268341a0d010840c05f0268b4bf6d53729a251a0420d06302cd68f4eeed2b6f59ff8e7bf7c6e00e7f -e5f6f5efb87dfb4be1ab5f081080000420509240631a7dfba6955a949564a3d1cc4f108000042a12684ea3b77fe5de4d5fd91d5acddbb6adbc775b22d9158b58 -72b6211a04200081fe116850a35f1269de7058906d16b1deb63dd2686553072152f097366c0aff5caf223b7f6ebe57450ec29ddb42c54f52886df34169f6afd9 -a8110420302104aa69b4f396f25c46229ae2d950ff9ed87b67722c8ee9d8b8d6dfdeb26d73a4bc72b0f74eeb4fc3791dc50f5cdb895807e90f4c33d7033edc4b -d7b90a021080c0880476edda5a728ea9a0d1aa4ca5d24df474dbe66ddb82c543addab1511c9bd2e172626c442f06826bfe99b29aa39463835aa9ff803459a584 -000420e0178185851f9594d3b21a5d41a095511cae108ae362e5ed9b02b337d1e8d06a4e85d0a7917c15ff2966b56d77676b74a9344bcd2ef8ca21000108b442 -6061e1a932325d41a32b689c56d2c0c88d5d19915fc2742b6fdb1c44502a1cba2cc46d6dfeb93b767d840b8fe1932199be8ec234d5ba2501021080806704ca78 -3c1ad6684d24b17f45762bac19ea25c4c037a29ede4baf19065eeca2341168084000021e12189f1dddce64a53cddede4452e10800004ea26d04b8dd62673f2f4 -1e320d010840a08b047aa9d1789621000108f484001add9386eca28140992100818104d068341a02108080bf04ead768790a84000108400002a313102bbb118d -5ee6030108400002a311108947a34743c8d5108000044a1078e5ccf2b3fbdff8b3fbbff37fbebfeb5b8fed2c080f6d7ef1ce2ffe8d449654d1e8126889020108 -40606402a2d19ffdab8d4fffe47c9994249a4446a3cbb0220e042000811a08288d2e9f505b1a7d70ed8a156b0f66956bebec947c66b7962f738b31a5d841e9a2 -4f1b85141c4136062fa30c351420b321ac6ae6b49349bd5291d2356ab101c90a02be11d01a7df5daf2c020851fbb464723b81e8e5a80f2a7846a1999e9544db3 -6a7c55b244d19420cbdfb16806ca38b24ae76a749cb28a5054f81245322f776b54ad05880d819e11d01a7de6c2f2c0e081460f2764798d566f6a928b9560add3 -497e1566c3fb8dadb3a168365ba3b81096fa0faa669922d9739b55a39e0d38aa03818a04b4461f3ebb6c86951ff9a47346fe6c5da3c3a1bb36746e84fe0de5e7 -885d1dc91db496a7d959e56b58111dac58bb55791f946da9af0f9388af37cdc08c34cd02387453f2946547db992a1955c59b5d1bbb4682e21906a951e53047d3 -b730c0b5104475a3249747df141469ab01493b51b2ca936547bbeda5700d2c92d11015bb2fd121d07b025aa3178e2deb2002ad8279528ec7a1d1daf5ecde5327 -b65c74a4a520f3c0d12d27b5485b33d38cfd0525edc1c41d9d52539d693265c4b38b9a32d46ce15439d4b84811cb942151745500e39af4e56e918cbc94db249c -e3dcdccd3943d525b7f0894cabc933bb48a5ead5fbc14805219041406bf47307de54410bb43ad0e7e5601c1aad852e5b556343cdb1851d29d012e018a4e679c7 -a9ea4e09e5dc08995a9397692ca65115f37234d3aca465ca0f6ce969ac92c51ccc7e9299bba9e4ca235e12575e91642628b1f4c80886c00412d01afde49e3312 -b4403bc7eadbae6bb4bd789596f5b41e55d5c70c0dcdcf34ee6ea1e7215fe6aa9621e9c5b17aba2b87833854d3e8b07c4a64071735a74895e69e091ca6547982 -09688ddeb2eb8416683956c139e393461b1e80c8aa738c62f32e3ffaca701f6b83ceb2b813fbd04dd3f619e476986c8d8e5db7e94ccd7bff5c9933acd6415ae6 -1ab8919fdb70560487f91c4cbf8af67538b7329187d9f04717dad1a58a34a85e133c42a9faa413d01afdc39dc7258828ab031dcc335e69b4b19256e0d9b0bfb2 -eefb83afe287ad4d7d570ee594e334eb9189c235c3b86bb9991a7aa4bf72d60c0337b233c76837f7209f80b11ea81fbcd3e712b78ae536b7243249c079f03a21 -60fb4f92683976748922c50d51341e35edf4c1a40f63eadf63028e463b02edfcd9a246f718f928551bf49cdb2869732d0420e0210134dac346718a643e2937c8 -8af6bf3694100210a842008dae428bb810800004da258046b7cb9bdc200001085421a034fa85572e9bcf41e71d4bb4b1efd7a197f9aad4b2b5b8e9c5b4a6b38e -3cd4590b91b5ec3c95f9c4456aed75402d8df89537104957b069a4a40f019f088846cb8fbcef58b3fe0bdffcc1c0f0a9b9757b8f07a56f7effe8dc87b16a5d35 -4b3fae3762db0c7e40383f83e19e3f4b24ac2f7b2aa5bdf1d1832395e57dc4c6e47208f840e0c727965f3dbb7cf45c108e2d2d9f38bf7cea8de5b36f2e9fbfb8 -fcc6a5e5372f07e1e295e5cb57a320f1c7aad1c309591ee97a53935cdc87d89a9795836bfbb6a792d3584e057d18349401022d12f05ba343c9634fa589da53c9 -7a66bcc591405610f09380f71acd9e4a93b5a752eccbb27e9ee8e7d8a15410688380f71acd9e4a43fbb83bb9a7526446f31c781ba39f3cba4060a2347ad05e42 -6935acaa8f190e6ef65432c741d93d95a27da6ba30842823041a25d0598d664fa5ac7e516a03239ff7540a2a90de2aa5d12140e210f09a4077359a3d95b23b56 -890d8cac35c8688fe9c4b930e63d954aaf19b2c592d7ca42e1ea22e0ab46d755bf9ea553ebd3e13d63437520d04b0268b4ffcdca9e4afeb7112584405304d0e8 -a6c8922e04200081d109a0d1a3332405084000024d11f055a3f37fa55de68d1d4dd11a98eed8f75472b8e5612cf8113c7b180d6c652240a045029dd3e85a57cd -fab7a7529d1addfc66232d7674b282404709744da3ebdd05a9ded4a40bf8b6a7d21076347b1875742853ec9e12f05ba3d953696bd8ef4c174af1afa4f3ece824 -85f07a152df8777676857afd2c56734f8738d5ea3801ef359a3d952aeda9643bc4e3179c1bca9da873a8d1d18ffacc3c3adea3293e04fa45c07b8d664fa54a7b -8664dad1ae70af58bb55dbd181551d9bea98d2fd1adcd4a61704264aa327604fa55c8db6f5d7b4a6b546b3d75c2f863495e81981ce6a347b2a65f6c46c7fb4b1 -d5923ad41a1dbba18d183debe1540702dd26d05d8d664fa5ac9e97fbec9dfe41b9b366b8225a321c6c44b38751b7873aa5ef28015f35baa3389b2e76ad4f87db -4f0a365d74d2870004862180460f43addd6b1adb53a9f6c7c3dbe5426e1098040268f424b43275840004ba4a008dee6acb516e0840601208f8aad1f9b7e1eca9 -64f54b670ba4d1f7eb48fd0aa6a5a7a6d9cb6912f4863a5627d0398dae75d58c3d95d23da6a4ca57ef6a19579879251addd2a4504b0d4804024d13e89a46d7bb -cc556f6ad2565682b54e27791dc1d902a9a4c21654dcfdaac95ad83fa19c0d7ff3b875168d6e7ad4937e9708f8add1e1185e3bab36fd919f5be8271cc2619cdc -95c77fea1d82e283f057cff1ae15c1f88f920a538baf8f76170a1522234db3004ed3a6f42beb77db76a64ac7d54e46b36b55e1a6c25d338cdffe19550e7334fd -0f4defa994a7f24919e21238a5caaabb51f2e82a7d916e9a78cb902e0d1bca0a81d60878afd1eca9d4f29e4aae3f5a59b586004787c619f51bfb0c8d4e5f15cf -6a412ef1cf1d5bebec6404810e12f05ea3d95329d33ecd777d049b8eea6fb56d9edc3f8456bbdc5da45555fd2edcb2a39594da86bcb2fb550a2a23e30ec03de3 -e41b6eb517dd37b8797570f4506408344f60a2349a3d95e20e95a7aa69dd54866facd549874ccf1c996772b6a50efd3fd8d1cd8f6f72e83e81ce6a347b2a6576 -be6c6fb221b1a6932175daf16a8439a4443abaca98f0a243c33b1f9dc9ca37723f8705358df1ee8f256a008126087457a3d95329ab3fe4adf825cba583f65472 -5248e6427b5726a5ded18ae70ae5f7485cd97222f284b857196b8672459987ddd9cba989814f9a9d21e0ab46770660bb05adf74138578e87ad4b5de90c9b3fd7 -41a0c704d068ff1bd7fb3d95d068ff3b1125ec2c0134bab34d47c1210081092080464f402353450840a0b3047cd5e8fcdbe732cb4c636b8e64d54cfd30b2f982 -14efa954357fa3fc35143eb311d93ba96aa3107fb209744ea36b5d35d32252974735fd8c70f9ee355c199cad88d20f3e972f40f09485f93bef91557a80468f9c -7e85aa1115025d25d0358d1e4ec8f25aa7ded424172bc15aa793fc2a585b118da2d1cdd2882be06c02d5d58143b921d01201bf353a540df654aab8a792dab049 -6dd4643db41c3dc39cb3e1948aea6ed9643cf3ac7efa5db045d456e3cbe817e456f3b5d4a7c906027d22e0bd46b3a752d53d95ac8d380cdb589bd84a87b5205b -e6b3fd13938cad948cceef2468fd603c749bc8cf089de6ebd3d0a12e10688580f71acd9e4a957cdc8eafc35ec3b4f6422af6c5ebadecdc4d91521ba516a453a9 -e4ad7477328140e7084c94464fcc9e4aa66e3a4f97a42535db0d1d3ad303897756f606313447001add393da0c0fe11e8ac46b3a752666772d70c0d955587f91a -6d0972dea648d1164b61deeeb6d16602b1afc3b90df26f00502208784ea0bb1acd9e4a595d2b9260f321727b57a3423bda580fd4e673eea648d1b2a4fb288b7e -698efd94cbe08746d83bc973ada078e321e0ab468f8786f7b9b6f2389ff7142820042688001aed7f6337b6a792ff55a7841098780268f4c47701004000021e13 -40a33d6e1c8a0601084c3c015f353a7f89893d95ac4edbb93d95dc47b65bd9794a3d85a27ffb7870e2c73d00ba43a0731a5debaa59f1ef388668c5519e081efc -e44356813ab7a79253cde16a5db269ccc41d502553201a04c64da06b1a5def90ae3735694bf741b4e6b77673b628729f8faed2bf9aa51197c4cda5d649d7a9ae -3d655a9b4f5501435c088c9180df1a1d8e31f654ead59e4a797674e20331f7478d7f8a6e6d4262cc85a9abf48968bb10bdb7d41807195943600402de6b347b2a -f56c4f25d71fad6e350ce58e0e8d33ee0f1a75f4f455b155ae7ef358fb9dc108238d4b21301c01ef359a3d952af9b81d5f872b88a171a9f72c750ecc1ed4dc9e -4a966e2a29b5f76952bf5fd4e5d4029ee690aeddc1e854d46bd0e8e15481ab7c2230511a3d683fa04c15a8b4e3448628e4671af783f04995d8e81bb10c191a6d -fbc475fae903ab5f36b6a792834819beb156274528c3217d5526529fc61b65814055029dd568f654ca6c6a47a31d3f890f7b2ab9d3584aa423e535e6b6e8d058 -5dccdbf229b8d6b83b308df1aa2383f810f0834077359a3d95b27a50a4801eefa9e46ab43686ddcd9b9297baac904ffc5a02b588189f315e0b93b837a228c115 -651ea6672f273fa48852e410f055a369b04c024d3ea8e62f72dccafeb60d256b9c001add38e2913398f83d95d0e891fb10097497001addddb6a3e4108040ff09 -a0d1fd6f636a080108749780af1a9d7f7b5b6619686ced613fb1dbfc2fc1535b058de21618e2da212e516dc30e4763eba364dc31029dd3e85a57cd063c235cbd -2dd34ff5964f6338bdab714fa5210a30c425ae46b73191956f046242c037025dd3e8a14521137cbda949165682b54e27791d67bc7b2a0d0dd029b66fc382f240 -c01b027e6b742801eca9d4d29e4a69c14d5c37b1b5eb9c492e095d50993b1f0571666757a8a796b19abd19fa14a42304bcd768f6546a6d4fa5dc5f97e812243f -be8e8e929fcc189bd5a5b758897efb97f193ef8e0c138a0981b111f05ea3d953a9928f5b4536fdecf1ee9eeaf779457b2a391a9dce37f38c631f0fbc0a537a6c -839d8c3b4960a2349a3d95ec9d978b37c01ba8b66a3270b6442a735527470a8586c078087456a3d953a960153411cac43b11014b3fca92fb704bcab351cc3c32 -90533b1fa58a309e9e4eae10e82681ee6a347b2a65f5b8c441ac17e8ecbd8a8a35da748c445b86463e92832a37bd6698da7b3afc26389b2c2baa9d8f821c5744 -4b86da73953b5ad8e1a89b4242a91b23e0ab463756e16e27dccae37c35234a3f2e5273062407813e1340a3fd6fdd8eefa98446fbdfc528a1c704d0688f1b87a2 -410002134f008d9ef82e00000840c06302be6a74fe0d327b2a59ddc9d99c6814c7c210d70e7189b3f618af52b6f40344f672f2588c285a2681ce6974adab66b9 -8f9d0ddb5b2afddec4c96438bdebe89e4a05bf9719967dee75665e0eaedaf3224108d44da06b1a3d9c90e551ab3735c9c54ab0d6e924bf0ab3c18bfb64b3cfd0 -12550518ae5e435c35c425da8eb69ec36b92953d715ab8ea1e4ea40781da09f8add1e1e8624fa51eeea99467471b0f5787538ff14476de9e4d569cf49b67b706 -cf6dab6b6b1f3d240881e60978afd1eca9d4cb3d95122d36f7fb30943b3a34cea85ff2677893d257c5567990cbecd6a18dfde6871f3940602001ef359a3d952a -f9b81d5f872b85deeca964e9a69252db64767680ca74e3e8ca3afb4685db8824a6331a3d500688e0318189d268f654f2664f25473795e11b6b75325ed2f353e6 -999cbdf4c24780b0a33d961f8a56824067359a3d95325bd75d333464cfb9f1d762973e88524eae350d5df5905c74c6bcb6d29e4aae6d9b12e92803635a8d0e53 -7b3639be2025ca91fb39cc666bb88e5a62301005021e1278e5ccf2b5ebcbffe34b8fac7b7cc10cdf7a6ca77346fe9468125f3eeb1edeb078e2f49eddfbe4dfe2 -2031a7de7eeb96cf3c7af096cf3dff9677dd2f17675ea0d292d8893ee4bed4231e6ffa463e6f8fcd94fa58b7fec155f1c3d696d6184b4c03fc0ca9a711b26eab -dd4c8d38560d5c79b56d5e7d3b5f2c3751e2e643e45eeea9e482d2f3815d5ae90dc989708726d323a2f66c0a7a8c7b95dd35ca3c52cf5e4e1eaa13450a0888e6 -7ef6af363efd93f36570483489dc8a469729ce04c669f211b5a67066cd5bc3e455573ac3e4cd3510181b01a5d192fdf98bcb87cf06e167a782b0706cf9f98317 -253cb56f69ebc2e2965d27fedf4b27251a1add7e53b1a752c81c8d6ebfeb91a30704d21abd7f7159c24bafdd40a33d681f8a0001084c3681321abdede553d8d1 -93dd4da83d042030260205be8eed872e491893af23ffc6b6cc02d09860ba4ff8b6b14fd0e87b2a196b9a351438b3e1d8c9686c3d928c3b4fa0c08ef653a36b5d -35cb7dec6cd8761df01c4861b2c3f95b33f754d2f964a6699db49f191ffda5dd0334ba865960d8b6e13a08749280a3d1e93a881d3d0e5f479e600d2764794d53 -6f6aeeba56add3497e1532f6542aee8aa34c24033b79ceacc04e4603c91101029904d276f4dd5f9e77c2389eeb301e16664fa58a7b2a19bfd78815d3785e78ab -bdc750f08dfbc875e2fd701f3f8e5e641b243b3b1bfcde5aece2e4b193e8f7dcd636588c3b08406024027edbd1a15844b7c7ee4f3cf4af1e8cdfbc29b5d1b263 -1e383ae4a4166959669a7601069aa8c9de11a95f9be84c2355ccdafa275de521f654727d1dc57b0c19022ef4cc67dcd246b15b858458f84392f0477d4e938dd4 -3fb91802934ea0037674a01b5a3ab46aa46fd8d35f659e317fb0e7442848d3f563e4f49b9c3b7db53b66b4cd4f122712c7643fcd323fad2cf53bc3b878c6dc33 -788f21bdb19cbb4551fe06a179226e36d9a40f31ea0f81910894b1a3c7eceba84fa327664f25d78e8efe1eb4c750686e9b9671725d3c3364df7f185d303dcf8d -d43fb91802934ea08c1d3dbe35c322c336cb2f3160e38ed4763caea19d9fe6f0767461a6e9ad7f3234ce50cd4c3bddecc34e840cd784b5c79025c8d114666717 -799ce3e731b4ad6d6ca66f7d27be0e673bd9491f62d41f022311e8ac1dad44533b104c0dcd777ae82be2dd85fbb8a792e9a988771db251598f981bbf34d70fc6 -e56e519472d708f78c3543ebd6a7a87fb293d148a3978b278140193b7a1cbe8e49603f441d5b799c6f887271090420d0108132bf611987afa3a1ea7632d98eef -a9d449e6141a02be1028a3d1d8d1beb416e5800004268d409e469b7b9362474f5aafa0be1080802f04caec7b871ded4b6b510e084060d20814d8d163dd5369d2 -da81fa42000210c822a034fa85572e3fb1fbf4c020d1780f0bfd08021080407b0444a38f9e5bbe63cdfa2f7cf307c561eea1c73f7ddfb7db7ae76c7b04c80902 -108080bf0444739fddffc69fddff9dfff3fd5df22ef082f0d0e617effce2df4864a94cf3ef05f797182583000420d01e01de0bde1e6b72820004205095805e33 -2c7921fee892a08806010840a006025aa3af5e5b1e18243f34ba06e82401010840a02401add1672e2c0f0c687449aa4483000420500f01add187cf2e0f0c6874 -3dd049050210804049025aa3e5c7df12567ee493ea4007f30c1a5d922ad120000108d443406bf47307de143956418e5570cea0d1f5402715084000022509688d -7e72cf19095a949d63f52d1a5d922ad120000108d443406bf4965d2754d032ad0ef4793940a3eb814e2a108000044a12d01afdc39dc775d0326d9e946334ba24 -55a241000210a88740a6468b1c8b4c3b028d46d7439c5420000108942790a7d1698146a3cb532526042000817a08a0d1f5702415084000024d1040a39ba04a9a -10800004ea21a0f7f8d7cf44171cb0c77f3dd04905021080404902a2d1f213f0327bfccb1b003e35b76e6ff07007fb4797a44b3408400002e320a0f6f8dfb56b -abfc5b1c24e6d4db6fddf299470fdef2b9e7dff2aefba5b49917ecd9bd4f82c4264000021080c0e80416169e1251ad4da3252125d30353240204200001081413 -5858f85149392d6b47abfc944c13200001084060140265bc1c4a75ab693473230420000108b449008d1ee0b06fb331c80b0210808043008d46a321000108f84b -008df6b76d302820000108a0d16834042000017f09a0d1feb60d160404200001341a8d86000420e02f0157a347fff10c294000021080408d04dcdf828fe3c7eb -e40901084000021904f075f87b8f83270e021080001a8d4643000210f097001aed6fdb60414000021040a3d16808400002fe1240a3fd6d1b2c08084000026834 -1a0d010840c05f0268b4bf6d830501010840008d46a321e02381d3a7ce9e3db374e2d8d19e8593c75e937a49ed4a8a2f1cd0681fc767c9ee4bb41e1310215bbf -f9b9b77ee0d1fe05a997d4ae64db290ebffdc907de76f3ddbff05b77f523bcf5e6bbdf3b736f490e68341a0d011f0988bd29ea7ceb7fffdbfffef8c9cf6feb49 -90ba488d7ef363f79d3eb55852a38583c4ffd41737ed3974eae503a776773f482da42e52a3921cd0681fc767c9ee4bb41e13501afd896fec7be8fb87fa14a446 -52afb367ca8e3be1f04b37df7df0f8854b57972f5fef4990ba488da45e6538a0d165fb4a8fe580aa794840dcd0a265b30ffd64dde3875ebfb4dc8f2075911a85 -1a7da624f380c3fbeeda7b68e9eaf59e4090a694ba488da45e6538a0d16834047c24a0ece83ff9c6be6f3c76e8fa8d1bfd085217a951a8d165d70c030eefbbeb -a59f9dbb7c6db91f10a4165217a951a8d18339a0d13e8ecf922606d17a4c4069f41f7ffdc77ffdbdfd57af5fef47f8eaf7f64b8d86d0e8177f7afad2951bfd80 -20b590ba488dd068c417021d26a034fae35fddfb571bf75dba76ad1f41ea22351a42a39fdfbbf8e6e5ebfd8020b590ba488dd0e80e8fcf1e9b8754ad2401a5d1 -337fbde74b8fec79e3ca959ac3e37f32157d6efad2fe38f1fd0fbefba607f74479edffd24d5353c99ff514e0fe47f6488d86d0e8675e9645c36bc341d8f3a0d4 -24fadcf6783d15094a62e1aa96acd4456a8446a3d110e83001a5d1abbfb2fbde0dbb972e5dae337cff1353539fd8a4d2dcf7e0bba66eba6f5f7c7cd3832f87e7 -3705511eaf33d330d92f6ed82d351a42a37fb4ebd8eb6f5e1da23c2f7ff926996954a5962e3dfef1a9a98f7fbf2698822e49b95a9a5217a9111adde1f159d2d4 -225a8f09288dfee8ff7ef90b0fef3afdc6c5fac2be35efbe69cd1e23c1cd7f3c75dbf783f4f77c79fadd5fdef9c6c59d62428707f5651a25f58575bba4464368 -f4133b5e3d7fe14af5f2a42a5b63a5625cd54b7551ea223542a3d16808749840531a2dca32f5c71b4da9d26794e888643b11ead3b5b6353a474637dea69d1f53 -339ba3c9694d7c32381354f9fb3371ace84c004a7dc2490e8deeb18944d520309080d2e8dffff24b777f7dc789a50bb585971f987ed703dbad041f5b3575dbbc -9c91af62555ab5a9be1c8dbca42e52a321ece8c79e7de5f4b98b95216454d6ae978a10563caa7274c9deb977c5679684cfbbe75e9633f26f78b9beca2559169a -d4456a841ddd611b6ae0002642ef09288dfebdfb76fee9979f3db2f87a6d61c7fdbf36f5f10d6682fa4c70f0eecfef78fdc8fcc7a7a6ef7fb6c64ce3a4a42e52 -a32134fad16dfb8f9daa0e416a945991a0a6f1472298d1d471fa42f392e0d2777f7e3e27f112dca42e5223341a8d8640870934a5d18bbb3f3f1d0ab1961251e4 -d57f17fc990893c499fab5b9ddb54d0ce3d2e874658392fcdd1faaa94857b9ac46a7e6b661673234bac323b3f7e621152c494069f407ef7df13fdff7f4cefd8b -75866fad9e9a5abd56a5b96dee5f4d4d7f7a5b7cfc6fe736a7cfd797fb7fb9ef69a9d11076f477b6fce4d5934b4340d87ccff494aed4fef90f4e4d7df05bf26f -5c7d4121df0a04b3e2c1f18e4fff5b89a9b04b7c41649c09a0ad5e6b5e551191d4456a841d8d5243a0c3049446ffa7352f7c62eeef9fd97dace6f0b58fc6b7fa -bf7efbe371e28fffe53b7ff52fe7e3bce6effaf5a9a98f7ea9d6aca52e52a321347afd0ff61e3e7e6e38086145a2cfcaaf059535cf4c4995cd8a27c78facb4af -7a66b73e1342b371552a9bd4456a844677787c9634b588d663024aa3577e61fbeacf6d7be2c5c3fd08abffe736a9d1101afdd0f7761f387aa61f10a4165217a9 -111a8d4643a0c3049446ffc7bf7cfe0ffffcff3dfedc817e04a98bd468088dfefadf2eec3f72ba1f10a4165217a9111adde1f1d963f390aa9524a034fadfffaf -e73f7ccf968d4ffeb81f41ea22351a42a3d76e7c69df2b8bfd8020b590ba488dd068341a021d26a034fa77fee773b7dcf5c36f6f59e84790ba488da45ee74aec -c9a92633b537e983dfddb5ef9593fd8020b590ba488da45e6538b03769878771498b8c685d2470f2f831d1b2777ef8d15ffbd8c68fdcb3e596fff1c3ae07a9c5 -4dff79b3d428d0e8b3e74a368a7090f7953cf8c8ae17f6befaf0632ff623485da44652af321cd068341a027e12382e5af62b1ff9bfa2d17d0abffafbff57eab5 -74aeac462f9e387ed31fcc7df08ef56bd66d5fb3fe859e8475dba546eff9a3356538a0d17e8e4f4a35e904782fb832b41587f77fe201b13ac539d08f20ef387f -efcc7dbc177cd20779c97b49a2f949e0f4a9b3224f722fbc746ee97c3fc2d2f9f361907a49ed4a6287037634520e010840c05f0268b4bf6d53d2d0201a0420d0 -630268341a0d010840c05f0268b4bf6dd363d380aa4100022509a0d16834042000017f09a0d1feb64dc96996681080408f09a0d16834042000017f09a0d1feb6 -4d8f4d03aa06010894248046a3d110800004fc258046fbdb3625a759a24100023d268046a3d110800004fc258046fbdb363d360da81a04205092001a8d464300 -0210f097001aed6fdb949c6689060108f4988068f4ff075d8a493e362c02b50000000049454e44ae426082} -\pard -\pard\plain \absw7215\absh8370\dfrmtxtx0\dfrmtxty0\nowrap\pvpara\posyt\phcol\posxc{\*\flymaincnt0\flyvert9281\flyhorz33282\flyanchor0\flycntnt}\ltrpar\s16\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb120\sa120\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i {\rtlch \ltrch\loch\f1\fs20\lang1033\i\b0 Illustration 2: WSDL importer wizard} -\par \pard -\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 It will produce two (2) pascal source files : } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls20\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 AWSECommerceService.pas,}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 the service definition file ( Pascal equivalent of the WSDL file )} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls20\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 AWSECommerceService_proxy.pas,}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 this file contains a proxy which implements the service interface defined in the first file.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Import by the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b ws_helper}.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\rtlch\ltrch\dbch\hich\i\b\loch\i\b ws_helper} program is a command line version of the import wizard. In order to present its capabilities, below are printed the command line arguments it supports.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Listing ws_helper usage]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ws_helper [-uMODE] [-p] [-b] [-i] [-oPATH] inputFilename} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 -u MODE Generate the pascal translation of the WSDL input file} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 MODE value may be U for used types or A for all types} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 -p Generate service proxy} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 -b Generate service binder} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 -i Generate service minimal implementation} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 -o PATH Relative output directory} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 -a PATH Absolute output directory} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/Listing]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 To translate the WDSL file from the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b \'93Amazon E-Commerce Service\'94} execute the following command at the prompt:} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Listing WSDL parsing]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ..\\..\\ws_helper\\ws_helper.exe -uA -p -o. AWSECommerceService.wsdl} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ws_helper, Web Service Toolkit 0.5 Copyright (c) 2006, 2007 by Inoussa OUEDRAOGO} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Parsing the file : AWSECommerceService.wsdl} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Interface file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Proxy file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Metadata file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 File "AWSECommerceService.wsdl" parsed succesfully.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/Listing]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 below is printed an extract of the two generated files :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [code File = {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 AWSECommerceService}]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 unit AWSECommerceService;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$IFDEF FPC\} \{$mode objfpc\}\{$H+\} \{$ENDIF\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 uses SysUtils, Classes, TypInfo, base_service_intf, service_intf;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sNAME_SPACE = 'http://webservices.amazon.com/AWSECommerceService/2007-04-04';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sUNIT_NAME = 'AWSECommerceService';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 HelpRequest = class;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Help_RequestArray = class;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AWSECommerceServicePortType = interface(IInvokable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{305A7E48-DD92-4C20-B699-4F2B47C93342\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Help(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const HelpParam : Help_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):HelpResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function ItemSearch(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const ItemSearchParam : ItemSearch_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):ItemSearchResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function ItemLookup(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const ItemLookupParam : ItemLookup_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):ItemLookupResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Register_AWSECommerceService_ServiceMetadata();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [code File = {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 AWSECommerceService_proxy}]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Unit AWSECommerceService_proxy;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$IFDEF FPC\} \{$mode objfpc\}\{$H+\} \{$ENDIF\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Uses SysUtils, Classes, TypInfo, base_service_intf, service_intf, AWSECommerceService;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TAWSECommerceServicePortType_Proxy=class(TBaseProxy,AWSECommerceServicePortType)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Protected} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class function GetServiceType() : PTypeInfo;override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Help(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const HelpParam : Help_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):HelpResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function ItemSearch(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const ItemSearchParam : ItemSearch_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):ItemSearchResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function ItemLookup(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const ItemLookupParam : ItemLookup_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):ItemLookupResponse_Type; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Function wst_CreateInstance_AWSECommerceServicePortType(const AFormat : string = 'SOAP:'; const ATransport : string = 'HTTP:'):AWSECommerceServicePortType;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Implementation} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 uses wst_resources_imp, metadata_repository;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Function wst_CreateInstance_AWSECommerceServicePortType(const AFormat : string; const ATransport : string):AWSECommerceServicePortType;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result := TAWSECommerceServicePortType_Proxy.Create('AWSECommerceServicePortType',AFormat+GetServiceDefaultFormatProperties(TypeInfo(AWSECommerceServicePortType)),ATransport + 'address=' + GetServiceDefaultAddress(TypeInfo(AWSECommerceServicePortType))); -} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function TAWSECommerceServicePortType_Proxy.ItemSearch(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const ItemSearchParam : ItemSearch_Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):ItemSearchResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer : IFormatterClient;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 strPrmName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer := GetSerializer();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Try} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer.BeginCall('ItemSearch', GetTarget(),(Self as ICallContext));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer.Put('ItemSearch', TypeInfo(ItemSearch_Type), ItemSearchParam);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer.EndCall();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 MakeCall();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer.BeginCallRead((Self as ICallContext));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TObject(Result) := Nil;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 strPrmName := 'ItemSearchResponse';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer.Get(TypeInfo(ItemSearchResponse_Type), strPrmName, Result);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Finally} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locSerializer.Clear();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 We are now able to build a simple program for the service. The {\rtlch\ltrch\dbch\hich\i\b\loch\i\b Synapse Library} is required to compile the program as it is used for the HTTP communication. This library can be downloaded free of charge at this {\field{\*\fldinst HYPERLINK "http://synapse.ararat.cz/" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://synapse.ararat.cz/" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://synapse.ararat.cz/" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 location.}}}}}} The {\field{\*\fldinst HYPERLINK "http://www.indyproject.org/Sockets/fpc/index.en.html" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.indyproject.org/Sockets/fpc/index.en.html" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.indyproject.org/Sockets/fpc/index.en.html" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 Indy}}}}}} Library or {\field{\*\fldinst HYPERLINK "http://www.overbyte.be/frame_index.html" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.overbyte.be/frame_index.html" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.overbyte.be/frame_index.html" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 ICS}}}}}} library can -also be used.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [code]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 program amazon_sample;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$mode objfpc\}\{$H+\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 uses} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Classes, SysUtils,{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 soap_formatter, synapse_http_protocol,}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 metadata_repository,{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 AWSECommerceService, AWSECommerceService_proxy;}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const sACCES_ID = ;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function ReadEntry(const APromp : string):string ;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result := '';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Write(APromp);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 while True do begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ReadLn(Result);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result := Trim(Result);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if ( Length(Result) > 0 ) then} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Break;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locService : AWSECommerceServicePortType;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst : ItemSearch_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rsps : ItemSearchResponse_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rspsItem : Items_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 i, j, k : Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 itm : Item_Type;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 SYNAPSE_RegisterHTTP_Transport();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('Web Services Toolkit Amazon sample');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('This sample demonstrates the "ItemSearch" method of the Amazon web service');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst := ItemSearch_Type.Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 try} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locService := wst_CreateInstance_AWSECommerceServicePortType();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.AWSAccessKeyId := sACCES_ID;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 while True do begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request.SetLength(1);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request[0].SearchIndex := ReadEntry('Enter the Search Index : ');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request[0].Availability := Available;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request[0].Count := 10;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request[0].MerchantId := 'Amazon';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request[0].ItemPage := 1;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rqst.Request[0].Keywords := ReadEntry('Enter the Keywords : ');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rsps := locService.ItemSearch(rqst);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if ( rsps.OperationRequest.Errors.Length > 0 ) then begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(Format('Errors ( %d ) : ',[rsps.OperationRequest.Errors.Length]));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 for i := 0 to Pred(rsps.OperationRequest.Errors.Length) do begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(Format(' Error[%d] :',[i]));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' ' + rsps.OperationRequest.Errors[i].Code);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' ' + rsps.OperationRequest.Errors[i].Message);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end else begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(Format('Response ( %d ) : ',[rsps.Items.Length]));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if Assigned(rsps) then begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 for i := 0 to Pred(rsps.Items.Length) do begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 rspsItem := rsps.Items[i];} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' TotalPages :' + IntToStr(rspsItem.TotalPages));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' TotalResults :' + IntToStr(rspsItem.TotalResults));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' Items :' + IntToStr(rspsItem._Item.Length));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 for j := 0 to Pred(rspsItem._Item.Length) do begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 itm := rspsItem._Item[j];;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' ASIN :' + itm.ASIN);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' DetailPageURL :' + itm.DetailPageURL);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if Assigned(itm.ItemAttributes) then begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' Title :' + itm.ItemAttributes.Title);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 for k := 0 to Pred(itm.ItemAttributes.Author.Length) do begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' Author[ ' + IntToStr(k) + ' ] ' + itm.ItemAttributes.Author.Item[k]);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' Manufacturer :' + itm.ItemAttributes.Manufacturer);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn(' ProductGroup :' + itm.ItemAttributes.ProductGroup);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end else begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('Unexpected service response : Invalid response');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if ( UpperCase(ReadEntry('Continue ( Y/N ) :'))[1] <> 'Y' ) then} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Break;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 finally} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FreeAndNil(rqst);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FreeAndNil(rsps);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ReadLn;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The units {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b base_service_intf}{\ltrch\hich\f4\loch\f4 , }{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b service_intf, soap_formatter, synapse_http_protocol, wst_resources_imp }{\ltrch\hich\f4\loch\f4 and}{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b metadata_repository} are provided with the toolkit; Below is the result of a execution session searching for \'93Freepascal\'94 in the \'93All\'94 search index ( t -he service is case-sensitive!) .} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Listing]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Web Services Toolkit Amazon sample} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 This sample demonstrates the "ItemSearch" method of the Amazon web service} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Enter the Search Index : All} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Enter the Keywords : Freepascal} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Response ( 1 ) :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TotalPages :1} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TotalResults :9} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Items :9} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ASIN :0470088702} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 DetailPageURL :http://www.amazon.com/gp/redirect.html%3FASIN=0470088702%} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 26tag=ws%26lcode=sp1%26cID=2025%26ccmID=165953%26location=/o/ASIN/0470088702%253} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FSubscriptionId=0W3H25JMMGBNBXSTQN82} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Title :Beginning Programming For Dummies (Beginning Programming f} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 or Dummies)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Author[ 0 ] Wallace Wang} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Manufacturer :For Dummies} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ProductGroup :Book} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ASIN :0471375233} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 DetailPageURL :http://www.amazon.com/gp/redirect.html%3FASIN=0471375233%} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 26tag=ws%26lcode=sp1%26cID=2025%26ccmID=165953%26location=/o/ASIN/0471375233%253} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FSubscriptionId=0W3H25JMMGBNBXSTQN82} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Title :Assembly Language Step-by-step: Programming with DOS and L} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 inux (with CD-ROM)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Author[ 0 ] Jeff Duntemann} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Manufacturer :Wiley} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ProductGroup :Book} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/Listing]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 It finds one (1) page containing nine (9) items!} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 wst_CreateInstance_AWSECommerceServicePortType()} function, located in the {\ltrch\hich\f4\loch\f4 AWSECommerceService.pas file }create a proxy instance based on the service's informations contained in the WSDL file.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [code]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Function wst_CreateInstance_AWSECommerceServicePortType(const AFormat : string; const ATransport : string):AWSECommerceServicePortType;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result := TAWSECommerceServicePortType_Proxy.Create(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 'AWSECommerceServicePortType',} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Aformat+GetServiceDefaultFormatProperties(TypeInfo(AWSECommerceServicePortType)),} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ATransport + 'address=' + GetServiceDefaultAddress(TypeInfo(AWSECommerceServicePortType)));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/code]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The complete source code of this example is shipped with the toolkit.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b\qj \ltrpar\s6\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Connection Parameters } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The connection string general format is: } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch {\chcbpat4 }}{\chcbpat4{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 protocol:paramName=paramValue(;paramName=paramValue)*}} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 where :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls19\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b protocol}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 is the protocol being used,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls19\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\fs20\b\loch\f4\fs20\b paramName=paramValue}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 enable parameters passing to the protocol.}} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b HTTP connection Parameters } -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 HTTP supported parameters are: } -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b address}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 {( required for a service supporting a unique address ) }} -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b ProxyServer}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 } -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b ProxyPort}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 } -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b ProxyUsername}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 } -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f4\b\b\b\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b ProxyPassword} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 HTTP Connection through proxy are supported using the {\rtlch\ltrch\dbch\hich\i\loch\i proxy*} parametters. Below is an example address string. } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sADDRESS = 'http:address=http://webservices.amazon.com/AWSECommerceService/2007-04-04'+} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ';ProxyServer=197.150.10.10;ProxyPort=9881'+} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ';ProxyUsername=inoussa;ProxyPassword=wst';} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has three HTTP implementations based on ICS ( {\ltrch\hich\f4\loch\f4 ics_http_protocol.pas} ), Indy ( {\ltrch\hich\f4\loch\f4 indy_http_protocol.pas} ) and SYNAPSE ( {\ltrch\hich\f4\loch\f4 synapse_http_protocol.pas} ). } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b TCP connection Parameters } -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 TCP supported parameters are: } -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b address}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 {( required for a service supporting a unique address ) }} -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f4\b\b\b\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b Port} -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f4\b\b\b\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b target{( the target service ) }} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Below is an example address string. } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sADDRESS = 'TCP:Address=10.0.0.3;Port=1234;target=UserService';} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has two TCP implementations based on Synapse ( ics_tcp_protocol.pas ) and ICS ( {\ltrch\hich\f4\loch\f4 ics_tcp_protocol.pas} ). } -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b LIBRARY ( LIB ) connection Parameters } -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The idea behind this protocol is to be able to host services in dynamic libraries ( DLL/DSO ). It can be viewed as a plug-in framework where plug-ins ( services ) are provided by dynamic libraries. } -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LIB supported parameters are: } -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b FileName}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 {( the DLL/SO filename ) }} -\par \pard\plain {\listtext\pard\plain \li707\ri0\lin707\rin0\fi-283\f4\b\b\b\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls18\aspalpha\li707\ri0\lin707\rin0\fi-283\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b target{( the target service ) }} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Below is an example address string. } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sADDRESS = 'LIB:FileName=..\\library_server\\lib_server.dll;target=UserService';} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has one LIB implementation ( {\ltrch\hich\f4\loch\f4 library_protocol.pas} ). } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs28\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs28\lang1033\i\loch\f1\fs28\lang1033\i {\rtlch \ltrch\loch\f1\fs28\lang1033\i\b0 The samples folder contains 3 projects user_client_console, tcp_server and library_server which demonstrate the TCP and LIBRARY protocols.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Multi-Address service ( Address per operation )} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Certain services ( like the eBay SOAP services ) use a address per operation. The toolkit uses extended meta data ( see the services meta data chapter below ) to set operation's addresses. The \'93ebay\'94 SOAP sample located under the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b tests\\ebay} folder demonst -rates the operation's address setting.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b\qj \ltrpar\s5\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Server Side ( service creation )} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Overview.} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Web Service Toolkit contains a server side framework and a WSDL based type library editor for service creation. Key features are:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Service definition ( interface ) is separated from implementation,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Interface and implementations are not bound to message protocol,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 WSDL generation} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Support for SOAP 1.1 serialization} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Support for XMLRPC serialization} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Support for custom binary serialization} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls17\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The framework is not bound to a transport protocol.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Example} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 In order to create a service, we have to :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls16\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 define its interface, } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls16\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 provide an implementation and register that one for the service, } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls16\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 provide a binder that will route calls targeting the service to the implementation and register that one,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls16\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 host the service into an application server( TCP server, HTTP Server, Library server,... ).} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Defining the service Interface} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Starting from the 0.5 version, the WST provides a WSDL based Type library Editor to define types and services used by an implementation. The figure (3) below presents the general interface of this tool. The Type library Editor is provided as } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10132\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls15\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 a Lazarus wizard as a menu item \'93Project/Web Services Toolkit/Type Library Editor..\'94} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10132\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls15\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 a standalone program {\rtlch\ltrch\dbch\hich\i\b\loch\i\b typ_lib_edtr.exe}.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par -\pard\plain -\pard\plain\absw9637\absh6649\nowrap\pvpara\posy1\phcol\posx2{\*\flymaincnt0\flyvert44304\flyhorz44288\flyanchor0\flycntnt{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}}{\pict\picscalex77\picscaley77\piccropl0\piccropr0\piccropt0\piccropb0\picw829\pich572\picwgoal12435\pichgoal8580\wmetafile8 -89504e470d0a1a0a0000000d494844520000033d0000023c080200000054215233000000017352474200aece1ce90000000467414d410000b18f0bfc61050000 -00206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c0000dfd249444154785eedbd09bc1d4599f77f67fc8f -c37f60fcf09fd7579d717b51e10514040515578222c8e008b84e444451d905e10a080857b2b104c2122181cb16099b4040c24e488024ecfb2ec140584220ec28 -a28ef75fddd55d5d5debd3d57dfa74f7f99dcf11cfedf354d553bfaa3af5cd53d55dffb0f7cc87d659ef3f96fff96f43784101280005a00014800250000a3452 -817f5fe5ff79e8be6786662e7ee5a06b9ec71b0a4001280005a00014800250a0c90a30668bb86dbf2b57e20d05a00014800250000a400128d06405226edbe7d2 -15784301280005a00014800250a0630aec71c6633f3ae9a1afee7b63d1f77f4fba63b7531fe56a5492c93ebf7b36cc93ef1f77ff5e173c2db7cbd0de973c8f37 -14800250000a40012800053aa60043a5afff62f169373c57e83d7ac3737b1f77274337ae4685995c73c6f94f5c70fa93bf3dede9df9efaf4f9a3cfc4efe5e79f -22decf9e77327baf38efe4e7ce9bf9fc7933169c76ce1e23d7327493db6568cff357e00d05a00014800250000a40818e29c0c26cc7cf7d7ada35cf4e98fb8cfe -9e38f719f696aff32bc75ef3ecf1739f6269b91a556572f5e9e7df75e6898b4e3cf2d6e993ef3cfeb07b8efbd5fdc78eb0f783d30e79287e3f72ccc1ecfde8d1 -073e36f580278edaefa923f77d7ae6a41b46cf129e707f867699fd2cf1bdd38f77626fa231cca00014800250000a400128d0470518f14cbbf4a9432e7ebae89b -a56269b9e75565b2f4bcd16553f666ef3f1cbeefedd346ee3ce690bb8ffee5bd471f7cdfd483ef9f7ae003530f7cf0a8031f3ef280478edcefd1237ece6cb8f1 -f2b34f149e707f867ef49be7f437e3b3c5c76f77d037d7b8ecc8ad2e9cbcd9f45dd7b9f3ecf1e33fb5fa83e78f9f3779c3072fda8e191813e22214800250000a -40012800059aa000239ea37ff7e401173e55f4cd52b1b4bc0a5565f2c4d9331e9fb8e71313767f7cc21e771e75e0dd471e70efe1fbdf7ff87e0f4df9f9239387 -1f99bcefa393f77974f2cf1e9bb4f7d2893f653691e5c43d9f99fd6be109f7c7c06dd38fdf77eaf7d6b9f0179bfde1c689bb8f7bd7e2d376baf0179becf4d9d5 -f71db7fabcc336dcec3dab6cb2fa2afb7e76f5cb7e7759135a053e4001280005a0001480025040578011cf91973cb9ef79ecfd14fbef70f45ffe815f4caeeb9f -592a99dbe44cc67caf34b727954c9e38ebd74b7fb5ebb243777e68c24f9fbfeb6696cded87efa7bfd975f62db36196ccfee9df9ca072db8ea72d57de137fb0e1 -66ff67f589df5b63f4171b6eb7f62afb6efbaecdd65e65f7afbe6ba70d569fbee71afc5974fbfe603cfb6f2ee19cd79e4d2af3d72be63c7fc5cb63632fbf3692 -663e72cf5fc71e7f49d88f3ece4cdf18d58a8e0ce27c9ebde779dd314b71f6ac8cf95b2eba5c2a924feae44b771b9b56d2c453c1a8d038139ec4220bcd6de10c -6b1ab9b92b7152ed3f867a799d27367a484358dccbba6bd24e7a978b3aed58a2184d678214155601594101280005a0805301463c532e7972afb30bbf592a9696 -4f674a263e6c1b13c529992c9b75c21f0efed1b2837ff8f0a1bb8a4cee9cf033f92dae331b66c9ec9f3ef358e109f76768fc8c27943727b3c5a76db7fca1d1f1 -1f5a7dab77adbed506eb6cb541146063d775fbe4ca6f5f593e36f6c4e927ffcbbb26acfacee93bddf4e7b1b195a7fe60ee3651fecfcc7d89b1d8ed5b6dbd3036 -7efeae88332f5ef59d677d492b7d7c9acf7b7f789fbbace5375dffde77b2b22e5ef0c4a2ad8c59e999dbafcc58ca7c7a64bfd2f9483e2ffc08778f651c793881 -291389b331d784f28e85626959128b2cb2dbd1e7975e39c89cf3c2ed4f5f19b5c836d3379922175dde494245bcce531a9da418c1199e8fd45d79bbb0b7d2e50e -baeb2f63632f72c5c83a931da8b63ac80d0a4001280005340518f14c9ab36cd7339f20bf1363968aa5e533b5928997db763dd39cc993671cfbd8813b2edb7ffb -470efad15d87ee21f2619ff95bbec26c9825b37fea8c638427dc9fa16f9ef007f9bdfcb6d90ccefe70d341ecbfebac16011cfff6a0afac2e3e2b49923fcf7989 -73db7bbf7f7774e59c979e1e1b7bfcf4733e3181255f7147e4ceca5377bcf43fd95757bfcefe5878e08455b7bade9095924fdebdc43ecee186032724659d70fd -3a1f8f732ef71eb715c3acb3c695cb44f321ae3b63af100fa5b4765952b763e3a7ad05ed7ffb9b31859c10b788f22ee3244176aff39446afb65d08252a8a1175 -2ed909911c0a4001280005aa528011cf848b96fde8b4c26f968aa5e56e2899b099d691a1fcad92c9b2d38e79ece7df5d36fcad47f6dfe1ae837666ef0cd4f29f -d957cc865932fba74e9d2a3ce1fe0c6d3272af78cf9bb52f8333f6e71faede897dd869f388d5d89f8b6f9cb7fbb868855436563f9fb4e2a998dbdef1f545f157 -8f9cf7dcd8d8f517477fce79853bf7f8e9b3d7fcd9bd873f1c7ddcef9d13debbd3bd9bc4a9f8eba9858f4409a52bf1e5570e973c4c0a4d6c1e3998e5207fabe7 -36f2c44d2c8f87579cc7824de2c3ca153b25a9e26f57ae382f72492eeb91c43efe363136642e9919fd8c4a898b60dcf6d10b3e265c95b2ba694e5a05c34529ad -246f2c602417ff104b247bc2eafb84de523b2d641150c66dc7b126d0be559c8c7353546279aa4df3e7f34e32389fb4a3d62e52df885249ce3b1a5d69bea85e69 -425671e100a195154dd4ee2a34c92b192b76e8fd4e9d6d0d97f53a4373b88692dee171050a40012800058a2bf0c59f5eb0dbe94bb63aeaf75b4d65ef47e277fc -39bac2ff942e4a5758aacdf7be90ff502b99b0f9c09149fc6d92ad9209bb45f481add67cf42befbfebab1fbe71db4ff1774a40c9ff8bebcc865932fbc70fff99 -f084fb33f4e983ef166f4666fc33fbb0fca683a64fde69f68907cd3e79e2bcf3a7efbef93ae25b3949f6f9d7cf26dcb6ed427ef14737fc295a79dcf4ca1fddf0 -c6d8b38f2f7822c6b86def3cfff9b1b19bd922e9691f89933c75edd5ef60eb89073ec2bcbe7efac24fa7f9c4ebad279fca528d3d3e417292677ef87d69651f7a -3cf1c198dbc18f477bff58a86f97dfaef5bd8bf7db66c2aa53591c706cc184df7e9ce57301db8517c5ed565dffeab3a2cb6c9df4b48ff024cf2ffbeff5a3b5b3 -fdae5f79eaf77efb7153e651bdc6fe74d6f762b3d3d94a284b9b89992a13e7c6b86dfdb844f696b2da2a5abb1cbb61d472917bc2d3a6b2fcd7254cd5b18553a3 -429998b333b71f5ec88de305d95537bd5269a6d85b4621c7aef553bf9371dbc5159755da65096f62beaab8dff5acbc17cf3a32e77cd68eb2145adf887d7b2473 -dedae85af3c5f5fac8a6c2812523517554b3ad7efbaac17f5993b8c4f4f5c6f9bfe69a3c1275ceb1952371d3c7adc35696996292ab07e7758e35e17d386b4dbd -d769cd611e4486fea33716ae4001280005a0004981cfed72ee9ea73dbcf9c4bb8bbe59aacfef7a0effa156326193842337f95b2593c70fdfe7a1ad3ef0d857de -73cfd6eb2cdae613e22da622f922b36196ccfe89c3f7129e2484b6c981777ef2177728efddff7bb383f6dc7ddfef8d3f68cf9dc67f6593ad365a67e29e3bb1fd -6ddc6cfab69b318653539db0fc491e6fdbe6fae4abf8ca8203e79cf5fcd893979cb5d56c06498fecb7cb127671e18409ab7ee1f29dae6724f1eae9db4c8893fc -218a4b5d7ff17b0fc9e7134fa40b0e3cf5c39a931fde6551747b43f47a76ca2fee30e7b64392edaaef3c76cdddeff8e4ee977f78f707cf63373e3cb1e8eb3b3c -781ecbfbd9bb19e8bc977f8eb8edd40f9fff520a73e76f1817fae12f1cfbed6b4dae9e12598e8d2d3994e5ccccb649ecf3cac40e44ec957cabf8b928aef5d72f -cfe5cf2fbe973bcfd372799f88388f89196dc6da81152ab9cd05940a521a282e37e2b64807554c2d6d5cdce3a79fc58ca73cc8f28de3a34ad39cb07c596c6316 -27722f7deb7d23fa4a725e31c81a5d6fbe3b3e193750fa625cc5fa866676b8c97f934bc9a643de3d623796cd3e7955d60d921ec515b3ea6c6ccda4e1ae67ff38 -11bd4ed71c57a00014800250a0b70a6cb4d3593f3dfda1cffcf2b64ffff236f6dfe87d70f439faf3e0f8fdcb5bc557c9f55fdeca2efef4b4873eb9d3597c1653 -3261b38f2313f66d9ca1219327a6ecf3c857debf74cb77ddb7f55a8bb7d998bfa5e92cfa28ae331b66c9ec974df9a9f08439c3986de8d307defa89fd6f91dfb3 -674ddf77d7ad261eb62f43b7e9c74c5d7cdde2d9b32e9cfa8bdd27fe3c5a3c659607bd6be8a54f455bdf72098f7b9a73dbdbffebbaf4fa7de7ae609756b290d9 -8d1326bc7d9fa54f8ebdb8e07a466f4ffe8241c0f76e991c0141fec5a6ba9d7f9fcb27cef671b66dee7b39279322763bf71751d487195cf42b636e9fbf83e3e0 -aa9fbf5478fbc3057f8ce228b359c69163ab7ee4dc0df7bfefdc84db46c72f60a1a6974fdd26f2502431bbfaf94b7f787914b18b5ecf3ffdc3bc8c69da25094e -45a54419c6592dd9ef9dd33eb81bfb33fef6fa8bf78b026beac555b9f30cc558da5887e4f5c4a2af2622676eafc3b3e2c6264f7e18d58b51082f57791bd24e66 -11cda8a00758b6cbce672833ba8ed2c4e99fbfb8ddd48e92e09f30f40de680e4bc29e7b8d1137db2e63bff4556d893975f24c5c3588d3433a6b3eebf5c6ba34b -71e60b0e9cc0fbb0a4985567636b260d97ef759ae6a6fe6cee42b0840250000a408110053efafd597b9efed0a70fbc457dff42bb92b761a936f8fe2cfebbad64 -129119373665927d7be02d4a264f4ed9fbb12ddff3c416fffbfefffce04d5ffb187b8bb9537cfeebebaff2af980db364f64f4dd94378c29c61cc36f499036ede -689f45f27bea61fb4efcf186d3276f36f5bf5799beeb1abb7f6f8d893f5863f4b0f177deb498b11ab35c7c7674ef02ff2cde1b1ff364c25bff798db8f883eba2 -1b08189130507bf77fdf752e7f52c8cd57b005d075f659f483ebe2c5b86d92bbf992c8c74f1e91f3d9f8ec28c2144da552b64ab971d4e7e4afce616569b97df6 -f6c59cdb3e7b71e6ea3e8f44012df67afa2e166c7bf77f2fda789fbbce65bbf1a278dbc9eb24254efbe04fb2da995d8df3fce87f4ee30b648f9f75d947f34ab2 -6f37dee791c80186531f9ecdbf4db38a1448bebdfee2adce7f2d763e777155ee3c4f1bcb1b55245e50e665e5dcd60a529a352e37e636a95edc467732bac87538 -ebfe6563af9db14da4bfd2c4e24f8bf292e0a6be91733e6f2035fa7d4af3c5b57889f519e6cfe4079883bc46b1c84a2b6bfe7bbb2b2f97f525d625d296e2f94b -dd23afb3b1359386cbfba33407fe840250000a40815e2bb0eef667ecfb9b873e7ff062fed6620cd105f1adfc61dfdf3cfce1ed4fe7eee99918938822c4b74a26 -4f4ffdf9b2edd67a66bb351ef9e6476fffefcf0967d867fe96af301b66c9ec974ffd99f08439c3986d68d303167f72af1bf87becbe9dc61eda9d33d9e82fde35 -7ae456d38f1c3ff5c88316df183d01245a1b4d2d0d1f8e5a96ac936e7565f62d5b22e513ea3b677e78af1b769ac7e82482b0553f735164132719bbfe8a35778a -3f3fb76ca7f462b4de1ae573477473c3d8d26891ee5b899371e60fddc48dd93b2ae29568b175af680556cd8d5972077889e97ba7796cff533443affae1b3368c -2ef28218b7313fe3246c21352a31ba7ed359165799e5fd0f898ab0dc629f653f635713f6e20525593d7efa6f58ad779ac7227faf9ec976ddfdf8e138ac98bff8 -995bb3b4a9bcac2253ee6439ae3c7d2fa10f773bae4204796941794fe2b218851c13a9ed75928b9cd0ed7dfff5ce3855ae89b962cb18915b94974a31f60d5973 -43cebcd1d5e68b6bc1ba10f3873bc03f1b5b59f35faeb5d9259ee4915fc4ed282926778fbcce713ee686d37a9d6bf8384616be820250000a40812005d6feeea9 -079efbf016872efaf2a10bd9dbc86dec5bfd7dd0b98fb0b4fc475bcf84e716bf59ced15be4c08a109f954c9e3dfe97cf7c7fe3e776587fe90f3344bbef275bcb -6fe121b36196cc7ec5f1bf109e306718b30d8ddbefa68fef7a3d7f8f9d3f34f19bab303e639fa7eff9aee9876d367ae426f3ce9fb8f8fc688574b3af5eb8ddf7 -2e13c6ea87c94f2471b22f5f297df520e3db08d436b928ba38f98965d16ae084776f9794f8f15358b08cbffe78ce2167bd7d9db3d68ff3c95e2b967c731d7683 -c28cb55327793e92cd1fcff9f98c55df79cc0776b8de90dbae910311b77107b2f7838b624fde9e787bfb396c4937e2365ed0ad37a41e3c79cdc20fac133bec76 -f5d9fbbe9ae5962b288999b1aa89d2b3acc6164d3b46733ebb3829befd62c1af1259a26568e670242343b45bbfb943deed33d3271faf7862c75c65237f76bc26 -e1b64828f5db5825c67cb293bb5ecf4b8fe8965f579a66ecd94344d3e8e258db2b5636f25072dedae87af3dd1edfcd10bd165fb384875adfbd9db99555ff9d2e -3d79cdedb12c59d3c78544a4fb01b7ce86d6b4f53a5d795c810250000a40815e29b0f6f853265ef4fbff3a6cd1d7e2b791dbd8b7ca9b59b2542c2d9f2b2999c8 -39f3dcf44c9e3b79f2cabdbef2d25e9b3fbdcfb62fdf7c1d4bf2fb9f7f4f7fb3ebec5b66c32c99fdf3274f109e306718b30d7de980451fdf791e7ff3a05ac46d -3bcf9b7dcc76d38fdc69f4f8f18b2f1f7df0c6d188dbb69d77d091d152a9b0cf7d98c4b6afc5fbdb369f9b3738ffdd0cd4b64d8af8f8f667befd9d27ad9d9618 -596e7b52ba37fce80f6c1f9b4536d9e2e9aaeb9cb9be6ccf3f4b36abbe334d68cc6de7c881553f79bee636bb2e7b3297f1d9aad9952815772cab91d355b39f91 -b7b1034a2dd2ac58fe9938a68b6b7f32f221b289ab9c38137f8ef3ccbb2d3cd444db317ae81da31049ab9caa0627e324d1d2735268dac4e241b5925ca67694f3 -cfb76974c7abe2bcb5d1f5e68baacc7d78f7e64213432babfe2bbd4873296de8ace9e39b9ab9624e9d0d0d67eb75e940d0bb34ae4001280005a040a50afcdff1 -338fb9ecb1ef4c5e5cf4cd52b1b41c1baaca64e559c7bf74d80f5f3dec7b2f4ff8dee3537ec61ef0f1c4e17b2f3b7caf6587fff4c9c3777f6aca2ecb27ff78c5 -e41f3e3f69c71727eec06c9825b37fe1ac69c213e60c63b6a12df75ffcb11f5ca3bf679fb8d3f463761f3d71dfc557cffec34d11b78997d1fe63bffa43c26de3 -7e6736309502cbda14f8fe9529b77dcbd0dc4637a224b75c1e810b4fd2b62656fd470f840250000a4081415260edf13366ce7bfc8747dd54f4cd52b1b47c66ac -2a93172f3aeda5e907be327dff97a7eff7cc89873d73d261cb4ffcd5f293d87be4d9130f5971e22f9f3bf1a095271ef8c28907bc14db304b66ffe245a70a4f98 -338cd986b63e70e186dfbfa282f7a1f1f6b2e8f5dad987569161255e21934881bbd3e8308bb74dfd3fdf24b40e6fcd67977c77d3a9ab7efceca47bc417a390ea -a6732ae8303d6d1aa3ff3d2d11994301280005a040c314587bfc4993cebb67f68d4f1e7efe83f4f729d72c65a9d61e7f229fe9aacae48c93cf7ffebc19cf9d75 -fc8ad9c73f37fb8415b3a7af987dc273b3f99fc73f7fd6b12bcf9ac6a26b2f9c75cc4b671dfdd259535f3eebe895e7fe7ad68cf38427cc19c66c43db1cb47883 -ef5e51c97bc36d4fe3eb9babbe73eaffd9b69a3c2b710c996cf8ddb3ffbd60d3f0d65c75add33e2c750f7ef1ed9f9fd37c498dfe37df6d780805a00014800255 -29b0fe77e78cdb6bf6d439f75d74db72fa9bd9b3542c2d77a3924c3ef2cd4b589e679cfebb17165ecddf2b175d233ebfb8f0aa97165ef9d28d57bc1cbf5fb9f1 -8a576fbc9cfd97d9b3542cad108431dbd0377eb970fd6f5f823714800250000a4001280005baa400239e0f7febfcb5bf7bc2dadf9d2ebdb33fd7f9ee74f6ce7f -1bfdf991ef9c2f74a82a13964f8827dfcc111a63b6a16f8d2c6679e10d05a00014800250000a400128d05805d6fbd625dff9d54d43e327dcdc5817e118148002 -50000a4001280005a000578031dbd00e47dcf6aeafce59f38bd3f1860250000a4001280005a0001468a6021ff8dab98cd9226e63fe3dbfe205bca10014800250 -000a40012800059aa900a335701b68150a4001280005a0001480022d5000dcd682466a26f2c32b280005a00014800250a06605c06de036280005a00014800250 -000ab44301705b3bdaa9669c477150000a4001280005a040031508e2b6db8f1d37eed83b3b7313431fabd3c7a23bd37ca80814800250000a40818151c0c36de3 -e493e487f698c339a352da9010f0ee69e3c64d9bd31328cc5764dcb4dba5309b522951bb4aab99323babe3d090a0dee02282130e4ccf6ee03f92e01214800250 -000a4081920af8b8cd1857ab141a2256e3145569b68a2eae00a1526e2fdd88ebb8c7eee5abdc5327c17650000a4001280005a040231528c86d7a682a09c825ec -7567144d8a5fe485549664dcb4bb23cc9ab347f4410e77c999e7aeef31275293c5aef807ffdbc06d2c43114dcc8288713c8cd760b73d925499655c5cecc9b4dd -12b3dde7f84b171ef2caced96d28a9728271498119bf267967c525abd2890892935c3abca10014800250000a40810150c0c76dae75d24b76672ba75c23c173e9 -9539bb51898ae1dad06e97b04c18cd440c94a08996f98ae40a439fdd77db23a6a54b7627d3616e9d344ac5728b8b939de7b9a9eba4996544a5ccd518e392b4cc -79b20f3168c6802b52455949c89b772c2b4e5f5745bc6d000627701c0a4001280005a080a2808fdb142891e36d72bc2ac23b066a11e2c41f0a45803890a5c1b3 -0c0165668cf29cb35b84381111321bce4f31f051de6abc4de61ef7fe36c5526cf2938195e683b410ccaa1ce39a37735b71e036a2e630830250000a400128d021 -05ca719b39d45498de222063b723700853284ad23a8ab4cde131b618f2e6f0a81be9dd046ecb1691f93aacbc28cc2bae531ab88dd6bec46e0033280005a00014 -8002ad56a004b7c94b8d69f069f764bb55ba20489c74d9baa1b26aa9671e930ddbd1cf7786dd396d0fb65a9abb2dd45996b6bf2d8d784559b1b54ae92659ce4f -d982a9699d34e88650564e069a7ca9540a9b25aba252c5a565d9248499b82a208f282fcca00014800250000a40814e285086db7888287da57bb3d23df685f6cb -ebbbd9f4cce30d6de96eb06c8b18ad190ccf01896131bbff404228b6d3ce7b5f42fe468180985f5c171665cc0998eeb793ef4be064a9dc2a116f074c82763405 -5afdcf0b380f05a00014800250000a3005829ebb0b50800250000a4001280005a00014a85d010fb7e56e278dffa89c766b2882f95c4f296e71741f7aa167e50d -840ca10014800250000a4081862880781b6989b321ad0537a00014800250000a4081415600dc066e830250000a4001280005a0403b1400b7b5a39d06f9df16a8 -3b14800250000a400128c015c871db185e50000a4001280005a0001480024d5500dcd6d496815f4d52e09cb3cf37de56c22e36c94df80205a0001480025d5680 -4d462ab7b14b78430128202bc07e03dcdcd6fce8fd53cb963fb1f898e74f5aff99a33ed2c7f753277df6b11b8e66ce345f31780805a0001468a002666e9b3465 -2ade50000a7005962c7daa03dcc6a0edc5d3377cf3aa4f8dddfcd93ebeff7add26cc8d88206b7fe2114a840250000a7440012bb719838c7c02c30b0ab4578127 -5e1cfbebdf0ab8bff485313ab7b130d28d0fbd74d695771f377b5e73dea75e72cbbc7b563c76e6d7dfbcf25363377db6ef6fe60673a64e95b802ac75f8bb816d -d49cded20b4ffaab7f1f4b578aee0031a00a4d5000dc56600a8769071460dcc65eafbe31b6fc95b1652f8d312c7b6ce5d892e7c71e5e11bd1f7a367a3fb07cec -de67fefedc6b91e57dcb0b701b03828b172ef9fd73cdd289d5947935e5944b19b036e4cd9ca95325ae006b1d0e6d0d6ca366f598aabde9affe7d2c5d2e1a7b03 -9a403cddf001dc56f54f14f26bb6029cdbd8ef2943b797fe34c6e06cc5abd19ffcfdf4cb634fbd94f01ca337f6bae38937e9f13616436238f2f7bf374b02e60f -43d2a6715b9d2a710558ebb0b9b3996dd4ac1e53b537fdd5bf8fa5cb4583dbbac14c4da845316eab7a38f73ebfa5a35b6e39bab4f7e5e44ae84ba135d7b1b5c5 -716e639136066d2ffe3183364e6c1cda980d8bc3716e5bf4c82b746e636b4c7ffb9f264ac36a6ae3b6995f1edae7da240eb7e4e42d878686af4dc272f3f7194a -bf7a6cf4cbe9cdb489b174857d2372f82bbbfee5d125bec01e73a666999802ac75d8dcd9d836aa59909a8bebaffe7d2c5d140d6e6b02f174c3073fb7d99e7d50 -eef1070c6dd48ccbf295424bfccf1e2194ea7ede77a5e81ef950f3ef6e578ae3dcc6b04c44da18b1f137c735f1660ba6ecb5e0fe9585b8adb13ad9b88db1da97 -4f5e1aaf9f2e9df9e52dbffce52d673e16635c44669ce118c06917737cc6124a84d7486e63ed22b8adb16dd46dc7faab7f1f4be74583dbbac14c4da80589db8c -bf26e5b82dcdb242a631665561feb20aee6c8d04d9ed9fe4f6d48e731bdbd026af8d3268bbe2b6276568639f39b75d7bf7b3a5b8ad5c0f9c3f1cfdf366787e05 -fa5ad749af1d1e4a486bfe3e5f1ebd56601cbbbeeffc04e0741453e26ae2cfb0785bfe1f4295d45797cc3a73176da3a2f615b45eb92c2479236d29fe536c0a3a -e5d23ffb573cf9dfef053dacacf50bd65afc8301dcd604e2e9860f8de2b6e8d725fdc96613d696a3f359cc6c78388dcc255f65bf41a62897185459d04be410db -c7d747a3e930f9054b7f31f46f357f5872feb231a2f8f5c9427d7977b3bfe2dae49d29fe838014851550b88d47da18b4f137bf4d81ff9773dbd5773e5388dbde -f8cb58eebd6474f3cd471f512eb23f6dd77396f3f71e1abe4a4f1b74c5bebf8d85d3e2b81a0735065e31aee5e37043694c2ebdb341e5b3341332b75955222993 -1799268898b9a96d64cbb6171e3af2145f0596cb7ad196272d89156339b01e45c9a754bf35b78e4b7fd1cf79b9653cb4b45a65ad4feb6c721f43bcad1bb4d49c -5a348adbc6c618ad713ae31f22ca49e12c8a3cb04bc2428327db3a699a4392594c4e867fd067254adf2afec850282ff3463e26fe655427fcc91ccb6c1224b439 -5398469080aa00e736b64b9de11a0fb90968e31f18b1f137e7b6abee78ba10b7b16d73afc4773c24ef8747bff8a5d17bc59fdeebb2a52dad9e1be18a9ddba2e5 -51b636ca402ddea61645dd96c46ba6c98269b284ca7bbcb4609a0bc2a5f6646eb3ab347fcfa1e14b0935ca44a6198b999bda46b66c2b6d174f3f613e942c4e4f -4ec9b04cbfb5e8e6d23f6b7172eb536a21795259ebd33a9bdc39c16dcd219e6e7842e53665331a9bcff83a299bd24a3dd44d0d5c25a094fc5feedb3402977345 -02301bb789a81c6725ddcc1024131090f74709e6c9a820679b85fae25b220c00175fd49da1b207ecc215e0dcc6984c89b4b1eb02e0f89341f87d0945b98d6d9b -cbbd1f181df7a5d13be2ff4efb69d2d576bb7ce9b42fc59fd957cc9e7d9b7cb3e5b407e23fbf34bc1b37889749e7bc3636274dcbfedeed725ec4fcdd528be48a -924fde13c7fda431b10950e31fd2f89972878158542d1d6f33a8c41dce14e3220ccfc9ea954aa1e8f6d3f93c37a6d2b8e94bd52648751033b7bd8d12d9c74d9f -cf1b28ca2dd71c91038987ce86cbe560b6b4f6877c5b4b5d852b93cb2df347ea5df91ef85a94434e16910fef42d64ea8774e5bbfa5b891ed2f34e81f77f27ceb -eba326351023c3337cd23ce39c3dad2f0f967c7f4bbc520a5586b9f34f705b3768a939b5a0729b3e4f726e2bfbd2161c63504ac35c466eb3ed7f08e036399ea7 -c0565ab19c3fe0b6b2edddfff49cdb1893b15b4705a889677f882bc1dcc6f2cfbdef19fdc2174717b1ff0e0dfde4d2f82b71855d8f8c971ef1c52d8fb827ffd5 -507c855b1a338c52a519be38ff2791bd964f3ea1eb3920d10ae9701c668b9641238c3b39592dd59ef766590f2dbebf4d5529fbf7585a772e8254d345c76d39b4 -c77c96f0bc3d86be70dcfc448148dbe1f3a2ca321df807f35bccdcf636ca179db55dd240890349bb381b2ed782464b5b7f909c57ba4a566e9236f347e95daa02 -516fe1e152a95ff16ec38b337918f53ddb7553bbe89d3cef864b7fbdf58da346eef6970e0fd93cccea9589e969fdccd56c64a5fd4d1a6bc62169ef72bca781db -9a433cddf0a471dc1607a2a4a54d416971b82db71ca930808fdbb2a5493902977ece5651152e94fd71705bb44e9aa454b34a0a66894deba4e46db8fd479e4e78 -20b88d3def83a31b8736fe0c5e866bec0afb2f7b0c5b58bccdca0482c0f4c9381742def2884b535c93278978524c5e7c4a53904e361033b434a3389fdf163df2 -23b90b816f741bca36b4450f07e13728f0af38de95be9fd440b7f2fc272aa88890d49a31c71067388e711113b3893cbd6244373fb7f1cc95a2d556183e4f6271 -a9e94c0de7b534707cec80b1ad55e2d7ff0d60617d212c671d91bf904bef3cbc13daaecb2ad9aaa0fd93c3c96d02b863f8a6d7d4e1219d1a6557f5fe66ee81d6 -7f1ee87d0fdcd60d5a6a4e2d9ac76df29eff6c177fb45c329f73837c51861ec558c4cfc42f2037cee31dbf5f2ffa7728bb7bc1fcdc102d24a8f810a78eb24ef3 -d2b3e2df44469993d97d09915778d5a500e736760a02fbc0718dbff94340f80a298336b6018ed9b057d175527eee42f6be7df4b3e346e7f1fff2ebca15f6e7d0 -f02c3d89b08cbe9affc3a12d27de6e4a2e12eaf9e43d71725bf4200fe9ce03e9c11f31ae5dbbaf1845e9d3dd1ccf6f933154005f7ebd95396350c923422a1d57 -869522249d333cb4dbfc59bba512294d90fe29b8c1d346a2b1dc6d4769389183ad89f5fee0686b6f5fcaf5997c3f4c44601d697856e2f9d289e3867e3827ed54 -460f29753454416a29a92d5cfa67a533afb69c38c7376ae4421dda124b171d4911d026b8a583a9fd2adff1703f6973b8a7ed9e90b82d170e90fee8c9549bc5ad -68f7abf7c4092953d99f5e9785fc7baf80e0364669f2bf8c39b4096e631be0d8515701dc76f7537fcbbd6f3ef9d35f38f90afe5ffe957ae5b143bf30f4fdf3d3 -af86f61d15c659aa6bbfcfaef3e4e7ef3b146525a57a8a7dfbe5436fd6f2c97bd2b4f3120c2ac90e6775cfea75c5515f1edae5dabbd3ba8fee32f4e9a31e8bf3 -610a0cc5b2e4c5cfff29b8c1d3468afeeccf54fcc481c480d0705e4b437fd0da5aed0f9a207aef922a9e8a26751e39c3a46ab6bad8eb28f5c0bc2c5227a7eb2f -ba3757db366a9442958120a7d57a82a7f5337b6b7fcb06afb39ba9bdeba9bf21ded6764e6a9aff7e6eebfd4c9a2b41ba5fb411dc96f3a7662d505c0f14e0dcc6 -7e5b595c8d3ff24321367e4a295b24bde7e9e8e883a2f136762e56eebd68c6265f983197ff977f957cbe6687e89f403f9b195de49fd96bf35f2e1206d28727de -9c7bc4e6d9bf9892ac44aaa11dcee385e6f3c97b62e336dbbfcac4f55e1c69ca9c31a8243bac28c6bd892afee82fa3ad82d788fa6e72c4a3ecf3cc9f0cf10f8e -b798b93d6d248aceda6ef34d3207e476f1355c560b8ba5a93f686d9d7615d931b33fb93e23aac9c4495f717f93b48dcb8a7b9dad13aa9d4aeab72c9f226eb8f4 -977a61d499ada326fe2a2974f3744cd9b595fa03b1f4a86b29f5e28a090fc540767636b98f81db9ac63d6df7a771dcd683991a5942814c01ce6dec4c52b60cca -e04c7fb3ebeccda08d3d2284bde6dff77ca1e780dcf4e86bcd7c372dde56a94a977f77e8a7bff6292f66ee62452f98fec9cf4e9fe3cbbc589e03995ba0fe1569 -554de967fd74e84797176d6b705bdb39a969fe83dbc03483a500e336166c23d6f9e625af47372b2c7d8ad9b3a1e2d830c00736fb81beeedee7e4b748a25cafff -cfa6719b51255961aa44a746cfb2d878e40eafbd98b9bd9639832ba7e9ed5e2c877c9718d8b436fd8dc3aa7295e8a56b45cff956e6e2b8e12b73039ce227b8ad -69dcd3767f7ac86dc4e7ba9d21bd46d2d7a69b56f19011e2e40cb3415280711b7b20d3c2875f660ba097dfbaec778bff70c9a2c7f4f7a5372d9d77cf0af6f0cc -a2dcc6b26de6bb69dc56bf4a62e6aebf6894c814e8affe7d2c1ddcd6764e6a9aff8de0361d1b18cb31841b249c405d6b52806d5f630ffee00fdd652ba16cc174 -e5ebd1d906afbe31f6fa9fc7fef466f46667d4bcf9d7e4cdec0bc5db2e5eb8a499efa6715bfd2a8999bbfea2512253a0bffaf7b174705bd3b8a7edfe3497db96 -2c590274ab896506a9981e711ba3a2e6bf7b718741589ecdd70a1e42012800059aa6007b9a0c7bf790db8830c0426bcc72c182e8cd3fb3d78d37dec8b88d7d00 -ba116584195181de715b18c1201514800250000a4001af020c22172fbaa57a6e733c53c036ad3256e3d0c6de6c6994af8e326e63d7bf13bf88f3b1d5cc788e42 -d14ca587fa861c70607a766f5117605f890235701bfbc710de50000a40012800052a5180cd7d8cea7ac86dc6c995f19c83db18ab0d45772444ff1dda745361c9 -426e0ce0caced615709bfcecddf9c3d259f6657d43fada15a887db264d998a3714800250000a4081920af00dd6cde2b6781f5b446c2cb4c6a04d701bbbce5fd1 -cc2eb3977400fc68747ed4f0fcf84afc397a255825ce8cb7705b164113e75f2519c47f6779b2fc4c0fdf55d2cbf6d981a4ccf5386de68338582bf65375a2768a -19bc026be3b6b66f7dd5fdc7be85c11b2ea831148002552ac01e68c01e2f3532fd82d957dd73d695773bdebfb9e2ae5f1e771e336e18b7a5eba37c3d94435b2e -30b7e45c17b7e5102dc535111a73739b845671004d2233e9605311594b682b8bb4f9ed135b6e98705b0ee812a4e35d020ba9550e0d575ee0b660a004b7d5d549 -510e148002dd548071dba499972cfefdab94ea3133665c13b729bbdc987f7c9d94152f3fd46dc17786c64686c6ce8da06d830d36e0e8c6fecb164bc7969c1bd9 -fbe26d2c2e668ec6c99298e36d9cc44c67d5f3eb469012897267d89bec53ae9b3f9c45ef96ea9ee494c2fa2ba52797b501b781dbcaf621a4870250000a0429c0 -b98d9eb43e6ed37d32ee6f8bb86d686cc1d08291a111b68f6d6841147f1b5a303434321485d918baf1b7128e92d6494b701bf73105319dd2ac013065dd33adab -6acffe8ec3786211967da860a71dbdb961695600dc3650dcc6fec1c8df03f21a9c9a0e4883a29a1d5340709bf7ee5166c05e4de436866e2311a70d45b816135b -1c758b8373cafe3665df9abee38d37afb82ed6492338cbee014d962a978e0e47bbd8448208e072f12e257ff15d72dd699fe63b3c9c609b7d9d345f68c77a6823 -ab036e73701b8fffda0c587b96792e8f40a8fa416a7068a6993595bd727b586ddfa0503bd1b73ef6de46fe8ec2a9400504b7bdf8c731efbb89dc16d53ba635b6 -48cafe8f2d8f0a6e4be26d2c00c7e36dd20efe2d190c29b12b23c365dc266fff1f4a112ebb3f20613a79e9538d8d29dfe51d62139d1e4b4b3c96d661d5bb1f94 -fb12846381bd01c9880a80db8c582688ad47dca6cfd67512469d6511fbe1409951d848105b558d4529349e82b2a6b015dddfde3b505da5f39515dcb6eca531f9 -fddd1fedab5c617fd6c76dcae636f1a7ad3df8b37679b02d7ab33b13368dd649f9ab82e78074be23a082451400b7b9d7494b725b3367beaa50a0484783ad9987 -bc6de135a0284b27ad6ab9ad12e72915844d4b1510dc76dff231f166d0c6dff245f6b9266e0b90325a79e141b525e746c7c9f37b48f9ce3629de169033924001 -5d01705befb8add0a4a518cbeb50a2d5f48b725446e4e05d5c2be498de676ccb6ddeeb36c7e484c68acb3ee82b74c6ead89c51aaa3e7663488fe2d9d6e0d2ca9 -1ecf4a6e53f7ef52f9e294127971947f51d08b7658d233c1eff3002a20b8edd63ffc89bf05b4f10fe23afbd05c6e63f136feb08fe4eed198dba2301bbb4d6101 -bb6d61410547260c60ef40952d0a80db7ac46d85a62bca246a9b6e6518523edb7a7d21df8c999474d896a70eaf3a45d9b8aa909f0e316d9caab0a39bffdc90d7 -316ef37627af017e9e075601c16d373cf8227b0b68533ef36f9bcb6d2cc6169d9590bef87340e2ff464fe265ff8d82707841818a1400b7f582db0a4d546e63ef -1c6f33e8750844cf9f72c511ecf18a46874531380244a0d4c2eb6a45a3d315182b5404a5528532a428ec26ddb0e290aa630a086e9b77cf0a016dec337f2b579a -cb6dbc55e4e7ba39da893fa1d7f8ea58eba23a3d5200dc5639b7159ad429c6dc86422d5ec8736053d10e4641018acf85088022171117e8be516a5a543dba7dd1 -2a1b73ee51150af956c898ae0f2c5bad80e0b66bef7e96bd19a8f10fe22d5fe90eb7fd21ffbaf68a4b18c6cd9c3913cba9adeecdb5390f6eab9cdb1c8ca5372b -713223c68deae436a59a460fd945dbbb8c14729eee9142d4cd8d7a3d821ee21827f690a23af4285b9b1b951447540c662d5240e13605da943f3bc26d1fffc69e -fb1f7ff6c4d3e78a767aeeb9e7f6dc734ff627d0ad457db78fae82db7ac16d85d0cddbfacd8cb711b9cd5bbb42f1b6a2b4571bb7152254ba265575a40ea06721 -d160dc16053ac56d14d17f7ae419b7defbe02d0f3c3673ee8d9bee39f5ea9bee65a9fef6b7bfedbdf7de77de792747374a3eb0196405c06d3de2b65eccb8b698 -96117d0290256020d099d21dd3a2c8455fd9a4b0203db70e404f1fab80485bc0b01a9c24ade736db93de8c87629d7ad1d5b72e79ea88b9b75e7ef71f3e7cf0d9 -1bfce2ccffbbd311975c77336bef238e3882a1dbeebbefbed9669be59fb19b94909d963038bd0335b528006eeb1db7956111de5c94e9d6b636da046e2356c156 -59a5cff298967ed131b8ddd040cc8d68d6a3df1822f778cd886be8856a51a8d04239c3784014e802b7199b4ae7b66f1e70ec82fb1efbf119f3be33e36a9664f2 -858b57dbfe98d5bf77ccbf6dfdf33ffc61e99ffef8c7658fff816d749b76c4c42c43eb01a303d23d504db302e036c77909ca3fa5144b26689973aedcb062dcc2 -a55f1457446e622ad529c7b896577e6050266f637544d1ba63965fc28465ddb97158a4e749f44df7b6bc746ee224568148bdb22c5579ee6dfaaa0a423e5d5580 -73db1d4fbc293fa7cdf69999d5713e6921ad8d71b578b0e5fe8df9e99d0e9bf1bbeb0effddcd1f3ae037ff6b9719ffbac371ab6d3fed5fb79ff6b61d8efbd7af -1ef8d3c93357ae7ceef597572e7ffc91eb2e9f63e1b6e454d2f8dbf8b8d2f9a35b46076625f354721c55769c152274855ab24dc6e0b6813a57be4d5d13be4201 -28d0750518b7b103ac0e3ef6dc63665ded7d1f34ed9c879e4d9eb6c18e999f72caa58b17ddf2d4b2e5e79c7dfe9a5f9cbec311b70db1ffb14f4c347669d294a9 -35a847e5b61f4f3af2b7d76e33ede2ffb5dbccd179d19eb6a9bfbbf56d3b1ccbdeab6d313c7e9f49f7dd7dfb6b2f3cf9e2f225d75e749285db625ae374c63fc8 -a7972667c40b0be970fa1a544011f52a006e03b7d5dbe3501a1480025020518071dbdffe67ec57bfbef09c6bee93df675d79b77285fdc9cc983d7f4a5ab3b84d -599a11f136e62b77f7935b6fbfcb71e77dea97b3fe75c7e3ff758763d915b64efab6ef1dfbb6ed8ff997cfef327ef7036ebf79c16bcf2f59b9ec7e17b7a5e096 -d0596e15358dc0e55c498f84477feb9602e036705bb77a346a0305a0406b14e0eba48b7fff2ac56366d6da75d21f4f5a6fbb9facbfd789ff3a7eeabf7def6856 -dba32e5cf4afdf98fcb6ff3ae89f3fbacdc4238ebc75e1d5af3c73ffcaa5b75efbdb88ea9297b6bf2d26b634a866e436ac8e52ba52cb6dc06de0b6967761b80f -05a0405b1510f725bcfa46b460cade8fad8cdeec14f9db96bec1de8b1e7965fe7dcfb3b313aebbf73956c9b6721b73fd5dfff7a36fdf7af86dff75c882bb1e5d -f2d4f3175f7fcf370e3869950dbef9e9fffcceec33663c78c7752f3e7eebca476fb8f6dc231ddc16af8db2ad6d4b231b99dbe270dbd22820972ca5b6b547c06f -8202e036701ba19bc0040a40012850bd023ab72d797e8cbdef7de6ef5de33626deff7aff8757d9f87b6ffdf44ffedfcffce4ad1fdfe1adff77eb7537dc64d6e8 -f4eb2e3b77f9a38b572eb97ec583575f7bf62417b7c9b096dd82c01647d32551f922626fd5f7d846e4086e03b735a223c209280005064f010ab72db87f65a3e3 -6db647b8195b73adb5d6fac77ff9b7b7bc7dcdb7bcfd835ffdead6679c72c2b573cf7ef2c11b56fe7ec18a07af5a7ecfc5d7fee650573748e26ab1099e123278 -0386d718dc066e1bd4be8f7a430128d067051ceba4b73ffe67f66efa3aa9ac1ffd5cf9df9c79fa45e7cdbaf8fc336ebe6ece5311b4cd5ff1e0950cda9ebefd9c -6bcf3cc0d126d2fda2e0b63ef7dd3e160f6e6b02b70d0d8df077f99e20b272e4565559dcdb26e7565e4fe40005064a8191a111f6aeadca03ca6d8bafbf9cbd17 -cebbe0c62b7f73c3a5272f9873dcfcf30fbf6ef6a1f3ced8efdad3f6dd60830d6a6b0014d44605c06d0e6e13f16fa30d6beef2cfdd157da612fa2166423423f6 -674a6e149b5e5020b10a3093fa612646bb1eabcb8143c70edbf5be34baec4ca31c136a80db7ade31bef39def303273bf7aee040a68b302e0361bb73168135fc9 -9fc5c5f6725bfd1d96ce6df5fb861265057a711c566d0adb98a36616b1d5d7c194b549d4b4820631dec6db80b8a8dab406833f4d5000dc663be74ab9aea31b85 -dbe8118b4ac8a6924c7ad12d1beb582f2adbea3cc16d3d6abe8633658f6aedcd16dce695080650405500dc46dcdf16c06dbe43cd933d6dee1d69f2b70efad1cd -8cfbdbbcbbdf8cf9d8b6ca797363bd8d9e21253763864a9fa69758c83df76f076fcb08e5a5e2ed7197743f639a4ab654b2e25f898b7a9e4a372af91be7e5367d -2dd2bb3aa92c0ee62b9b2d6e12d70d1dc1b3426c445cb2d4cd14856df9b0eb7a4d89ad5349a1363d8b5e37753943ab796531d61ddc46ec123083029902e0b61e -711b05da443388b9de8820f24577e08a18d6a26422b31ac5de3da8888e0990b2e5a6e763cc59d7d361a6cb6be35422ba09334e72da7ca65ed4cd644a533e07e4 -a69f4f2faee8ee79b92d864875ebba1b986482b1a575db100188ce6d14377a5453eff453a1bc7441a44eebb92f41c95350a0bb8d6c9e748adbbc4d5bc860bdf7 -beff2b6badfbad753fb2d7061f1b59ffe353d75e6fabd5562b94038cbbaa00b88dc26d45f7b7158236deb58844e2261b221e15e5b0a2f6261aa0de2deb28cbf6 -15453a8a8dad218863df885f94b4ee84f2b78aa5910b63da30f022c513a24d51b0f0f12e9502bdee1131a55a33ee952d4f8db3cd374f78b1c9983fa5507a6351 -2a427183282f2fcef1fcb6f63d07c4db418906dffcd297174f9976d5b7b73fe7335f3a6da34fcdf8f0fa27acb1cea4f7ad79c83bdeb3cb6aabbffb1ffe319f4f -eef1bbfc66ba2d8787b7941fba1bfea437f97c06a2fb30ebb902e0362fb719a18da58a7eac470c37cc7b27cd42b19f420c046eb3b11751f332e3ad10b7b91737 -6dac066e2b8a80361609231e07d95032949d3786a91cfc470126a33835709b914d75678c5500b7195a6da7cf6f76cfe4231f3cf284f9e3779cfdd92f9eb6d1e7 -7ebdde278efed0ba87ffc71a87fedb3b86575b6d93b7fc9321990c670aa805735b945061c0323f92485b8d02e03637b7d9a0cdc16dac612a8cb771e0d0dfc6e6 -07b715e2b6b8a5546d83c71591dbf49d6a65e26de6cee1fda7437025e3847414a0d00c3d37afd785223d829cdc08a59b05231405656cc59529544eeb6d11b781 -37b9e81e44dd3ac56d856e1175186ff2c135ef9a78c4bd938fbaefc419d7ff60b7d99fdd6274c38d4e5cfb23c7be7fadc3deb3c6416ffff79fafbafad7defacf -ab29e39cc06d59688e47e394bfe31c46d911a7e9a9593ccbec8c06d9206f2c05fdb2acd3b3b7e4431ebca318067e05c06deee7b739be8d7ea14cf1b6141dace2 -13633f4408938b2126719be9df16b5d76b4e744c8054212aa5384c74806866096c9036ae99266f57c2807552a58842fbdbfc3f195de136a5a625f1910234966e -935b262e940fd1b82fdc46e948cc06dc66166a8b75d7bb6be294bb271e7ecf71c72ef8d95eb33fb7f9291ffbccf1eb7eecc835d69ef48ef71cfaf6ff7df01a1f -d8f5436bbded9fa4c09b97db22b64a506afe30fb201dbec0d3c6f095c216c7ba18c20477c906aa715a1191abfe81d82960e65300dc46797e1bb3d1036f6e6e8b -11c4ac7e496e73b005113b8a7258517b37b705e7664b18c66df4dc7c6328f99e126f33ee3c2b136f231224b10a44333ae250c0829e9bd73d5b71caf56acdb857 -de9af6a550a1182fddeba4b722657230a61d686e63213739eaa6fcf9e5b5d6be73e2c43b274fba6bea3137ef77e8eccdbe72f2061bfd7ae34df65de723bb8d1b -b7cbb7c7efb6cb2eb921e1e5b688bfb2589a146ce39be286e75b575753707317c1b389b6d7c5c1bc940b7367737907310c080a80dbfaf2fc36051af89fecadb4 -188548e424dde6b6188555958275336a4e1490484b14928b67cac0789b372de10720c4c48841eca29e57d834ef4e55f45b1b172a0e1bb3a533a5b7a6466cea75 -a195739b11ec282ad9f4e914b7850c26679a4f7ce003b71e32e5de8327dd76c821b377de6dab0d37fac2269becbcf3ce871d76d8e9a79f3e6bd6ac55565925cb -c0cf6ddc36a5377dd35bfe8a72bf430463b62222d3f43e08c9262636605be5fd02e7cabf60e336f16f07f141b18c7ec2eceba4dea612dca07c30a29b6c63ccd9 -989b372b1b06c9d76d4513fd173eb8ab40cf4db77454937f652c9a5ea2b729393f291bd7f42b3c1f7d479a825f4a42395ba5086386146fcbdb080a513e1841c1 -882ca9f36a1c48ced0e8279d906ce57a9d97cbd58d15af8cb9e99ef7a550bd22b6a6afd6bdb84babcf7833160d6ef30cc68ddef7be9b0f9e70fbc8e1076cf78d -ffdaf66b3fd975e7a38f39faecb3cf9e75e28993c78fdfe06d6fcbd2e7a82bb7a52c59205d3a3acc0361097f450027ad8a2a07d54babaa2c05cfcfc16d12b609 -84e3213df9c6d6f23f3dc8812980789bf77e529b41f4db5482dbd0fda00014800203ae0085db16dcbf72de3d2baebbf739a6d5a49997f0a5c5bffe6d6cca2997 -2e5e74cb53cb969f73f6f96b7e71fa0e47dc36c4fec73eb1afd9a54953a67643dc75fffd3f6ed8fff091af7f67efbdf73e74e4d01fedb4fda61baeb7fad0d05b -1df7257036332c5ce65732151b47c48e83dbfc64c35bc67ea9c43c8817ad91e66e3fd5637add68933ed702dc066eeb731744f150000a0caa029de2b6aaee27d5 -3bc33aef78d72e5fd874dd75d77deb3ffec3dbdff20fade92db891b4374d056e03b7f5a6672157280005a0804701705b97bb08b6b6f5a875c16de0b61e752d64 -0b05a00014702b006e430f8102851500b781db0a771a24800250000a54a140a7b8ad0a41900714f02b006e03b7f97b092ca0001480023d50a053dcd6bbfd6d3d -501e59b65801701bb8adc5dd17ae430128d06605c06d6d6e3df8de2705c06de0b63e753d140b05a0c0a02b006e1bf41e80fa0728006e739c73657be22e4fc2d4 -6ed4f3dbf487e806f40724810250000ad4a60085dbe6dff7fc203ebf6dbdf7beff2b6badfbad753fb2d7061f1b59ffe353d75e6fabd556abad61b4826cc791f6 -cf2347c98d7d6c9cef8c8aac4ed103f1ac4f2c06b751ceb96200a79b81db1a3962e114148002ad5160b0b84d3f84475c915bec9b5ffaf2e229d3aefaf6f6e77c -e64ba76df4a9191f5eff8435d699f4be350f79c77b76596df577ffc33fe69b57398f4a7ff8ad72104248e7880f4f18959ee42b3d6557aa55eef485a2e58847f7 -b20c4b6554a4be39f12a3ad9c1418d746e63ead99f7e076e23ae93eae8563fb7d90eaae7e3a3edf13677ed8afe06c01e0a4081e62b3070dc666c1236bbc8d777 -fafc66f74c3ef2c1234f983f7ec7d99ffde2691b7deed7eb7de2e80fad7bf87fac71e8bfbd6378b5d53679cb3f19f2a19e4f1ad02bf2044138edaa68194a346f -fe703970a3c7db94ba9405c6b8de55715b7ce4855108705b5bb8cd8135dea33629678ccaf0e73d03d4666cf951d2cfe4548f874f332c3adc610f05a0408b15e8 -14b779ef2755f84cb49b727d930fae79d7c423ee9d7cd47d27ceb8fe07bbcdfeec16a31b6e74e2da1f39f6fd6b1df69e350e7afbbfff7cd5d5bff6d67f5ecd71 -ce95820ee99f597489879694bf63b3d1e8c4aa3c2d28811f1bb7a58fd99562584904cb53ae8d74b264b13f51b9ec14ad28be373c3ff92efa42ba9eb82e3c540b -96561fa3aff227774501aeb4e206654c45e734e4697329552972aec6e2585d751120b88dc26d7d5f27a5c4a2dcf136dbb78ea3e5a55f150366d9122a7308257f -3909a5a62d9ea6e03a1480029202e0b6480c9de7b65877bdbb264eb97be2e1f71c77ec829fed35fb739b9ff2b1cf1cbfeec78e5c63ed49ef78cfa16fffdf07af -f1815d3fb4d6dbfe490abc79e36d52f8260e68e531851f1b6f5aa254e3476a8c4a3d06356b5f5e02a95c3dae941d7b9f64c0498bb18ea02f71dabdd80ac61325 -1e6a154cb08afb94c726f65586a746654c45c7ae64bc263ee92bae991412cb72cda30b2657b94ba6801bb8cdcd6dbc471a6d98a8f5dc97404419ef3a693069c5 -3f2c3974235220d14c433dcc6c50000a0c840283c86dca2e37c16d2c5c2747ecbebcd6da774e9c78e7e449774d3de6e6fd0e9dbdd9574ede60a35f6fbcc9beeb -7c64b771e376f9f6f8dd76d925d747bcdc1643460666522c287649e08edaf33cdc2618c5103ae27beb83ca55e950724f2e28431fee760c5ff36318d22b185bf0 -cb5a2450ba0dc0a18ca36881a736ae555ce5f6dcd8e2aa2d10096e6b78bc8d086d3a5ae9bffaf5731bc52be3ec44aff5404c6ea82414e8a8029de2366f1b11d7 -49453e9ff8c0076e3d64cabd074fbaed904366efbcdb561b6ef4854d36d979e79d0f3becb0d34f3f7dd6ac59abacb24a56a89fdb04d958284d05b4246f2ab7f1 -e890888a7144ca224f29bd194a31edc0af84db8c771ac48e64dc962d194b8ba44a4205d744d57427e55aeb52d82a65511ef1360a9f396cfa785f021162bcf136 -85a20a05c38cf136efbe3a3eec89bbe5c4ef0fb1bede1f4918400128d070056cdc76dff2b1db96bec1de8b1e7965c1fd2b3bf21c90a2dcc61a6fa3f7bdefe683 -27dc3e72f801db7de3bfb6fdda4f76ddf9e8638e3efbecb3679d78e2e4f1e33778dbdbccdc96bf173189042d1d1d8e77b5a53c95adf159002dcd9bbebf2d1f52 -4ab8c55b6e1203cb5604d365dcfc1224059ec4ca691ae7d39619f9d2635a251998323deccaa83e58d649b9e352e6420a01b2a251d27552c38aa80de7106f23f2 -5c1fb92d461fffcf6ffddce6f7c964e1db8717962b52410128d03e05c06dfc9fb6ae1ff875fffd3f6ed8fff091af7f67efbdf73e74e4d01fedb4fda61baeb7fa -d0d05b1df725706850379ef18857f432af12da30417922856d1d30050f514c741741b64e6a2f3765c96c0559dde29fc7207db15249291be44490802cb7132e03 -d7441b453d1b32e67496b933a9ac2a85de28565793ac713f2911d1284f74abffb9bb5e749379c8c146b67b4ba570576e2b1bbf5ecffe366f1ddb372fc1632800 -05ec0a748adb28f7932a9bdbc49fee4eb2ce3bdeb5cb17365d77dd75dffa8ffff0f6b7fc43fd3d2a090ed55f30a5442b6e521237d8c6b47accdd45bc8d4269c6 -5b13987af5dc97201195ab8f55cb6d2cb74224a7b39db8226765344bd1b0c12308ae410128d00305068bdb6401bd90d703b5cb6419478aca3d55ad4cf1aeb49d -e43671cfaca9e6e0b6ce9c73257392824a4acbfb562aa3789bf2368e1aaf1971035caf8633f2850250a0d90a80db9add3ef0ae910a80db82174feb8fb755d583 -28dc565559c8070a4001286053a053dc86668602f528006e1b346ef3debee035a8a767a2142800053aaf40a7b8add0d267ef8c3bdf695041701bb8add02a2a86 -0c14800250a02a05746e7b6ce5187bcbcf01997fdff3ed780e48ef50ac50ce55b50df269ac02e0b6c1e1b6802d6b8dedb7700c0a40810e28006e233522b88d24 -d3c01881db0687db06a653a3a250000ab443814e715b3b248797ed5700dc066e6b7f2f460da0001468a5020ab7e97560e725b4669db44d2d903d82d7fe748fbe -3d5f437e3a6dfaa0e0e411bea9c6c1be35bae2d41e046e03b751fb0aeca000148002952aa0c7db269c34477983db2a95dc7ca894a9886036aaca5fe56006f9cc -d020df9467d0c5a76935b2e23e01c16de0365f1fa9f27bb1c7aeca4c83f26a8e2741eef72c113bb382bfdbf86ab5f36d14bcb4cf9d8ab715da85d63b635fa398 -91478a716507ad678762655fa7f4643cb229898e65c7528d46476bb13fe50317b4730092c33b35c709dca6faa5fc1de720f9603867be9f15f73595ed7b701b85 -db1a725e426823372b5d739e33d21c4f9ad542cc9b46729bec94d5c142d04934269a35ae155be050a7e26dbd43b142397b9add7b64153f789dbd326c1297c445 -e9a0cfc44c3b615d8b6e25d94a9925ae06739b5497f428fa3484c6bd927d6860c5434728b8cdcb6dfc5f10ba1993bce673ae421bb959e99a434bcdf1a4592d04 -6e53daa321dc46748368d68c3e87781ba91d18b7f1b7b056fe24e5c28d6c2b8cc6f8991a7ae3b3e1f07c3d12a65c516ca282135ed3b1cdeabc3fdec677ab49ac -963bffd5e4a75e58032bee6b4e70dbc0725bbf422acda1a5e678e21ba6b57fdfafcee1ace840c7db88344634abbd43d90aec54bcad31aaba1d311d572e47bc04 -2de91f44c6721e22b225162179644b03c498d80a605b0e3195dc727fa6f4a623a96aa6ad9336b3e2be9e046e73731b8fb4752fde669c978d0f78733cf58d78fc -a8d1ccd631bd2c452c348e19790e5af51a0827dd27b11abf75ec9ff39eebea1bb5f1f7622f978233ca1e2f3191cb33ba777677709b92a13b2bd9499e6709222c -c06d7ab9c6109a62a6fba61be8f5a5d8184b2735b3d4d65e7bc537630fd17b4eb5665e27b9415a68a7e26dc4baf7dd4c5bc0cc31564632d9c2a2b42a9a782f81 -9b639d54c1a4b860cb1633c3e57c6830879b896b4b47874797c61e7127343ff324d7b88a877605709b83db04ae758cdbdc53a74e4e4696b299b1eb726754ccbc -7703143d3bd59621a55c3d6da19aead5e47597b3a588e94555d7e036a2868312147ab365edeb222a7e59fe1da066af418f8d79bcf9591d54b0552082b1a65e7e -9521c3d10c850a75bba49752c6495b5a23e1798b26e6469c8ce2dc106f23aa55b199bc36c89719c5f331b6949eb8c12f4648a52f26ca0fd4509753b3fb123855 -a52fcb1aad1cf47298eb3e645ea738a8d8680536abe2a1ad0a6e1b346ea3c43b649220a24c3ac145212ed1190ba5f576611bdf50d848e09483298936de9a7ad5 -d3b02a279a5707030c498a1b92dbe2548eaee0e536ad0e2eaff2a217ae60a104b6789831933248a454ca16ab2be4bc6e5cd24305d385930e6eb325898747c6eb -0e3362952ddcb6e4f931f6bef799bfdfb6f40df66ed3f3db0add3dd03b63a2fe9599d1573e4d2bb495b9517f46fdab38b8cdc66d728cad33f1360ab4c95ce208 -0551a244d5729b91ab2cd331898428c04784451babb993cb0ba6a57e7578bbda5ab72fdce6f0a754557d89bbc46d25a18d4e5a4420239af99a28f91edc46148a -9915823c7ab6652ca5709be529685aee74ce29e358afd336a1e2e03623b729a0d6196e2b34997ac9ccbb4fab726e13e8e6261eafe7329be6e3262af0e9753416 -4de736e2e26ce11f1f62f0ccc6704a79e5e36da9c4e67d7885ab474ed0196e2b0f6dc626e0d9daa283e2db9266c4e632ad9322de6610af81dc466c6298f54201 -709b8ddb72f7139b1e05c29aa3a5cf01a144dd02424194f09500afaa3a731934a4381c80808e75d232deba146b66bc4df758eb793a27d88081da61bac16d5541 -9b08b9550564b606a3364fde8ec66d0bee5f39ef9e15d7ddfb1c4b3c69e6259c61fefab7b129a75cba78d12d4f2d5b7eced9e7aff9c5e93b1c71db10fb1ffbc4 -be6697264d991ae615524181862b006ef33e076470ee27157dd5bb432b60f5d09879a1d1412c948e8665b84d494b8cb7f584dbbc21b4beac9352166d0b353fd1 -3898db1ca8645b1f94fab4358245745b36ab10dae4909bfe59f1cd5bcd42b9d12aaedf97a0c7db5ac36d85a262bd33a6290fab162b006e1b4c6ee3ff0e37bee8 -34c32cf3d38d615799916f9484de4cd2f92279ae07c59e5e0b6f6e45b3aa35de665cf0d2e76399308c9f1d49f45e422c946256f96f671fb94de16347589bc888 -0e71886c5788b47ac16d3e3fc16da4115008f24839c2a8cd0a80dbbccf6f130ba68a256bf696ae93da3aacb2974ba1251d47bcfbdb8c39e81bbcbce414904f0c -a6eaf3dbf4826c95d230a6405672056dbbd974df1c2c6be3eb6ceb988c62ca42a3f14f7d3a97af286b613ad22993b17169532cddcab9f5faa7522fcb5bbad740 -57c608b2de85c87ce733ffb3c94739491e4433a557d81abd4766dee26203701b694c80db48320d8c11b88d126f33da748fdb06a6d7a3a250a052058a8254a585 -b73ab34e715bab5b02ceb74801701bb8ad45dd15ae4281262a006e0b6d15705ba872c1e95c0746d132558e3db03c4c9796579095b1c4fadd08f2bd9244e03670 -5b251d09994081c15500dc16daf6e0b650e582d355c26df2a10af50353fd2506abdd9b84e036705b6f7a1672850283a1807b3be06068105c4b9ddb1e5b39c6de -f72d1fbbfdf13fb337ce4b88b4ad727f9b85dbb203a0d443abe2bfe354a3d1b157e961a6e229ba6986d2115222093b332bda201ea7e11fe2aea21626f51fd399 -577973e9aff848ae9c57999fc6e28cc7a306f7debe2504b781dbfad6f9503014800283ad00b88dd4fe3de7b6e49cf6c899f9c30caea4a30d3896c947b2a7a096 -18e9d12ffe8520b0e8848198e49273aeb4cc650d746e537d4b0f914ff92f6341c5cfac3889174de7d793daa04946e036705b93fa237c81025060801400b7911a -9b711b7f0b6be54f522edcc81c6fe3a737a52756e54e5f97626c4a0e02e9d4105dcc69a220e5839eb9c7fbbc6f7215e4ba28ce0833dda680580d3505b781db1a -da35e1161480025d57a053dcd68ec672ed6f4b09490fa159e8875d1e1e1501b93496a5f39c003b99e78ae925d19b4e840e4a930fb3d7eb55cc87a65883dbc06d -4de98bc5fd703f0aae787ecd4a1170d458b32a006fa0804f01709b4fa1eabf9741265ecc8cd73487a3854c813f1124e58e8bb746ad629ccad358b2d4698bb745 -cba5f9cce53a9ad649f3bef1ed71b17794785bba3a9b55ae7a49ebce11dc463c9f5437634dd5b1e7eed6ddf9aa288f787e681545f5278f7a2a687c0eb0f139cc -fd5161c04a554e5e506a3f3234e27d47bf4e92999c83ed7a5f3406b7f5437679a5328991f16856f44a2e28368ed5c694034516c9cda6566e93ef4bd06e14d0b9 -2de6bc9c6ff14eb9c8d5f8be04ce9b09c319fdcc32c07d09e7eb27aff32b4c4276e22f3bf797bff909bfc161adbe2464b5f0960b6eebc72f8e5a663d58d3c79a -d65341c771abaceef5f8d047919b563485db84cf9cc38c7f2a5fd992f4b1fa9de2b642770ff4ceb88fcdd9f4a2a53b229aeeaad33fc4db6cf136705ba18eed38 -8cb1503e458d3b8f14f55410dc56b4e3f5d41edc86e780e43a5821c8eb69d76c63e652b82db7f6dbc6ba709fc16de0b6f2bdd7086df4d34eb903b6a53ac5bd42 -277b52a0879221fda85351a271ef1db18e7295bd5528e49b516abd03d80ab56db9d3af17aaa9bb0af4fec90f9165f6f269b2b6e4ca89b38a999215ff565cd4f3 -74e746af42da40590aefbf886c41b5d8e15c284e646abc2eaf9f3ad65275334d3aeb32aeae83e3b9bb787e5b2617b8ade810eab63db88db2bf0de7933a46817b -5ed109c0c804363376dd013146360a801e91c4015bee6ce584fa673dad5c2f379915fdb690bcb6667514ea46ba809a127b08f17758472b4e723a9651ae88b472 -b67a86942bfab9f3e28aee9e3bde66e424a33e746ed32d059fc939dbcc4c0a27f4e686c54e711bb18fc20c0a945400dc4689b719b7bb45ff9c1dc95145c9b668 -63726f3080554a9e988954c1a5508c0ba5a58849c9908829b63a12a1248093747d14fa5414f0b6821b4cdddf5294a4b7a9a36ade66a52094057154bc93b3b27d -8e7e042c63c076dd5b85a20636388b7d23c5dbaa35e3fe3bbc922bd8296e2b1415eb9d71d10e04fbd629006ef3ee63e3063aba81db28d026cfd6617442c791a2 -a3cf1dca327286cd99e6739b80a132b5b669d2526ef32e958ae6ee36b711318b8877e036d20f11b88d24138c4c0a80dbc06d65464651747394c5e77ef9ad18d3 -e18058a33204e38805ba235b456be1855d5d376f12af3e5e6528d13b4a4d6dce7b1db05581186fa32ca7d2e36d6ac74d6be5d5b91283f2f13699b4786ec63ce5 -aff4cf4a5d28f1366683781ba90f14823c528e306ab302e036705bc9fe4b4137078dd94ad7676e0a0714aa0b050e6c36cde1367a95e9ade055a65a6ea357c16b -49e1b6801d6f01f136ed5f1d6cdddffcf656ca6d5015b779c18b82625284d2bc442b97d2356e2bd990ad49de9553075a23b8e628b80ddc56bef7d26f4d28c45e -0e36123e7b09c31be17357bf8ddce615d92b9ad78089e6a540af1b2213bd09280e181bae39dc86fd6d0ccb1c838b5360a7e26de57f49fb93037fc4aef4880c71 -10bcea8f7e0628dd6323ed0101e9024a96e036dc9710d471d4443674a384cd0401c899d2677d6669ab8277faa7bbe7f6cd167fb2e52ffbec76b2e8b714dd1cc0 -c4abe9d58dce6dde9a529a80de45ebe736e61ba5507a158a5abac360fab7b62b0a6619b3a5e4c6fd777b250c28dcb6e0fe95f3ee5971ddbdcfb15493665ec2d7 -0cd913ddd9d3dd172fbae5a965cbd9a3ddd7fce2f41d8eb86d88fd8f7d625ff3a7bd17957240ed2378924e1e88fe64aff41c025d9430d80a4b35a04de2a936b8 -cd166f63ff00112f3c072460f4c8f1183179532e1a314e38a0e44031763baf67a8dbbb6de46f65a0513ecb4864d44147c36a7d73b782cd3d877a14a6f4d65441 -400a32da5c12fbcc84817e25a50a7537a5825f4a42793f9cbe378ea795df01e32520096723f96dccc46ba61b38a82b2c37c5319149a7b8add02eb4de19fb7b52 -7686554c673151cd8f4f876769a33305f851f1b9f3a832cba5c653e7d3f3b144e9f942a4bf62441c8d0eaa1a9e2f05f0e22bd12b09fc190ee3f2d76c402cc06d -c475529c4f3a2023a2d7d52cc325bdf6ad68fe146e2b9a27ec074a01701ba9b90b419e2f47e9b0a7dcba677cddb612ca13d9be351d069f1cfd1e8160fe0cf818 -c83238e367d28b2bc969a7d2d9f308d4692d0a6e03b7f98639beaf5281ce709bb7225e832a65455eed5400dc466a37c66dfc2dac953f49b97023398ec5c35b29 -18f1f3a022a2928f8417cb4e1cb0c47f3d4566992586fa31f3dc192543db950235ecbe29b80ddcd6fd5edea41a768666bc15f11a34a959e04b7f14e814b7f547 -c2a2a51a5739f912698474526c4c8ea2c93855200026d15b216e4ba26e29683a36db15ad7e27ecc16de0b64e74e4765482b2d9abf935a1d48262d3fc9ac2c35e -2b006eebb5c27afed212a488c02960a405bd12842bb24e3a9cdcd890f29a028572d13208269f25702b8089f58bd99f12c16de0b6fef43c940a05a0c0c02b006e -eb471750b6fcdb23703c5cc65ec9fda6746e8b6e6f48d3a677a6f24bf2adabd67552a64a96014b63bfb9b51ffaf5bd4c701bb8adef9d100e40012830980a50b8 -6dfe7dcfb7e3392085ee1ee89d71d77a92741f45d7aa165a1f701bb82db4ef201d14800250a09402e036927c85208f9463e38da4709bf444e0c6bb5d8f83e036 -705b3d3dadf9a5b81f05d77cffe161af15a8ad87284f04ec75bdfa983fb88d24fe00721b4997413502b779b9cdf6f45dd66546465c07b90c6a9f6a71bd710b64 -8b1baf16d7ebec217596d50bf128fe778adb7a2122f28402ba02e03607b77162b31980dbba37a028334df76a8d1ad115a8b387d459165d01ba25c5ff4e715ba1 -a858ef8ce92d04cb962a006e739c73e50ec581db7ad7e7dd07d5f7b2dce8b0a2dee58f9c8d0a04347740924ac4a7b0482505b14cea2cab2a9fe57c28fe83db48 -ca17823c528e306ab302e036705bd3faaf714a363e0fccf19030e52bdbce24a3994d10ef3c145ca8856694432f933f85b15e29c7062cdd37a550a2f37ae98ecd -58de42a5dc0a74c32ef51047b503fa9b8e4d4aebd4d343e87d09dc46eaf7e036924c0363046e33729b637954d823ded68b51e28ea3e83399716eb39929b134c5 -cc31a5f19abae7d1b0426dd9127d2b29880ddd1438d31b9ae21ed1b7a2e8d6bd1e12f6ef048abc7297d63fbb63638e91258f23c7a0f0722773c0c66df72d1fbb -6de91becbde8915716dcbfb21dcf01e9c50f6253f24c6fefc4bd9d4d6811709b83db6c7724f024e0b6ca3b3065f14b9e0c88d066a4ae4269bd35b54d5146be21 -629011aabc1729d3b90d43896929d21105d1aae351baf33dc4cd52613cad377758b734fe1ba347dc76ef337f17dcd69ae7b7797f261a61903b9f948861f2b153 -8da884d509e3e10a9d3b7101dc66e33639e4660cbf81dbaa1dc09429599e814a4e1814f82854414a7481483374df28a4452c943e2b57585313c25a556f750fa1 -b78217ce8c2de5fdc789e31f3c74df28fd8de2bfb071c4db6e7ffccfeccde26de0b6423f443e631962883c268ea8f2e5ddffef3b87684649c16dc475521dddc0 -6d950fd2a213b3c301b12a242f0f7983191422295fa8ee1b25fe418439dbccea2db417dc462934df289e3ed5de1e629322ec9f1fc4dc6cac66ec6f94c6ea11b7 -ddf1c49bd73ff082f7cdcc26cdbc84eff5faebdfc6a69c72e9e245b73cb56cf939679fbfe617a7ef70c46d43ec7fec13fb9a5d9a34656ae5bf50ee0c0bed42eb -9db1a7d639b289cf2288af8c468750a587cae74ea8929e80cbce9bcac275f1e153eeb4d9b7518e69702fcb30baa26468b89056483ee75ebe961cc5c5dc91f21a -1ece2a251dcf155753724639f2abe61e135a1cb80ddc16da777a928e3231cb130cd109e27c5392db14678885ea5520221a91b4e895223a4cc99062a3c9456acc -96f6902041ac773713732bc46d14f5893d8467457192c5db9e7e79ece063cf3d66d6d5eef7b4df5c73e809bf65f6e0364a4bd96d246ecb4e8bcf4155ca57c232 -4b229d392560c89136a6a224bb24b6a7c4ee8c198a14f9655c9ddba4cce60fa7d0c90f33958bd65d4d9c89083229a355813a701bb8addcaf40f5a9e91bcfe97c -a3cf2285d27a2b699ba22881b432be51e651a26f440a24cec7f442d339deab7166d0e11e22ab10108a73f4371bc3391ab44cef52b2b5d52578021ab8781bc355 -3944a7fc5960f4e81126195972bbdfa4089c044362df77c43ceeb4cab73c5c271f126f288e47e3e81beff2c606d64c8282b9a2a5085c04799cf3da737a7df0b0 -617168a9f9721f99062c82cdc6157ff388b5f75882a619607f5b819f82aa4d6d13337d226196de29d0b65a64ab8d771e0d28d4366b127d0b3323165af98c6e87 -b9c21da8753d848ec5420b77bc8a3e165232cea27745d33a5cf20e0abd74b9b18327a026725be15edc97043aa0e874a5386684211d772839ebdc66a6a5507a2b -c46df2f63e705b27b88d7124ee27edcbef8ab1503e3d88b73c19b82f2adf2a992bd9528c29ee51f2d1ab43f14d2f9d5805ddcc519c2e2fa5dc309baafa58c37b -88b1c72aa06fb371072f6d1d49b92ef74963ffacbc87085475b01db8adaafe4fcec74d5763d2d2a1c832b74e9a0f85e572d3d21a88505f2755331c8ed7390d11 -30d33aa96a2cb27787fa926f257003b77585db705e02f9b700863d57c01d7de979f128000af44001705b0f447567e9e136f9be80a121b13c2aa262ca32ab63dd -5359159523616948247f5f022f2ebb6b418dc4e9dc6632e6e9b78cef4be00098ac811ac38ad24d1749656b6f90800283874de7d749bdebb64c6d9c2b1fd0e590 -244c01705b986e48d564058227a026ae93f6ee16d1423937b9bd9beb9b748344739d4c3d0b1e36e036705bf3bb77973c04b775a9355117ae40f004046e4317aa -400129dc46bc13a28242cb67113c6cc06de0b6f2dd0f39501430eedca224840d1468b802c11310b8ade12d0bf77aa840f0b001b781db7ad82f913514800203a0 -40f004d4446e1b80f642151ba140f0b001b781db1ad183e104148002ad552078026a22b715da85d63be3d67606384e552078d880dbc06dd44e063b280005a080 -4981e00908dc860e35b80a040f1b701bb8ad2dc3c6fd34b5b6d4c2e6a7f739706daf20fcefb002c11310b8adc3bd0255f328103c6cbacd6dc6a32094278380db -5a34ba3a7f33663d15b43de317ecd8a2b1d028578327a026725ba39485331d562078d8749edb144a938fbde25f81dbca8c0bcae9e065f257d2d68335153a5c34 -ab7a2aa894e2feb36815603f800a044f40e0b6d0de123f38377ba4ade39c80c02304d4334793a7e0f6b6d05035da992e78d880dbc06d72972fc461858c2b1958 -f5604d25ae8665524f055bc16df5f7aeb026432aa640f004046e0bed3f118d49870954cf6da963eaf904b5141aaa4abbd2050f9b6e739b37d886785b55d0463f -569297187c1ca7f12c48394ff7c835966b8cea51ce8b1400443c29d28b654403a26f46a9757d6c85524a29d49a36635b9301ddda320d054f404de4b6dedd225a -28674fdb739c12c703188e9fe24fa0cdc26651702eff57ae08c3f153f1f7fab9521516da960ede1b3f83870db88d3508ceb98a41aa40d7b419eb046064029b99 -c264c6b050196ea36448a9824c69fae73c0a8f145a8574731bc537c1c4ba1b763c8a9c347eeb46ba809a12ab20722ed42d0bf4609856aa40f004046e0b6d8714 -a71288ca4e584fce77cf0e7ecf1d279f1e27603cded478b4a7e93cd0ca0a0dad7d37d2050f9bc1e1367d671bf6b785cd8eeea9549e9889d026876124970c30e1 -0d47398633c51922a6d8ea488412472d02bef2d6cb2b5a8f60512748a2bc4a2302dd9a3f49054f4003c76d2ce42647dd943f0bb4b41c601347bf2b8cc511ce74 -127c7ccb1eed4828e339eefca2fc5feebaa0c592851610a2c5a6c1c306dc86785ba17991626c5b5f733399365bd7c16d9442ddfce1e6542f54111dd07df08ae9 -6d056f0e469eb67942a96918b7c525b6f8c779105c0f9e809ac86ded683009a7d8c7e15109a41c0895ddc840aea591db6242eb61a164ef5a6d183c6c0684db6c -c136ec6f4be76652f7a74f9fc4188f832d281c40723a35f2ba4467a33ec6db64c5bc6446a9b2a3d646b02bc45e8ab1cd795fc0af503bc3b80f0a044f40e0b6d0 -d6ca2d74c6e7aa474c167dc8f6b5a99fb26f0da5d2f7b72589ab2834b4f6dd48173c6cc06dac03607f1b25a45114da88d0503ea8431cc2147f8850d2476e2356 -56d058995af788dbe855a074cb42b9c1b8470a044f40e0b6d0165136a83188e2b1b4ecce836c193426acf87bf9e11e4aecad30b78d459458b2d0d0da77235df0 -b019046e7304db106f93fbbf83cc8a429b8dc6c2625a4680283a72cb108c316ea4d7b193fbdbe46a16dd7ee7d02ddff1cc3746d07b5dd1ce00fb6a15089e809a -c86d85eefa2c645cade8c8aded0a040f1b701be26d5e74a34f9f1470118b65de99dbb6ca661bad5e32a3bbe7f6ad68bc8dd913d1d3b762a8f20d7135b968b6ba -c2c435596f4d294d909262db7f9507c8ffe00908dc3640bd04555514081e36e036709b7b3411a14dd9baa40769c48c1eb0434b4f62f4d9cb6d22dae7a6107771 -4a5a194375243556d64d4555f966135c47522f93e9914562151ccd442c143ff5ad5020780202b7b5a27de1644f14081e3683c06dcad377713e694fba20323529 -4041c9b628573e68d7969ac2cfa20a044f404de4b6a295873d1408532078d880db106f0beb72484551a033dce6ad88d78022176c5aaa40f004d4446e2bb465ad -90714b5b176ef74881e061036e03b7f5a84f225ba6406768c65b11af01fa438715089e800682db66ce9c79f2c9279f12bf4647474f3df5d4d34e3bedf4f875c6 -19676cbcf1c61dee19a89a4381e061036e03b76164f54801e39ebf1e95d5bb6c29b5a0d8f4ce43e4dc77058227a081e0b6679f7d76c58a15cf3df7dcf3cf3fbf -72e5ca175f7cf1a5975e7af9e5975f79e595575f7d75db6db7ed7bfbc181be28103c6cc06de0b6bef458140a05a0406714089e809ac86d95b70a27b6175e7881 -11db934f3e79e38d3772627bedb5d75e7ffd75705be582b725c3e061036e03b7b5a593c34f2800059aa940f004d44a6e8b0ff734bf8ccdc3898dc5d89e79e699 -c993275f7df5d5071c70c009279cc0b8ed4f7ffad376db6d17a7921f899b64bee5f070740ca8c8543f0c9ed81df88377f9cb762a6970e6441f60a629103c6cc0 -6de0368c27280005a04019058227a0b6729b512c0645c6eb7c5574d6ac593366cc38e69863588cedeebbefbefefaebcf3befbc3ffff9cf5ffffad773a92ce781 -266857fc80d19807e5b3132ce0066e2b330282d2060f1b701bb82da8c75599487fec5995b9f73b2f3ca8acdf2d80f27bae40f004d4446ef3de226ae333db75be -2a7ac411473cf1c4138f3ffef8c30f3fcc564ee7cd9b77c001fbffe52f7f09e0b62c34a71e3315ff1d13d8681462638866c63129b867ca422d201f0d349e6da5 -162a50511c86d5f35ed8ba028287cd20709b08101b1fe4066e6b426feffcdd88f554d0f64c63b0635f3ab91c7ed14331234323de77f4eb2499c9b5b05def4b4d -8327a081e036b61ecaa26becaed2871e7ae8da6baf654ba5b367cfbeebaebb264c98f0b7bffded1bdff846b1785b045549cc6cfe30fbc0c0280da1714893236c -92b1b96788d419e069194ac7d5a71ca81d60af85f512a7a4ccfad2359b5c68f0b0e93cb7c987931a0f2a05b735a163d783357dac693d15544a71ffd9473506a4 -680ab70929388719ff54beb225e9a3aac113508bb94dd9e0c6d4e7f13616ae5322767ffce31f2fb8e002066a6ca3db6f7ef39b7df6d9e7b2cb2e9b366dda4d37 -ddf4f7bfffbd30b7c514952d7daafbe286e73b565a451fd10f9817a928192a45304653e37a09af01db1cc33278d8749bdb7450d3af80dbe47e453cd5aaf219a2 -1eaca9dc6d7a86f55410dc466f911a2cc16dafbe31f6fa9fc7fef466f47ee32f636ffe3579b3098bb34d13b9cddb338aae93bef1c61bec3920fbeebb2f8bba3d -f0c0038b162d625137f620b76baeb92688dbb88329bde90ba1b92ba665ca88ccd28d7232ae89055065179d9c8708e9091b1ed2d3dc88890dd8e6ea4de036e31a -28b8cdfb13e48536e3a3b91ccfebb22dd5299e18cd6cde52a08792a16e93af7e746abbb2a468dc7b47aca39eb9a3390af9c6f371b4826ca0176a5b36d5af17aa -a9bb0af4aec8db20fa079594a32db9d2668a999215ff565cd4f374e746af42aa7f96c2fb2f225b502d7638178a13991aaff38bfa5b5346b5f11a883c751d8227 -a081e0b637df7c93ed63633725b0e5d1e9d3a75f72c925071f7cf059679dc5a0cdc36d119c650c95ac792e1d1d4eee31e5ac942d59260d934728c37d09924186 -70d98aaa96a1ec4692d6b44eaad05e5c70f1fb288a8eb216db070f9b6ec7db18cc619d94d8adddf38a4e4e4696b299b1eb0e8831b25100f488240ed872672b27 -d43feb69e57ab9e1b2e8b785e4b535b1a350db579416acc43777b7d4d18a939c8e65942b22ad9cad9e21e50af3c2f6d6dd73c7db8c9c649485ce6dbaa511b66c -66268513bc73c362f0043410dcf6d7bffe95ed63fb9ffff99f8b2fbe98e11a7b0208bb3581431b7b6db1c51639dd95c095bea09944daa2b5d2848a141b2df495 -5bf98cf7c2890783c88f1ae117a33cf542e52789d8ef4b58eaaa0971261a20b3e061d3796ee3e8c65fb82fc13ec1fb078b3c5b13676e9ea9625c28addf2dcb59 -529442ddbeb9eb5bb416952094e2b09b05f5da296206b338b14dbd0e381a97825016c451f14ececaf6996565e442c7754acf2c646383b3d80752bcad5a33eebc -c32bb976c1135013b98d723fa99854940fc62667c426284dfec0f6bddd71c71d857a49ff8de92b9fb891d4d75ac1c3a6f3dc86789bafef44f103e24b84a094f8 -9948ee2509db5c4e496873929296185eb2b15a19c4e16e57c56d22ab32b5b6b94487d1302c267633232dd9b88a1b3b56540787db889845c43b701ba9bb7a218f -e562843676f1965b6ed97efbed49c5f4db480ab7d99edbabba4807bc7e57ae6fe583dbb0bfad4ce72b8a6e8eb2f27368349f2ac6743820d6a80cc138f8a3e678 -9bae5b00ea51a4966ddc757410a751b7425570372e31de46594ea5739bc27fe24f623f2c69563ede269316cfcd98a7fc95fe59a905e26d9e66a570db75da8b3d -bc8ddd97f099cf7ca664a741f2562b006e03b795ecc01474f3c6db741fca47aabcf5ea06b779ab290ce8ade055a65a6ea357c16b49e1366304ce9d30609d5443 -e102fbdbbcd5940daae2362f7811514ca6406f458227a026ae937a6b0b0328508902c1c3a6dbeba4fa9e36fd0ad37f64448d0955d228adcb847e6b42a1981965 -4dcd4b180e3129696d36cd89b7519097d950484b213c773ff45220a5ad89f2d2474473b8cdb13e4baf0ec5b23cb7d97250ae13cd0697db282134d1a2bd33a674 -1ad8b45a01709b31de86fb498bf66a1bba51c2668200e442e9b33eb3b479eb2533ba7b6edf6c5464cb5ff6d9ed64d16f29ba291847243f2d80942d0f1af5d79b -b512dfdc3db37e6e8bfefda6f5fedaa02d2edd7cf3818d9f747b7e85bd656d8dd912cdbc5e89828227a026c6db7a8762c49cf7d8f9074f49af65cb96dd78e38d -13274e2cfa6b0efb862b103c6cba1d6fe33027eef8c1fda401dd588ec7084ca15c34629c120a52f2b1a19b97db04c1c819da38c666a35c97fdb7b18b51071d0d -29d574db50047797eb687a0a537a6b4a6c024a0fd43796d9b69ae93bd214fc5212cafbe1f4bd713cade316078af3013682b78ce02532f49ae9060e160ccbcd56 -bbe00908dc669074f79fecc81ef9c68e9c672ff681bdd851f4575d75d5dcb97303ba1792345681e0613308dc660bc5f1ebd18f35d6491bdbb39bea1805259bea -bbea1785dbda5217f8d917058227a026725b5f14940b9db5fbe637ee326eee16ebcdd9f3e7f75c7f0b3bde94a1dbe5975fcecea767ffadc33dfd0c863a4a1db8 -3282870db80ddc3670a3a58a0a7786dbbc15f11a542127f268b702c11310b84d6df8272fdcebf5876f7c71deec2593866ffcfefe33369b3c77d635ec60537646 -d694c9130fd86f9f1fecb8439446398da05ad2aa36b776f7ed1e7a1f3c6cc06de0b61ef6cbee66dd199af156c46bd0dd4646cda80a044f40e0b69cc40fcfd9f5 -8da76f7ffeb2431fdef13d0b3ff1814bb79830f3eb977d67dcb1d7ccbbf185952b97fcfee1ab2ebb708f5d7e98709b7cd641b5a4556d6ed45e347076c1c306dc -066e1bb8d152bac294cd5ea50be97906945a506c7aee280a68bc02c1135013b98d78f7006f946a8d5f7cf4a2e7ee3e6dd9e99f7de487ff74edc69f9cbec5efc6 -7fe7ba8f7ffb8cdd0f9ef6f083f73ebbecd1fbefb8e15707ed9d725b7c36297f0eae7c3c7cb2a33bfe22be3e1a1d60c58f7e1f1e668786267ff00f49ea741b78 -7c8815b8ad9621173c6cc06de0b65a7a280a810250a0b30a044f40e0b6ac4fecffd34d562c3de7f1bb7ef5e8fcff5e72cee7f6fefe116bfefcfad54716fef3de -b33fb5f3210b175cb57ce97d7f7860e1d4093f97412d2137c771ef299cc54bab319645a71fa41f9483df7976e0b65a866af0b001b781db6ae9a128040a4081ce -2a103c010d1cb7b1f89c1ca293ffdce6dbeb2f7ce8845937ef75d075dfffc4dc1d37bee296f79dfbe8bfccb8fd2dc3a77d61a79f5e75e9f94f3e7ccbd30fdf70 -eca47dd5001b632f4e5a326f4594c6636c11aa199298a37431d181db6a19aac1c306dc066eaba587a2102800053aab40f004d4446eeb632b1d74f51e3fba6e8f -0f5df2ad0f5df1ab8dae9df7990bef5eebe8b9ffdff70ffed901fb5d7be9d94f3e78fd8a87af3b61f2cf721016af6a0e8f96e03611871324076eaba513040f1b -701bb8ad961e5a5f21fab3d6ea2b1b254181815420780202b7e5facb077758ffd317fff8a37387d7997bccfa179ef7d113cf5deba79337f9e60ea79d34f596eb -2e78fa8179cb1fb862c614697f5b923a3ef63d8aab451fb22d6bca8aa7bc078e07e1b4285d8270e0b65a8671f0b019046ec373776be9830d2a04b74036a831e0 -ca0028103c0181dbd4def12f9b7ef0fd077eeb4387ff6c8d83f6fb8ff13b7e69fcf6274d9b74c585a7fefeb6b9cfdc77f9d3775f3473ca9e4abc2dfa93019b40 -31edbe8408d104a5993ec4dc17bd925b54c16db50cdae061d3796e930f24d50f27c573776be99e7517026eab5b719437d80a044f404de4b66a6f11953b0631e7 -cdc67dfe97c71fb5f7a1079e74fc91679f76c235179ff1e04d173f75cfdca7efba68d9adb3674cdc65b03b5b776a1f3c6cbacd6d3aa8e9575827c079093d1a09 -ee83ea7b5428cb16dcd63b6d1d39f7abb9fb5259142a2b103c0181db0c1d69bb6db67ee4fe3b6e5f74cdadd75f7adf4d731fbbeb8aa7efbd8c43db138b4e3d69 -c28fd1f9baa140f0b001b781db7a34048cb378f973368d4ca61feec9aed8eae5a53a636e7a86ba99b1446f6efa863cc7163d6fa1dee2142729d2790b157902dd -7a349a1a9e6df004046e33b4ec1737fdeca9271e3df3b8c933a68dcc3ce6e093a71e70ca51fb9c7cf89e2cd2c6a06def1ffc67c37b03dc232a103c6cc06de036 -621f2b64e69ebf757272d0985cae116894b4defb12dcdc66f34de1b6b02ad87c0bcbcd1659b481a0de8214e988be01dd0a0d908e19074f404de4b68eb50daad3 -580582874db7b98d6d5f53f6b7619db4863e4c09bac834408436eeb911358c31a4809ada908e526819df286c44f4cd08737485c36aaae91fa03d92b45881e009 -a889dc46dc85c69bab77c62dee0e709da640f0b0e93cb77174e32f05e3d89fb82f81d6bf0a5851a04d263047f4cb1d1833629ce322b10ec1857683db8804ec55 -89de0d88ed02b3262b103c0181db0ccdbac7ce3f784a7a2d5bb6ecc61b6f9c387162937b007c0b502078d80c02b7713ee36fc4db027a57d124f4399b30fd8f28 -9bab2860e1cdd65d23ef762edd40be22320f8e72396266b6a2e51a51a277c62274598835d51aa56897817dbb15089e80c06d8686dffd273bbef9e69b7f8e5fec -037bbdfefaeb575d75d5dcb973dbdd4de07d5e81e0613350dc86e780d4366e28e866641d0a51b9198548247429881864839e30d00c2ed4c17c144f026c006df4 -bed455cbe009a889dcd6f7469ab5fbe637ee326eee16ebcdd9f3e7f75c7fcb6bafbdc6d0edf2cb2f7fe59557d87fa9eee1196c54a5fa66173c6cc06daccdf01c -905e745cfaad09f4b8940e2585d27aab49dc4356c68ce8309ddb2896c44289e8e920630aaf7b5b0106ad5320780202b7a96dfde4857bbdfef08d2fce9bbd64d2 -f08ddfdf7fc66693e7cebae685175eb8fefaeba74c9e78c07efbfc60c71da434d10107c91377959cdcdc06aa6bc0200b1e3603c26d627f9bbc668afd6dbdeeb9 -b6599c8e1accb268744d84f16cb5f3eea80b28d48632c66dfe4afe3618f59a110b756256b40ced5698d2583c07405baf075463f30f9e80c06db9367d78ceae6f -3c7dfbf3971dfaf08eef59f8890f5cbac584995fbfec3be38ebd66de8d2fac5cb9e4f70f5f75d9857becf2c32c4d845fc3c3d9d1f179a21327ca37b6e30cb663 -c1c3a6dbdce63ee10adc56ffa0316e56a35c74d31865d797a82c85db8c2e2972e9851af534fa668b6c79f32c6490e254b64790526e984dfd7d0925364781e009 -a889dcd6bb5b44bd39bff8e845cfdd7ddab2d33ffbc80fffe9da8d3f397d8bdf8dffce751ffff619bb1f3cede107ef7d76d9a3f7df71c3af0e8acf278d5f3c6a -26ceb84a2e89798f7d97805d7469787e1c9ce307984a27938ea6875cf1834df1aa4d81e061d36d6ed3a36b88b7d5d627519003e3200e14e89202c11310b82deb -06fbff7493154bcf79fcae5f3d3affbf979cf3b9bdbf7fc49a3fbf7ef59185ffbcf7ec4fed7cc8c205572d5f7adf1f1e583875c2cff3d8261d4e2a9d2b9f9119 -5f468d8e204d3f243c17535d7a0e7d76c269973a66b3eb123c6cc06dac61b1bfadd9bdbb53de39a27d9daa272a33480a044f4003c76d2ce42647dde43fb7f9f6 -fa0b1f3a61d6cd7b1d74ddf73f3177c78dafb8e57de73efa2f336e7fcbf0695fd8e9a7575d7afe930fdff2f4c3371c3b69df5cb42dfa238db8c9bbd6a4881ac3 -b604e3c407e55bd960903a6e7feb1a3c6cc06de0b6fe76dd412b1ddc36682d3e08f50d9e809ac86d7d6cb083aedee347d7edf1a14bbef5a12b7eb5d1b5f33e73 -e1dd6b1d3df7fffbfec13f3b60bf6b2f3dfbc907af5ff1f075274cfe19f73059f54c5745a3601ab8ad8f8d57bce8e061036e03b715ef6e4811a20065cf5c48be -480305faad40f004046ecb35dd077758ffd317fff8a37387d7997bccfa179ef7d113cf5deba79337f9e60ea79d34f596eb2e78fa8179cb1fb862c614bebf2dc2 -b66c475a1271cbb6ba455f8bf550c4dbfa3d428ce5070f1b701bb8ad913d1a4e410128d01a05822720709bdac6ffb2e907df7fe0b73e74f8cfd63868bfff18bf -e397c66f7fd2b449575c78eaef6f9bfbcc7d973f7df74533a7ec99605bee76d194d8a27d6cd12bb9cd5444e0940f58276dc0e00a1e36e036705b03fa2f5c8002 -50a0c50a044f404de436ef5d9f7243153226b6f066e33effcbe38fdafbd0034f3afec8b34f3be19a8bcf78f0a68b9fba67eed3775db4ecd6d93326ee42cc0766 -0d572078d880dbc06d0defdb700f0a4081862b103c0181db0c2dbbdd365b3f72ff1db72fbae6d6eb2fbdefa6b98fdd75c5d3f75ec6a1ed8945a79e34e1c70def -0d708fa840f0b001b781db887d6c30cdbc4ff1ad4a1679f75b5579221f28508f02c11310b8cdd0405fdcf4b3a79e78f4cce326cf983632f398834f9e7ac02947 -ed73f2e17bb2481b83b6bd7ff09ff5342a4ae9b502c1c3a6d5dce6380541394b1ee725f4ba077638ff3aef00adb3ac5e3459dbfdaf5613f90009f76112234323 -c677983f3cabb0b461a98227a026725b98044805058a2a103c6c5aca6d82c38c47c52bd026fec4b9f245fb15ec990275b2489d65f5a271dbee7fb59a50b84de0 -9a5cb4f122dd37701b5d2b8365a12d6b858c4bb985c49d5360d0b8cd8d628e6f7574637d01cfdd6dc580e8d7f19775b2489d65f5a2d1dbee7fb59ad0b94d2fb7 -0c7b95491ba640f004d4c4785b21142b641c262e52755581e061d3d2781bb8adab3dd9562f23b4510e369533241e634a3c5194e7ec2515ef89a2ba878ec675e7 -66fcd6b145cfeb1b5131a18337434abfe5c7a946ffa092b2b325946d78aa7ce02a9715ff4ae46fa2a5c85ebc29de3a1b2bfbd2d8810b0196be906aa3bd304b63 -45880bb8c11310b8ad641f43f2162b103c6cc06dd1eff848ad7b415adccffae4ba3bd2a6939391a56c66ecba839c1cd043e136a26fc20137055272931dd63fbb -19d1a19bac92c3492fc5127b908e563a937102d341cd866e0ab111d32ab9b1026d6fbd6ade781b9ddb744b475a6fb6c4dc1433c1709ac223c1135013b98dd847 -8966ebbdf7fd5f596bdd6fadfb91bd36f8d8c8fa1f9fbaf67a5badb61a316d6fcce443497b534285b9ca274054986df9ac74c76cae8a9361b54283870db80ddc -56be0bf73407caf2a88c0b4468335257a1b4de5adb20268c7b88b9d9a4509213736375a4c022913bbd8a09030a541973732794bf552c8d5c6844437a2dbc965e -c072e410cc6db684464ad3118d99c91779aae009a895dc969e2c65f87f599a6f7ee9cb8ba74cbbeadbdb9ff3992f9db6d1a7667c78fd13d65867d2fbd63ce41d -efd965b5d5dffd0fff98175739b62a7d766e721a7c6ceb801832dfc4c72c8c46e7c9e75fd1737aa52bd9490cde5eac1ba4cffe8df22b9591b3ca4ab939fd728f -240ea84192a490e00ee3ec188b9c2fc1c306dc066e0befd5bd4f49813699c0c290c88d1dc131243a1b51b88798db00729b77a9d488836de43611f1b285be784d -dd38086e2bfbbbc568c49885727da7cf6f76cfe4231f3cf284f9e3779cfdd92f9eb6d1e77ebdde278efed0ba87ffc71a87fedb3b86575b6d93b7fc93211ff58c -51c653298514c208732df304a19f67ca539129502f4489e6cd1f2e076e744f94ba9405469f0ef4785b22a8c121709b7c0f29ee4b28fbc3d4a4f445d1cde13b67 -1af9ad18f722dea6171a0697b67c1c81341bc3b15a13731396b25061fe17ea53c4781b6539d51663d3b94ded1ca946853c2f644c8fb7e9a05632dea62320e26d -49db796f352072db261f5cf3ae8947dc3bf9a8fb4e9c71fd0f769bfdd92d4637dce8c4b53f72ecfbd73aec3d6b1cf4f67ffff9aaab7fedadffbc9af20ba7b314 -632d0e3ff25955496c4c7c91fc9d9c2e2ffd95eb914ae0c7c66d6989520c2b61c7ec0abf60f8db14ebcacc6287a37293f8def0fce4bbe80be97a12aa335499e7 -2fad3e46196c393a9fe5197f13bd84649a87b6a2737531a8aa4a9173352ed8ea6aaee9e4e600b781db0a4d18ed32a6a09b83c66c95d5f9a317dc5648eaf24854 -32dea67b4b5489270c8e4d2ae552b8cdb8b259f93aa9e258a1fd6ddea627729bd1ac24b785f9a617caaf044f404d5c27ad8adb98c45bacbbde5d13a7dc3df1f0 -7b8e3b76c1cff69afdb9cd4ff9d8678e5ff76347aeb1f6a477bce7d0b7ffef83d7f8c0ae1f5aeb6dff2405de4c2c956048f255842c19592848a7204b1ea2d420 -911aa3120ba51a7b710f227849e26771202d8f47fc187b435c4973989316631d415f1c28c5f504cc62a88b0cb58212cce23ee5b189a74d6a60f4d05474ec8a5d -5569bc6452482ccb9db7b99a27499157f0b0c13a29d310f725787fc4fb6e40bf35a1107b398255a2cac12c624b180667c4dc4a721b85d288fe07eb160d49da0d -077ab7ac9cdb6cfbdeaa1a1136fc92af97e1361b6999a4cb3dad9758e8e0729bb23f2cfe574bb47ecab04f26bf2fafb5f69d1327de3979d25d538fb979bf4367 -6ff6959337d8e8d71b6fb2ef3a1fd96ddcb85dbe3d7eb75df2e78d1a6360fca2fc5fde8082930cc11eee606e99d2c36d82d68cb9255022e529c5a092b2d40252 -27e59c994b72fe226e97a10faf5b0c5f3c8aa617246a2ff6ffc936b9e2e486a215adab9a489d66a5b8caed45ebe47a46aabf4919709b31dec62e3209f1dcddaa -e698fee66343373a6a304bb90a14c213613c5bdddd7442f1cdeb928320ddf9db188e6748f48d68a6e7d92e6e23c262e54380730f7bcb392b178908257208603e -4a11465763ddba156ff3b631719d54e4f3890f7ce0d643a6dc7bf0a4db0e3964f6cebb6db5e1465fd864939d77def9b0c30e3bfdf4d367cd9ab5ca2aab64851a -b92d26b4e87602233170aa9001c852072ab7f1f8961cfdcaa5e4f71d480c941567da81af46f568f0a4709bf14e83d8912cea952dddda6989828c661a4e3db0d1 -b37e5d6e0529f0272e0f1ab729ffd4e17f3ad0cd6110fdeee03920de9faa461a08a8d20145e12dc5d24d6301c60e79f4dc74637a89eedce46f0599715a3556d9 -eb9b92a19c0fcfd65d97b05ec3425cfc2d81887a857f252ce5248e8472b64a11c60cc3fc0f482590c8c146ba8d11b6d28a64076719fdf196a8e763f38d59064f -404d5c27f5b65f516e63196ef4bef7dd7cf084db470e3f60bb6ffcd7b65ffbc9ae3b1f7dccd1679f7df6ac134f9c3c7efc066f7b5b56a885dbf89a620c299615 -bd24b4967d6ba8087d7f5b1e1013845b3a3a9c6c21e35e1aca8ac35e59902f5d4ecd2f4152e049ac9ce6ab2c558aa3505a2559b7cc2fcd435bd16e55a5cc8514 -f2ed22c922b2d555f39d1ec1c3a6edeba43656a35f07b7797fa6600005a000148841d97cf269f0043428dcc6b45bf7dfffe386fd0f1ff9fa77f6de7bef43470e -fdd14edb6fbae17aab0f0dbdd57b5f82e87a82bab235419990a2f044440ec615c324933cb8a991301110119bd8922bd15d04d93a695a10cbd354566e5553dde2 -2fee4b486f6b50d649b3988c6629be52f088b3593e9618fb90ee7b93135ab94dae8b41551e638c14e652e8159773ceb99ac8a4df581b3c6cc06de0364c485000 -0a40018a0203c16d94fb128c2b3eb6389c50769d77bc6b972f6cbaeebaebbef51fffe1ed6ff9078ae295db8835c0ca73ae2043d326b00ab2ed7b16a6d5e33261 -6a701bb8adef9d1a0e400128d07c051ccbb2c1818326c6dbbcdcd6fca6727aa8ac6436a9369de43671cfaca674f0b001b781db9a346ee10b1480024d5180b807 -ae4ce000dcd694c6861ff52b006ea36f68532cc16df57757940805a0409714089e809ac86d5d6a18d4a5c90a040f1bc4dbc06d4deed8f00d0a4081e62b103c01 -3591db7ab74edabb9c9bdf45e0a1ae40f0b001b781db30a0a0001480026514089e80c06d656447da762b103c6cc06de0b67677fd1e7bef7ed25b8585eb4f4aab -30736405057aaa40f004046eeb69bb20f3462b103c6c5acd6deec7edcac724389eca0b6e6b74cf6e8073f2437d7bed4e9d65f5a22e6df7bf5a4de40773e9a77d -c8bbfee5726dd7abf5cd9d9bf111bbca6d0a720ec1135013b9ad4ea1fb5c5627efdfecb3a6058a0f1e362de536416c0e20e3875c7103705b81ce04d3bc0275b2 -489d65f5a29ddbee7fb59ab8b92dfa17a3e531b68e276e54eba12337f7c90d4ac2e00908dc16daa00a72851158582ab7cbc63c7b5150a872cd49173c6c5aca6d -ee2347f57b4bc16dcde9abc19eb88f960fced69bb04e16a9b32c6fc5030cdaee7f40951d49c06dafbe31f6fa9fc7fef466f47ee32f636ffe3579b3098befd107 -b78576b976715b682dbb9d0edce67e0e08b8adedfddf086df29e30715ca6f122afbef2956def9ad1cc26a09754f4dc9c337d746ca6d7c0b619ce5896638b9ed7 -37a262746d29fd509c1cca3f883f8d69651bf659b151b2e2df3a3274e746715eb6a996db94654a773cccb1d86acb875d979db7e5608c05064f404de4b6deddf5 -5965ce366ecbce5fcace5b4f4f77904e46570e625252c5998f46273be50f674acee6cc0d847c52e9aff83ca82413ee6d966d547c92b5eb54aea223ae65f6c1c3 -06f1b6e8771ce7ca37bbbfbb236d3a391959ca66a6709262e6801e9905e954e7e6bca2dfba2b253b4f51c9a19bac92c3492fc5123b9a8e563a937102d341cd86 -6e0ab111d32ab9b1026d6fbd6a15729b4e4b466eb399e9bee9c995b4e24fdb75912733089e80c06dc411a199e50e018d292c39b533252d7d69929fc32e1da09e -9e769e7c119521004b45b6d8019ddba463b3e223e4d31c126309ced2333db3a34f956346076f2d3578d880dbc06da13f1c35a5a32c8fcab84084362375154aeb -adbf0d62c2b887989b4d0a238f9a50430df851804fe45321b77981cca8bf9bc6e46f154b23171ad1d0dbee74031db3785a2f2a953133a6b5819d6e6cf4397802 -1a386e63213739eaa6fc49ef3a2972a52924de12a1b404bd9480968c47b65405108a9fb72e85e5445a634169c82f0344e54a01095a6f1a3c6cc06de0b626f77e -0ab4c9041686446eec0866112269c9fa07f8ef003207ced27d6b3eb779974a85c22de5369de42ccc3ac2a0ca4d6092146663a381cc6adde7b626ff2066be19d7 -4975de922364d262e5529e917e45be5e400889de0a719b7ce07a01582ce059934dc16dd8dfd6e4fe59c6b7a2e8e6288b2388fc568c7b116fd30b0d8033e6a72d -9f32dc46f1adc9dc46594eb5b19a1e6f533b47aa4e99deeb4e4b8cb7f14cb8b1fc5632d70dbcc60ef76c313fdd67762578026a62bcad77ed5d65cee6fd6d113f -e5b6a4496629c265ac245db1a6caf96c5a271d1ee510989624564e29f1b668d156da7527626f552ad5dcbc82870de26dd10f22f6b735b76b479e51d0cd4163b6 -ca1189a4f2789b972c8d0644376c313607deb91b9fa812cf84e8a4b7bb856d3e8be1c6b5e32d20dea6b85a687f1ba19a052264464a932fda28d0e886d7d8c867 -0204459efc4af004046ef376128b8199dbf816b4dc7d083c1416ed7f8b6f1488202bbd945d71aca5cae5ebdc26f2e2fbebe217cf3ecb9c5db285fa2467d22d7a -a182b4305df0b001b745bff5e0b6c6f779faad09856266149a0966115b424786015f39aa606338076051288de864b06e5efce2bdd5b823ad726eb3ed7bab64c4 -d8e0c916eb72a31b31b754bd02eba40aa5b182bacc6d55def5996fb1dee55c4977ec7326d2dd117df6a4aee2cb73dbb6db6c77f041876ef3b56df907c6beccf7 -29a75ccafe3dc4df8cf0264d99ea5e8eacff5be627a5508719b8adae4e5ab61c1bbad1518359ca4e50084f84f16cdebbe984e29bd7256140c98d186f33a21b45 -1007f3295fb58bdb88b058b6136be96d612dd9508f72c5de1ac08b921bb8cdd388bda3abdee55c79bfac2d43110e34dec05a9b1b7d29a83cb75d78e1c54f3ff5 -2cfb2fffd0706e93ee98c93e1a1fb7ab5b2a66e0b6bef4d84a0a1550a5c38ac25b8aa59bc6028c1dd5d173d38de925ba7393bf1514c569d55865af6f4a86723e -0a042b705912da948d6b62e799229dbe234dc12f25a19cadbe378ea795df95f4526f2602cb8c7c2610cd6b2603996cac89a6ee9363c66e1b1d22952bc1135013 -d7497b4757bdcbd9dbc960d0400582878d5827dd7597dd962e7d7c975d76e31f1ace6d94181bd106dcd6c0fe0c97a00014689102c1135013b9ad45bac3d5562b -103c6cdabebf8d08670e33705bab7b3e9c870250a0ef0a044f404de4b6de45c57a9773df7b001c08502078d8086e6be9fe36705b406f4112280005a040850a04 -4f40e0b60a5b0159b54c81e06123b8ad5dfbdbcae39ac801f1b696f575b80b05a040c314089e80c06d0d6b49b853a302c1c306fbdbc06d35f653140505a04007 -15089e809ac86d1d6c1f5ea5c13b90a0e14d193c6cb0bf0ddcd6f0be0df7a0001468b802c11310b8ad64cbc60fcc751f33603c78aa64b1c6e4462e042cdaa50e -1e36d8df066eebc508469e50000a0c8e02c11310b8ad5c2789a8481c8360c9aabfdc56ae7edd4e1d3c6cb0bf0ddcd6eda151b276ee27bd95cc5c4eae3f29adc2 -cc911514302a607c78af6ce9780e9c6c163c013591db7a77d767e5397324cb1d382a626f09ae65275871c01b4d8fbd4a8e31cdbe8f2fc4a9629bdc31a7f1f159 -6a584fca9a1d71652c6878be74c295bd685fc8b0a3c33778d8b47a7f1b7fa6aef71e05f1e85da325b8ada363a2b26a9579846c5127ea2caba86f14fbb6fb4fa9 -23dd463ee18372c6ae03adf447e3463f5ce931f37497144b2fb7717baf59f004046e0b6ebb14b296c6078272a6d28f72972fc66495e05892243b873e390e5eb6 -915d339d28bf659659c67c891ba220c16df6a20776e35df0b069e9fe36416c5e6e930d8cc6e0b6323f1c8390b64e16a9b3ac5eb45ddbfdaf56934ab8cdc667e5 -a18d5e59701b5d2b97258bb7f1b73052fe2c564c466929b879b94d89c629f68cc30a6c47e32754496139e382aced4479a3abc5eadf7aebf2dcd6d2e7b7b9b94d -ff56bf026e6b4bef0f8e5894ac609d2c526759256531266fbbffd56a026e7bf58db1d7ff3cf6a737a3f71b7f197bf3afc99b4d589c5e9a186fabb613f42eb76c -61328e634448562bb7f19a49f45688dbb2c5ddc1bdd1b53cb7b5f4f96dde789bb2360a6eebddcf484f7336429b72bc2677c078d1f8956def9a7e6aa7ed2c4e51 -9ca3ee7a6e5e63af816d339cb12cc7163daf6f46298c6ad02dbdfd449c1c4a392ad47da2a892152fda7832a9fc9572aaa9d7619b0191dbe43d64c6c896bec9cc -b1edcc9b5b5ad3ec94526f05072bdee695a31906c9c266e20cc720e95ab6b0292e1aa8ceb44e6abc3bd5b44e3a1cafcd66d8e528c85c745a5281205f33b4afc8 -8bf2dcd6d2f349c16d15f5a04667e38eb4e9311e63d4c766a6508862e6801e9905ed3377c400f2b7ee8854d16fdd95929da7a8e4d04dae85c349b7fff44ea6a3 -15bba227d72f1aaf888b72b6c4b44aa1cc0bdb5b778fc26d3a12d9aec8d76ddc46c94df6d30b6432e4399a2f780242bc8d3e28f2962aeb24f12b1184936f33e5 -31b1dc8da7726c2cd9019edfa3a6f865b82f81e79a86fa627b6b41c640609601ee4b185bfecad88a57c756be3ef6d29fc6bc61ea96ee6f1351b442dc6634669d -6d642437b3860e24a4eb890294e551191788d066a4ae4269bdb5b5414c18f71073b34961e451136af84133cc7faf5c799e5029cdc86d45494ece44c9d0963fb1 -dc42b513c6366c52ae8b3f155ca35097db869243f40b19df003128dc56f95d9f42b8dee51cd6ff9a928a015cfeeed5a638d6633f82ffb9d3f6e7b7d1b9cd6609 -6eeb71df2c953d05da64022b8914e0b6e0b09c918383db9e120c93e867485e2d550ab5b15a87b94dc63b705be14ed83bbaea5dce852bd9800452b86d20a96d6c -ac3cb7757b7f9b03efc06d0d18c12e178aa29b232f0e25f25b31ee05b7e98586c1a52d1f4720cd118624e6c6f4a1909c90d151b542dd8cc86df2ba27cfdf9dd0 -1d6f533b47aa5121cf0b19eb80a544d4d24a65e12e99c3742613c925a87585cabc8134dd0163058327a026ae93f68eae7a9773a16e07e38628103c6c5afdfc36 -b65a4a89b7b96dc06d0de9c34edef2fbe8a0315b62229104b34840c230a4932b68633507deb9c525aac43309a8b2b1740ab7195730cb709bbf9345152cb0bfcd -9b61003639b8cd981be26dde56800114e88f02e5b92ddd6198fd3fabc994532e65ff1ee26f467893a64cf53ee4b666032fb72906ba3db8ad3f5db660a9f45b13 -0ac5cc283413cc22b684617046ccad24b751288de87fb06edeb0591a042a7ca742dbf7b72983466132705bc11f158b79efa262bdcbb99a9a23977a1528cf6d78 -7e5bbd2d86d20a2b6043373a6a304b5b684a5c37929c92d09b892d376f44cacd3af49aead1afa269c3aa60a3c6a28d5d7fbc8d088b452be2b5d7618b722525d7 -dc1a28b8cdab36c9a07774d5bb9c49158351c31428cf6deddadfa647078d81378a19e26d0debcb05dce19420de32acb82f2adf2a452ad9528c1d4eebb9e9c6f4 -12ddb9296ac89e1b6be1f5cd2dafb1d67a92022d1a9b8a161509f52b29b8a83b1615fc5212cafbe1f4bd7172d1c66f8b568468cf794b7ecb090b5dd7b312576c -79daf28fd5501d33a221b30c9e80b0bf8dd84960d6410582874ddbf7b7955f9605b775703ca04a50000ad4a840f004d4446eab51371435d00a040f9bb63fbf0d -dc36d0fd1e95870250a0010a044f40e0b6d0d6cb9f72e57a904685a71118b3aa30ff50315a9a2e78d880db106f6b699f87db50000a344481e00908dc16da82ea -91f0f627d756c8551566155aef2ea50b1e36e036705b970602ea0205a040fd0a044f404de4b6dedd3d5065ce0a42a57f4a61387efa67762139783ed9f5ad9d42 -6a38c9ca9e787878cb2d4747a383ae86e7f3a2e3ffc657a25712ff938382c6634febefaa4d2a3178d880dbc06d4deac8f0050a4081f629103c0181db421bdb70 -3e697eb1541c1e95594ae749e99133d3c9f15ba600367f387f7a690c64199c2547da67d6d121f7f169a5399bd0ba76355df0b001b781dbba3a28502f280005ea -512078021a386e63213739eaa6fc59a0b56cdca687b80c47c8e78262f642f94954120eca5989f899146f8b027c3cc69746e072570a546f204c83870db80ddc36 -10230495840250a0670a044f404de4b69ea95469c6c675523966a63356e0ee3489de0a711b4ba7b05da5027420b3e061036e03b775a0fff7ae0aee87b755586e -f9c79e55e80cb21a1c051ccf6fa38b103c0181dbe822e72d731096ae484a1733848b3ef19899b470a9176b5a271d8eb7c8a50134be592ebf60ea8aae49e01688 -8ca1e2b4245df0b06935b7f160affb5120f2a3778d96e0b696f4f1beb9299f01d06b27ea2cab177569bbffd56a229ff0a19ff6417c466eb52e29b9d99ea35bb4 -d0e00908dc5654ead45e5e0fcde25a319ac5af2de35b073876f18bf9fb12f8dfd2cb705f82c82cb34db2923277ad8a661968c585d6bb4be982874d4bb94d109b -9bdb946f8dc6e0b62e0d845ed4a54e16a9b3acb66bd50bffabcdd3cd6dbc2c9d9caa62294a5daa2a2b78026a22b75579d727a51106c146ba236210aa4bac63f0 -b06929b789c89937dea6c4d8747b701bb18ff5ddcc7db47cefdcab93a5ea2cab178ab5ddff6a3509e33623cc55eb98c80ddc661016dc56556f93c26dae070357 -555cebf201b7110f4e00b7b5ae6f73878dd0a61caf995af2b32593b75c5ffd384e236718cd6cba794945cfcdd10425733396e5d8a2e7f58da858dc4039d9cbec -0be419c5f892656a134d29553153b2e2df8a8b7a9eeedc8a8e9daab8add08aaa6e6c74db98a74910d7d9a90231832720c4db8a762ad8774781e0613350f136ac -93b6b4c7bb236d3aeb3868cc8871fa4571c5cb1f6ed222faa6144767445bfeecbacc52e2b3a3a6461b2513998c8d4e7ab993d80375b4e224a76319e58a482b67 -ab6748b9c2bcb0bd75f7aae2b6143713841205e9d132ca15d94f77bc8d9e5bf004d4446e23f651984181920a040f9b01e136b11f4e0fcb45ff641c892639bc9a -a900657954c60522b41911a4505aaf5c368871c04dc0574a129b140eb3a23017e0a4572b0a7e513271b397fcad6269e4c2e8c781d2ff289e596ce86ce466acd8 -d508ec4c746bbeee485234b7e009a889dc8675d212fd19490b28103c6c0684db38ae21de56a04b35c3943e694a4b6a660aa78482c06d940061d3b8cdbb542a05 -a8b2a05da3b84d59b5340e3e705b4dbf49e0b69a841ef862c06dd8dfd6d5415014dd1c3ac86c4747340af0190bd58b2b0397c4dc0ac5db6c79168dc009fb60ad -c2e26d94e5545b8c4de736f3063d7aff0b1a815e1a93a0d31a36e3360afc9564c142b9054f4088b705f51a24ea8402c1c366a0e26dc6905bf47b8775d2668f02 -cad4e94522bd8a94d8124b15cc220109cb87b20a711ba5d9892af1ac02aa6c892da9bbd9289bcf627671250c582755dc2bb4bf8d226fe5dc462994c28274c758 -6ec1135013b9ad9082b51aa7f767e2e6cc5a65ef5961c1c306dc066eeb59afac3263faad09f4409ace1985d27aab678398303823e65692db289446f4bf0cc351 -282de04e85006eab7f7f9bad5f7941ca66e04818f0953149f004d4146ee33ba08d2fef387719644fc7b5b056818304e473a34a3985c40d512078d8749bdb940d -6dd8dfd690ee1ae6860ddde8a8c12ce5a2299426c278369fdd7442f1cdeb9230a0e446e436636c8c22883ba8662bbd688bd7cf6dde585dd12a10edbd3446898d -396cdcf917fdd6661f3c013588db8c0dc6e60c62435acddc6446e7b6ecb8aab21e217d4314081e362de536e3bf8b8c5bdc644b9c73d590ee5a951b02aa745c50 -784bb174d35880b1a3467a6eba31bd44776ef2b702b038ad1aabecf54dc950ce478160052edd38ebee00629f998423c983dc9484fa8e3405bf94ace4fd70fade -389e567e57d5518df9700652de252de32a5499a737376e103c010d12b7c588369a9e43951ef399cc50f943a8e223a8327b662b3dc276cbd1f9ec9850295ddc69 -328328e72ccea79c66d5d32e8dcc8b29103c6c5aca6dc4bb102866d12f1df6b715eb6eb0860250000a640a044f4003c66d43c901ef116571a0cae26dd25150fc -62cc5ed9f2aa313297245262715a56e8ab8d542078d880dbc06d8decd1700a0a4081d628103c01358bdb94751c263f5f27654f06097f3888e02d19bcf48bb973 -e259b1c3f3155053920b5f39e1c961353dabd674a4c1723478d880dbc06d833554505b280005aa562078026a16b7e9b254b9bfcdcb6dca92a68ddb222c4b4d45 -644ee136ac8e56ddc57b915ff0b001b781db7ad121912714800283a340f004046e6310c6d742a30d6ab99b4e1ddc26615b8c70fa3a693eabc1e989adaa69f0b0 -01b781db5ad5d3e12c1480028d53207802ea3ab7c9cf0131c6dbd21b0af2f7250c4534665f2715f7206c393c9cac904a6ba3f9fb12e2ac1ad761e050a440f0b0 -01b781db3084a0001480026514089e801ac46d3d797e5b195191b6eb0a040f1b701bb8adeb8303f5830250a0b70a044f404de1b6deca83dca1804981e061036e -03b761483914703fe9ad42e9f427a5559839b282023d5520780202b7f5b45d9079a315081e36ade6361ed8a63ca48ddbe0bc844677e2a63a57e611b245eb5467 -59457da3d8b7dd7f4a1de936f2b3f6f5e7ee8b47daca19521ec3eb75c076aa8137a16ee0ae82b00f9e80c06d018d82241d512078d8b494db04b1d1b9cd067988 -b775640cf4ac1a75b2489d65f542b0b6fb5fad265ee831a25bf48b141f4210ec4cc9e472b9de2a70e3e009a8f5dc16fe5cb7e0e645c2ae28103c6c5aca6d22c6 -066eeb4a17f6d7a3fc4981fe324c1675b2489d6585a9e14ed576ffabd5c40b3de0b681e0b69933679e7cf2c9a7c4afd1d1d1534f3df5b4d34e3b3d7e9d71c619 -1b6fbc71b5dd0eb9b54501709b7bb594e31dd649dbd29fddeb35e25be5784d7edd78d1f8956def9a92839b45bca4a2e7e6688592b919cb726cd1f3fa6694825d -3435907e58687425a0cb899343294785ba4f1455b2e2ce184f2695bf524e350da842dadfb2a4c67f75c8aba27229c68099b2846a0cc8e936b6d81b25b7783479 -aac0bf0e9e800682db9e7df6d9152b563cf7dc73cf3ffffcfdf7dffffbdfff7ec9922537dc30ff95575e79f5d557b7dd76dbe01e8684ad562078d80c42bc4de0 -1ab8ada59ddc1d69d359c7483f3633852d143307f4c82c681396e89b42a26572931dd63fcb39137dd31570c0a5973b893d50472b76454fab5f345e1117e56c89 -6995429917b6b7896549dc16a3646e6154872dca1551988dd51c06b624e036628f75997162bbe9a69b1e78e081f3678dbff0f41f9c77c407ee9cbbe1dc4b465f -7ffd75705b0512b7330b709b23de066e6b67a74ebca62c8fcab84084362375154aeb55d5063161dc43cccd268591474da8a106c9887847a158af621258a89466 -e4b6a2242767a26468cb9f582ebd6ab2a54c4bb6cf3ad579f9cccd6dee085c58458227a056c6dbf85e69e3cb28df0b2fbc70e38d0b6eb866e2bc33bffab7570f -f9e373df7fe3f9bd5e59f2ee0bce3de84f7ffad376db6d97a4721c484a6f16e901bc210fdc359e5e4f2f1d964514081e369d8fb7c93136c4db8af4a946d852a0 -4d26863024125505b75128ada4c8948e450986c990e75851b5b11ab84d69086f94ced170c113505bb9cda8059b608cd75f7ae9a539737efbcab367bef9ead1af -3fbac7cb8bc7bd78edfb5fbdf33d732e38e6cf7ffef3d7bffef5eab88d9da420686dfe70eed82ccab8834dad0a040f9b6e739b026ae0b65a3b65458515453747 -b162c9cfb6fad90b6ed30b0de31e5b3e8e409a230c49cc8d8949213937f806740422b7519653e9dc26c39f030403aa634ba2a092f8d3769d485a94781bb7d1df -61b50b9e800682dbd83eb62b2e9fbbe2ee1fbf76ff8f9ebff6c32fdeb6d58bb77e6ce56dab9c7bd2c67ff9cb5fbcdc9645d03892297fc711b25176b869742429 -e3360dd61cf6b9734de3b459bc4d1ca615e7a83a11d64f902aa740f0b0e93cb7e9c16c654595e9383212b27b1a5db0360528e8268308d13122913830cb5d5040 -c230a493ddb0b19a03ef8ad6a2bc93de06a2709b7105d39d30609d5471b5d0fe364235d5e77dc8202592175dd9a4709bd7b74206c113d04070db6bafbd36fbc4 -1ffff9d9435ebdffab7f5cbaef9bcb777bfdfef55efdfde7cf9cfc96bffded6fdff8c63712ad8deba4125ac5013489ccb87d4c5402d612dacae0cd6f9fd872c3 -c407fda0fa34472ca4161a194ee3e061d36d6e53100df1b6ea7a5cdd39d16f4d281433a3d04c007e71756c09c3b887985b496ea3b02cd1ff60dda27f4a69ed4d -b9e24d18c06d463aacaaf71b014ba05b25dca61751940229950d9e805acc6d4a48201ef0d13a297ba29bf250b73ffef18fe74c1bf7e64b27bcf2d0e66f3eb3c3 -ffbc3ef2dc95ef7afde16dce387895bffffdef1e6e8b408dc7d2e297b47d2d76408e90492d251279ed53ae9b3f1c47f3040bca9be3f44c289d02363e0582870d -b82dfaad47bccdd7c19af0bd0ddde8a8c12ce58a50084f84f16c0ab8e984e29bd7256140c98dc86d46aca408e2e051e5ab76719b97f97a310488dc16fb668ecc -19bd928d1d45c869dd213a6fdd8327a016739b2e8a6d7fdb1b6fbc71ceafbff6da23dff9e393df7bfd91cdfff8c8e6afdcf6b99557aef29bc3bf48e0365e4e0a -627ab8cb1a0053d63d537f557bf6771cc6138bb03c86a7705bc83d0ede6e33e806c1c3a6a5dca6af7e1a6369f2e3794512ac937666b408a8d26145e12dc5d24d -6301c60e49f5dc4c3ff8e6bd55144b1dfb841a72358d55f6fa261bf082f42b8a935e036ff7135a084bfd0aff4a574dc12f25a1bc1f4edf1ba767e875b58c8188 -ab11994cb1677f3a4a978d1d6ce73523563078021a086e7bf3cd37cf3ef580d79ffcd4caabfe9f17af7bf70b57aef6c2bc556e9af14f77dcba30c76d119c657c -942c552e1d1d8e77b5a5a1b008e0725bd864c6e20cc65fc975a77d6a383c9c609b7d9d54df3747ec1b30b32a103c6c5aca6df43349bd96d18f35e26d185b5000 -0a408150058227a081e0b6bffef5afec5120e79fbef10b770cbd7ceb3b5fbee5df179efade9bafbf98411b7b6db1c51699ecf28a648270d9fd01c905c526171b -33a4cf2dadeab1344e78f23aac7af783725fc290c496a1fd05e9620582870db80ddc86310405a0001428a340f004d4566e33aef8d8d649ffe77ffe87f1d9cb2f -bf7ce1b9475f34f3cbb3277d68c9a30fb12b6cdfdb1d77dc514677a46db502c1c306dc066e6b75cf87f350000af45d81e009a895dc56546e1e57d35fb7dc72cb -f6db6f5f3437d8774681e061036e03b7756614a02250000af44581e0096820b8ed3aed356fde3c76c0fc97b7c6c9a47de9ae4d293478d880dbc06d4de9c4f003 -0a4081762a103c010d04b7b5b34de175cf15081e36e036705bcf7b270a800250a0d30a044f4083c56dca73dddc5de2d3d2abd39d67702b173c6cc06de0b6c11d -36a8391480025528103c0181db54f939adb1abecbfc7c52ff127ff80576714081e36e036705b674641a18a781fa85b2837184381415620780202b7e5ba0d23b3 -a38e3a8aa3dbedb7dffe40fc621ff815fed520f7b38ed53d78d8b49adbf8bdd88e27b4e9376bebc6e0b68e8d057a75ca3cd09f5e0a2ca140e715089e80068bdb -dcfd8093d985175eb870e1c2b973e79e79e69933e217fbc0fe6417d95740b72e8da5e061d3526e13c4e6e5363c77b745fd9c727e7c85d501b7552826b21a6405 -8227a0ee739bed496ffac3de78508df1d9ac59b3189f2d5ebcf8e1f8c53eb03fd945f6955845e5bdcdf4985dad1f8a07f3124fafc2c9f1750de5e061d3526e93 -0fb072c7dbc06d75f54143398538ac9071259502b7552263d14cea6fe8a21ec2bea802c113d040709b514de3437a1996f1481b6335f661ebf8c53eb03f79d44d -5e278da04d3e162b3d0f4b2dcec66db64606b715edfea1f6c1c306dcc624c73957a1fdce95aed0f4ac18d30f1ee51e104f14359ad9eae0a5bae0422d3fe39e23 -4af50d798e2d7a850e1ea59c284a91ce5ba8a878a1bed18bce893cab552078021a2c6e93594de136b1a74d409b40340e731cddf85eb7b8f172879966cd9985e0 -d4f3aab66487909a4e8bcfa750d357db51909bac40f0b0e93cb7c9516a63ec0ddcd68ba1546862b619ebe46464299b19bb2e574d31f3de97e0e6b6b04205622a -9a137d2b2988b15059255b9529ee117d03baf562b8f53dcfe00908dc96b41dbf7b94dd85c036b4b1b5511666931b95fdc92eb2af9801338bbe3247c518cca507 -cbeb6136e33aa97438e9fce1382de26d758da7e061d3796e9359cdb8190edc567927ad04dab857320d10a14d4f48a425ba0e85f846cfd688416e923356ca582f -a26ff4b414d9e985e6499a2e392c1bad40f0043428dca6ec728b87df10fb2f7ba21b7fa85b096e4b2364fcccf85c49790e33ef6fe3e7d6a7b4076eab71a0050f -9b6e739b1e60d3d10ddc566d3fad10da64587144bfbc0b9a95739b2d430a7be9692960d4346e0baba90961abed7dc8ad3f0a044f4083c26de9008e584dffccb9 -8d3ffb23709d943399315446ba2f41a237c4dbea1a44c1c306dc066eabbc9312d18d68468124efce2a3a1bd1d520166adc19e65d9d243aec58ae35962bd78eb8 -b249c7626f4d35daa38b0dcb462b103c0181db72ed1a7e5f42025b117e49a1b33873b1126a59274def6748bf96564e1bdde9daef5cf0b001b781db7ad1fdbd4c -e63590fe5d9a6dd827ba5a2191104b34c22585786c545a92db286e57a812b1a6796aa4f8089b7628103c010d16b7e50740167be3d7ab790e88e9d1203c9816dd -9790ada20ecf97508f5f16372d24f6a34bdbd1fb5aeb65f0b001b781db7ad4eb1d645614dab8874494311a174aeb1584b89dab8c19d161227b11b19258a8ae0f -b1a6128b7b3586419b14089e800682db6c8f70535a18cfdd6d5397afc2d7e061d36d6e5376b3e1be842afa5a813c8c7c16066d3674136b73f97fca46213ac551 -852d8c09bd99c86e284510a1876266f38d580522cc11cd8299cf0e7305ba104c5ba140f004d47d6e93dbcf7bae3cceb96a4577afcac9e061d3526e33fe03c6f8 -980f3c07a4aa3e56493e446853764a29b4240341a13d5501c6c65a07e42327a1e7698b6ce90e1821d551a8fe95db436f8902efbc35ada42321934629103c0181 -dbd476142722f03b4c71ae7ca33a7ab5ce040f9b96729bf71404ba016b083c77b7dade88dcca2b600b5695cf19394081ca15089e80068bdb0ae9ce014e39d8aa -500e306eb802c1c306dc066e6b78df1e4cf7c06d83d9ee2dad75f0043458dce65d27959b1fdcd6d2c140773b78d880dbc06df46e06cbda1400b7d526350a2aaf -40f004046ec33a69f9eed7d61c82870db80ddcd6d64edf51bf8d7bfb3a5a5754ab230a044f40e0b65c0fc07d091d1910b46a040f1b701bb88dd6c5600505a000 -14302b103c010d16b7b9bb4fc5cf01d18f3dc041080d1bbfc1c306dc066e6b585f863b50000ab44c81e009a8fbdc667b781b3f9f547e053c77971f86903d3057 -ce0edcd6f841143c6cc06de0b6c6f76e380805a040a315089e800682db8c4da7731b332b74ce55946d0467ec180471d2815414b8add14326722e78d880dbc06d -8defdd8983de27e5b6a522969ff1c2c779b5babe70be4b0a044f4083c56d32ab29dc56fc5cf914db4697b263a93270d3cfb9329d7cd5a5ced7deba040f9b5673 -1b8f40131fd526c2d58a3db8ad45ddbef37759d65341db7383f1c8dc168d8546b91a3c0181db9276e44fd97de0810766cc98f1f0c30f6fbdf5d67203b33fd945 -f615336066e95769482d0337e95c79fda479ec6f6bd4a019bc789b20360ab7b9f10edc56a62f13cf3f2853849cb61eaca9cadb807ceaa9a0f1bc2ce16d3d3e04 -8883248d5500dc666d1a1e575376b9f12becbfec896efca16e21dc9671580a6e3299f1cffa95c676a2c1732c78d8b43adec622675e6ef31a80dbf2605460f0d4 -0c6df16f9de1e0d1021e37deb49e0ab682dbeaef5d8def1dcd7530780242bc2d8bb73174bbfdf6dbcf3cf3ccc58b17cf9d3b97fdc9bfe39bded845f6153310d7 -e5f54f36cf454ba5e0b6e68e118367c1c306dc066e93022d053abd32add24f14e565108ff8349ad9bca4400f2543f7599cc66f8d7bef8875cc73b3074c0bf966 -945a57cfa69b6dd9d47db6a977b19572d469ea79810e09d33e2a103c0181db72ad56e4be8408db86e7a7c993885bb6621a7d1da19c7ea58ffd0445e714081e36 -dde6366fb08d45ecc06d0173a42d16a2138091096c66ecba0362bcf72578b9cd186772172a1053778c2794bda2d4cbed64d16f0bc91bc0bb6ea4b36922f3a252 -28b18784fd5b02b342bf14089e80068bdbf203a6dc7340d4cd6a299f453bdca257769ba97ea55fdd04e5e615081e3683c06db63b12f80d0ae0b6183e0a8c28b7 -b13c3113a9c238cd174a4bf19e922111536c7524428903ce02bef2d6ab28ce869196d70d23013b080fe846e9d50db1099e800682db6c8f70531aafe2e7ee36a4 -6bc00dbb02c1c3a6f3dc2687dc8ce137705b85d0264fc30108e208b6512678f72f84175fe860d17c6e137529536b9be61444a3b3b84376a05b5b26bde009a8fb -dc2637a1f75c799c73d5961e5f899fc1c3a6f3dca63cf5434737701b3dde46273c2f2e88e545dbea271d0e8823c8eb522bb84dd7ad241fd3b029db75470c493a -b8ad5015e89d93d80d60d60b05822720709bda1cfc416eec2abfc394bdc49fe28e845e3421f2ac5f81e061036e03b7a553aca7db1685360a27490115753f3eb8 -4d698f427a56186f53c0ae3cb715fa79a4f7ba42d9c2b85a058227a0c1e2b642a27380131857282d8c5ba140f0b001b781db2478b27676faf4d9aefd6d443652 -60a5f9eba4de56902b4e2142394866ec2514ce2ec47c88b4b562eae14e064f4083c56dde7552b9c9c16d2d1a0061ae060f9b6e739bf28037ec6ff3f62e239f85 -415b1ac63307d2d814ee4507232d2909bd99b80d7492287ac54d48fa2ab01b928a7e4ba1252560a6f7810ab94d6e9d92bed17b9db757c3a0d70a044f40e036b5 -69b04edaebceda9cfc83874d4bb9cd78838eedc02bdc4f5aa6a312a74f65d3920c6d0abb14dade1460ecaeac9ea18d636c1126e5ba5c3b1ba519c5d181b25adf -0442394aa7942885635dcf9633b6942332e70de095e9b4485bb302c11310b82dd752b82fa1e68edbdfe282874d4bb98d782629c58c35dcc8482ef6d3dfa644e9 -5d528012ca6a4b7d8bc602db522ff8595e81e00968b0b8cd2d74cf9f0382f349cbf7f44a73081e36e036705ba53d1199e514e80cb7792be23540cfe8b002c113 -50f7b9cdf6f0367e3ea9fce22ba40b172e9c356bd651471dc50eb66267c9b317fbc0fe6417d957d96d0a0a845198cc614349dee1fedba7aa050f1b701bb8ad4f -7d76208aed0ccd782be2351888f61ed44a064f4003c16dc65ea1731b332b70ce15b8adfd832d78d880dbc06dedeffe0dad81775b5b43fdcebb45a905c5a61595 -8593610a044f4083c56d32ab29dcc6036905ce9537725b74717878cb24c6979c5e2a9f3f1f9d581a9d3e9f4601e3bfa50bc9e1f4c9d7fc5bbc7aa540f0b001b7 -81db7ad529912f14800283a140f004046e4b3a087fcaee030f3c3063c60cb636baf5d65bcb3d87fdc92eb2af9801338bbeb2715b7c987cf48a8e2565e496fc9f -2109b7e17097e5262e69450c4657aeb396c1c306dc066eabb3a3a22c280005baa740f0043428dca6ec72633d80c7dbd813ddf843dd2ae3b62c46169f343f9f45 -e0d2a89980332d0297719bfc55e47412b3eb5e976d428d82870db80ddcd6840e0c1fa0001468af02c113d0a0701b6fda5ad649c5daa685db22324b514e2639b1 -648ad5d1ba0662f0b001b781dbeaeaa4d672f4c79ef5d4a59a77d0e341653d6d4d64de0405822720705baef90adc9710ad71668415c1180b8dc98ba7c9f79959 -026c924d8670497ae68cb4aeda849ed5691f82874dabb98dc79e1d0f69a33c9e17dcd6849151274bd55996d0b664a1b6e70f030afbd27be54738e80fa61e191a -f1bea39f1dc94cae85ed7a5f6aaaf869f32d78021a2c6e939bb0ec7340585ec6e5ce6cd24b973823128b5ed11d0b31e9a517b22b09af311bf6bd9e6dbfba5ed7 -cb0d1e362de536416c5e6e53a84eb707b735617094c49a2654c1ed43c90a2ac9dd7f365f8db67b48e1365147ce3ac63f95af6c49fa2597a0342356ca178327a0 -81e036db23dc9476ade0b9bb780c5bbfc64a50b9c1c3a6a5dc26680cdc16d45fac8988a75a555b28cbad24d654ee4fe51996ac20b8adf2162993e140719b2e94 -8e9bc11350f7b94d96cf7bae7cd973aec06d658675ed6983874db7b9cd1b6c630688b789de6a39543e3a9552d982e6785e976d454f19134633dbb8f1424f40a1 -7a597a260228d957b23db1383d89e387c1587a51416ccba6de1654dad7db5861bf70bc1b45234e72c89655aedb695d53c98a67222e9a5043eac4a5ff75e2e636 -a5745b502d7638178a13098dd7e5354af9b3b1b842068eb81ab1a1832720709baa30ce9527f6b90e98050f1b701bb88df77ff75ca6939391a56c6646ee917831 -99a38b624aea7994dcc855c60c1d1428e38bfed95d841b2e8b7e5bd45e1153af38a5690ab569d8cfa68e569ce434f8502fea667256cae780dc9817b6b749ccec -9a17022be1363d13226cb9d1907d6b834587db3a29064f4083c56d85c60c07b8ec60ab428961dc06058287cde0709b6d4515dce685361d8f8813bc91ab0aa5f5 -0e3e1bdf78e1cc8b74720ec1d8eac5a9587c953b6d3c4ac9cd98215d73c532c037779319f1cbdbcad1203585dc24e6c8384fb13472a131438a1b0136e5b9cdcd -5e36f0725ff76299d740962278021a2c6ef3ae93ca9a82db02065bbb92040f1b701bb8cd1b305070210c89dccce10e2fb90763d1b444ffc16d614c5921b77997 -4a0784db62ca34afa8ca6a13f18e27f166e83500b71586040ab7619db4b0acad4d006e733c0d847de5b87d01dc164fcfd4aeef85246e20bf95ace9b11faa4f69 -c8ca51a89c5533b94dd78de8a751253774f2249486b079e5ed06b6b623c6db28cba97256b6cf31a0683d32bd42ef60652ccbc7db64d2e2b919f394bfd23f2b55 -f06299d74082e691e00908f1b65cbb94bd2fa14c3f45dada15081e3603126f03b779bb2405dd8860e486240a2e78bd751bb8a982c8437d8fb739eae8c5a66ab9 -ad6473c8c929dc16b0e3cdcd6d14ff0bed6fa36428630d632063121b1b519849b7a1a4a2782563a2b7a6bcd0e00968b0b8cdad6605cf01f136176e38f54a54a3 -41f0b019046e73401bee27cd3396abcb7a51c00613caf56ab98d58a81b25c5b7b63aeaa514ad05111603fcb4b59917b229550890d7fdb3d71c6eb3ed7babfc67 -db8153446eabd68c8e659472c16d9e0ec3a61fdb4b49c95748172e5c386bd6aca38e3a6af1e2c5ec2c79f6621fd89fec22fb2abb4d413f4894c264149bca4700 -32b428006e739f9ae0f896293a3262fed7f00076375bd48d022e0214bcf061243976d18d20c66fe9851ae14cc9b328b7c93e3bc88c9552f4dba2f6ba38446ef3 -5681d2f4f491523fb74503dc794f03ddf9304b07b7c5bea91bd76c57d875d90163b694dc8a729bb15c7111dce6e736cb2f9761734a8173aec2082c2c5558c747 -2a9f0283c66dc67fc0d8e00cf1365ff7717d2f4fff628ea75c341295024f4a3e367473408c9e83cdd86ba9808eecbf5e17636e6e787283542129bc4cc63da1c0 -9fb1298d384b2cd4d199c4563361a35f49a942dd94a6e0979250de0fa7ef8de369e5779911414fcb99467e1bd37acd740323b4c940e628d4989bb3d53cb56019 -064f40dd5f2765d38ff4ab67fecc0c7820edf6db6f3ff3cc3359806deedcb9ec4f9e90c31cbbc8be6206c9759dc0f895f8bfa3c9d156d199a5d10b4757d1476d -8d96c1c3a6edeba4eedb1128df46bfe988b7d5d857bb51941b891a52470ab735c455b8d16a05822720705bd2ee8cc68e3beeb8071e7860c68c196c6d74ebadb7 -963b04fb935d645f310366a6a25814c7189e2fb82dfa234e9d1d2d2f015c76187dabbb5c179c0f1e36e036705b170640ed75683eb7793df41ad42e2a0a6cab02 -c113d0a0709bb242c4da99c7e1d89341f8c34142b84d213029deb6947724db95b676b3aef91d3c6cc06de0b6ae0d865aead37ce8f17ae835a8454814d2050582 -27a041e136dec8b63553ce6d15ae9382db5a31aa82870db80ddcd68a1ede2827297bc2fae830c53d8a4d1fab80a2dba540f004046ecb3574a9fb12acd1b564b9 -9407e086b04eda98b1153c6cc06de0b6c6f462380205a0402b15089e80068bdbe4b695636ffc7ae1e78010d74959d68cdce2d796c3c3d1bd0badec631d743a78 -d880dbc06d1d1c0fa812148002352a103c010d04b7d19fdfc69ed376e18517b2e7b4b11b48d9dda3ec4604f6621fd89fec22fb8a1988fb4c6b6c5f14d5130582 -870db80ddcd6931e894ca100141818058227a0ee739bdc07bce793e29cab811932514583870db80ddcd6b191a23f6bad6315a457a72f771ef4a5508726c6c7b9 -d13584a550403cf84dd724780202b7a962e25cf9c11972c1c3a6d5dcc6c3cfde87b48928b5d112dcd6bd61d23474202a5cb9db156648cf8a6e4994a5bc997e5e -42f93cebcf413ef481729a702f3cb43def3778021a2c6e2bd4241ce0b283ad0a2586711b14081e362de536416c5e6e930d8cc6e0b63674f0623e36101d281568 -b2db4df6cdab2db8cd2b11d100dc4614ca6ce65d27959381db4a69dd86c483c66d2272e6e636fd5bfd0ab8ad771dbc5f518196424693dd6eb26fde0e0c6ef34a -443400b711850ae736ac939692b85589c16dc63550705b1f7bb111da8c8f0d733c4b4cf9cab677cd6866abbb03416cc5b1eb7a6ebab1b1444a15cad8787d73f7 -01af7414df7811b2a5a350af6ef41289dd9b731be57c52d9c6417bba99d198981bb116ee7552b1f94c462be3455e9cf295f85371c668a63b1c3c010dd63aa937 -de86fb128883a11b66c1c3a6a5eba4c4781b33c33a695f7ab83bd2a6939391a56c660aa9286636b6133a7843477a0e1487cb5441e61e226651aa43aca9929503 -04297dc95d284549190129d5f47aa5df9a60c32c8d5ab273c0c5577a5ae3ad0f4633257f364c6c6fd3bf13b26bb6f125439bcc67461a932f1ab94dc9cdc6762c -9fe00968b0b8cddd5339b455fc1c10fdf879ef7081415d0a040f9bce731b4737c71d0cd13f3d71ae7ca51d95b23c2acfdf44e231c24da1b4c45a16c51d1b5bd8 -f2297a5d76dbeb1bddb89074f4721d96f48a13f18ed8a0444ad373a3b0578a4739c2b3c5ea6a58b195614bc7b8e8e76e6884bd4d95cd5d2f94367802ea3eb789 -e947ffa0b441e1e7ee4a392607c9ebadeae036201df1f7a36766c1c3a6f3dc86785bcf3a9d39630ab4c9041630cd7bd1840e19c63a789397e10f477378cb6569 -2936368e548aae302b6f8b1899dbe1671fb9cdbbb84961af3e729b20331b9f39d04d6e47705b35bf9c6c06b2fcca18ae079e73151d5f35644637705b35cdd893 -5cc06dd8dfd6938e1594695174f3a20c9fc5e9f1a14244a297ee4d2efba37f36e291a30a44cc72a34f00807aab49a4313a0e96e1dd42de2a2e11e36dc4e5d498 -7ba41e69eaee8a81fc67d0902a9cc8016d3c2f6e20bf35d10c61395bb6c113d040c4dba4119eb19ac27365cf95177c16335cfc8a0fb4b25d8f8f2acdec945485 -fb1b128428103c6cba1d6f93836d1cecf42bd14f18d649433a9d2b0d05dd2828e365023accd1abe84504af81974403300bdcc664a737a26c49e1368a8dad74fa -72aad69f0bec6fa3d7dd4163f62aa89486781b5d70f74fa199d5746e3beeb8e31e78e00176b0d5c30f3fbcf5d65bcb99b23fd945f615336066d1576a208d1d41 -ca226efcbff12b77ccbc763d9783e9db6a6a8f5c5c0a80db106f6bda08a1df9a5088bd14e34269891279b18c1837229a09af64fba2690340d05b4d394f8a6f5e -b2a4574ab72ce4ada20685c928362c5be20228d18cd8210b99c9bc5588bd14e342698327a04189b7299bdb588b726e637798f29b4c59bcad026ecbc266bcc0e1 -f982de721ec46c6708c5a5a90af53818872a103c6cba1d6fc3fda4a11daa9a743674a3ccca221a67a30723eec4bf87e615559bbd5e550a22545b059d78e888e3 -682a6f4528b5a0fbe6e536d13a45dbd49890de47290ba0746e2346d78866f45a502c75d8b25d61d7e50c299426c278ba27c113d0a0705b3a367abc4eaaef66cb -45ddf20d27735bbca68a57cd0a040f9b96729bf2af17fea7edc02b618c73ae6aee96362452d04afca9077594afd89fc62ae8660e64f17e65f4c75b17ddb7425e -c9d063f4d0985b556ac899db3a89db865e596f9bea0551dcb3b92da02dc1f9382fa3b16c20a7caf38dfa28385b6e2c9592614f479f802a99c028171d34165741 -dd066724bce00908dc96eb1581f72544cba37c7d547c48b34de04cbbcebe8f82737c51d5f46d4f7b2b328f15081e362de536ef99a47483e8b709fbdb308ea000 -148002a10a044f4083c56db2bccafe36f65589e78048e13279a9945d362e86a6e611aff1fb179454a1fd00e90a29103c6cc06de0b6423d0dc650000a40014581 -e0096820b8cdb83c64e4b6ea9fbb8baeda600582870db80ddcd6e07e0dd7a00014688102c11350f7b94d6e3d9c73d582be5ca38bc1c306dc066eabb19fa22828 -00053aa840f004046e537b03ce95efe0f8b0542978d880dbc06d83334c50532800057aa140f0043458dc56487a0e7002e30aa585712b14081e36e036705b2b7a -389c840250a0b10a044f4083c56dde75d2c636301ceb8502c1c306dc066eeb4587449e50000a0c8e02c11310b86d703a096aaa2a103c6cc06de0360c278702ca -a3e6a055cd0a381eb657b327bd2b4e3ce6ad7745f43ae7e00908dcd6eba641fecd552078d8b49adbdc8fdb158f70c373779bdb71dbe0d920a043cded4097946e -5973152a2fcef1fcdecacba267283fa2587f5cb1782a6ff0043458dc46d7bd5796fa810abd2a09f9fa15081e362de536416c8e6312f483e48dc688b7f9bbd760 -5b0c0e3ad4d6ce905497ba8ddc16fd78c6072a044f40dde736dbc3dbf4e7b7151b7ef9a348a3730f284ce638f6aa58f1b0ae4081e061d3526e9363698ea31174 -50d3af80db2ae87fb564e13ea8be772e00322ad7169282dbf81efd81e036e3f8a980dbc429091462e34ed02dfd839ee5c58fc9c22b5001709b91dec06d81fda9 -79c98cd0663c48d471ba28f10c4dfa49a04c272f82143a8ed37110a7bed3ce7145fecab1452fd8379650ef23dedc845c452d1dfdd19b15b1d1295ddeb611cd7b -5d9c76ea28c57bcea99cd69161b587a2bad749a37ff422dee6ee3a363eab92dbd879558ca0a458da687c80157b2560653cfc2ab6f758f2534cf9cb70f67c7c50 -16cea4a7fc78986cc06de0b6d0bed38274ee489b4e4e4696b2992908a29839a0870be7e6b642bec99e14aa82dc843662a37862ab8b0d10f572dd57c4b75ed825 -5a522a25c32231db00bad2a98b724541b142e51a398f52281b4db6b789c5b36bc661086ef3fc80f690dbb225d8189d04b7095c6358157d231d1b2faf93c64496 -809dc33233b144d738d921f4567c2605b7d9564be5901befe68a65f44f469c2b5fbccbd59682b23c2acfdf44e2315257a1b45e05dc1814003d144cb14961e451 -d33c1dc56b94eb74ccaa93db2a97d7dba0dc80c246c6ac1c113563b66eaaa3bbe12e97586b9b19b88dc46d1962c59fe27f4c44ff65abc5810f7593573c151a53 -d64fcb58c6cc478232090e4b76a9c1490e6e73ef7213c4066e6bd7a0a0409b4c600ec2a0c007b8ada4022232e78e5352dac208d6142e2c4ab74547041d98388d -c96f475945a98eee06b8ad68135769dfc3785bb640192f94eaf71cb8afe83c9744dde2eae776c239e90df1b6d0fe026e73709bfc15b82db48bf52d5d51747338 -eaa58a92d4a214ad17275f712308d11337a338c29074dfe2d080210867abacb85e92a11bcb6d4a6ccc46451cd7dc31b332df1ab94dc144f167ef462fe26da478 -9b6e64e3396a53c95cc579cb466951cc2c41bc08b1689662d575385a8255392e7512fbdba8cd65b403b751b84d8736962afa15c63a69a9ded7f3c41474b32191 -17e3dcfc44a416632914dcb1d1493ddc466c396f4588de5290ce888385e4ed75bc8dc26d46982b1a5173531d3ddea6495a607f9bb78780dbfac76dd9e26bbcb9 -ccca6d63c96a27bb85607898dd8b6027bccc32ca3bdd1bc7cbd16e3fc0fda4ded1e13100b781dbcaf6a166a7a7df9a50882114e34269bd82d97027182c8a26f4 -c6dbf42a8429503495c3b156709b403747b04dd7b65fdc867552ef50eda1410657daa71e965a3e6b7e8f2a5ebd5400dce6e6363e628c36d14f30e26dbdec9c55 -e56d43373acd304bd9190a6d88309ead16ee5814c53796739899d1371b12518aa0832685ae88eba4450574b720a54d8d8217eda51c86fac56dfa222cf73f3808 -57b4fac21ef1b660e99a98906f648b5fa0b69e37d0a0719bf1df303a96093307d581db7ade3b7b5680bc362a988c72d14d634a0e14634715f5dc8cd0a3f39603 -416c79cad7059d70651c90a7a4d2c1c828a9a31645ed75f5e84d50adbc85baaa377ec6e94abc6d5ca598395850c9ca68a9175aa852858c39b4b177f004d4fde7 -ee161214c603a540f0b069fb790994e551b70db86da0460a2a0b05a040e50a044f40e0b6cadb0219b64681e061036e03b7b5a697c3512800051aa940f004046e -b3b667e073dd1ad93fe0945181e061036e03b7614c4101280005ca28103c0181dbaae7b60b2fbcb04c5b226d6d0a040f1b701bb8adb65e8a82a00014e8a402c1 -1310b8ad4a6e1b3de5945f1c70c07efbedb7fbeebb1f73cc319dec6a5daa54f0b001b781dbba34105017280005ea5720780202b755d358bf9935ebe8a9471d77 -dc7193264d3af0c0037ff6b39fedb2cb2ec71e7b6c35b9373f97dce90ecd7737f13078d880dbc06dade9e570140a4081462a103c0181db72ed19f0b0b733ce38 -fdc4e9279c71c619279f7cf2f1c71f7fc411471c7ae8a1fbefbfffde7befcda26ed3a74f8f0a50b0268c72f87956f14b7b062fa157120b954a491e464249a83f -7398e051df4d82870db80ddcd6f7de0b07a0001468b502c11310b84de536633f6004a35f3f79c68c13a61d7d76fc9a356bd629a79cc228eda8a38e6221b75ffe -f2976cb594a1dbaebbee5a11b7c96797ce1feeddc3ddf45353292383c276947ceab5091e36e036705bbd5db565a5b91fded6b2cab4d05df753795b582183cbf2 -53d95a5aa3e00908dc16c26dd75c7df519a3a75c72c925bffded6f67cf9e7dd65967316e3bf5d4534f3cf1c4a38f3e7aca9429871d76d8c1071fbcefbefbfef8 -c73f76705b16dbe20134e5ef188646a327f1324c339d9fe0b08fbe1270271d7b1f79933ddc37b230651239c30d9985144b8b9d911e0a2c07e7f2e777792c9b31 -ce82874dabb98df2585df6f036b719b8ad195db8b95e0c023ad4ac3e5d52ba65cd55a8bc38f7537c2b2f8e98a11ce7719c35173c0181db42b8ed820b2e60e876 -d965979d70c2098cd2464747cf3cf34cc66d3366cc607bdad85229e3b6fdf6db7fc22f0f3c78a76f58b94d42ab38802691994025e9d88484b6b2489bdf3eb195 -f12bc634295a67ce24b71eab3b93c4fe228f92ace475d218e6b2a2d353567396c4eedf63b3e061d35e6e632d2b1ea82b7f569eb2eb3503b7f5b86fb63efbc141 -87da9a0a92ea5283dbd864b4e617a7ef70c46d43ec7fec13d3885d9a34656a6dfdb2ef05f1f55065971bbfc2fecb9ee8c61fea3673e6cc534e39f9d24b2f6561 -b673e3d7e9a79fcef6b7fdfad7bf66b7914e983061da948953f6d87eea845f1db3d777addc96c4bd5288ca6f2c8bc8c7b8f8c8f18d87c1728e6af62992cd1f8e -a379c62d68ee4c141a13bbeaf4ac8a5af6bda56307068ddb745033a21bc50cdcd68c2eecf7c27db4bc3f7da805202354396b3a480a6ee30482785b48bc8d3da1 -8d6d62634ba28cd8ce39e71c765302dfdcc6626fc74c993869af1f9c7cecd4e9fb6c7fc5a5975c76d2243bb7f1a25310d329cdba694c59f74caba0dab3bfe330 -9e5884154b99a2d29e42a582f47d6fb62bfa75796f5e9376c20d1ab7198f22a55cd4490edc56f9acdc8b0c8dd046398a54768678eaa5d1cc56292f82143a4093 -7254a8f044df7b672ccbb1452fd8377ee6a9f2f2e6c6ec894da0583a7a94b7507a89de7e6bdb88e6bdce0ddcf93b0cf4e48e0c85339442bd55c63aa957a22a0d -785ccd34b4d4eb6c6174787898dd7cc0964ad9e33f7e353272dc94c30edf7dfc69274c3b7eefed2fbf64ce75a387b37cae3f77460a67d93da0c952e5d2d1e178 -575b1a0a93961db9070a0089d5cde4bad33ecd803999149ca4d2d749f327d8cb8572deb245d722e2ccf2265aaab7d656d97a85f302b721de56b8d3b427817bca -d3c9c9c852363305411433ef7d096e6e2be49bec49a12ac82d293bac7fd62ddd57f8b736400ccb4d6448e98075ca4bf1c74657fa75ca15b94437d81173a398b1 -d1647b9b8021bb86fd6d941e52ca86ce6dac18b6ad6dc71d7764778c1e77f8a42376d8fc946947fe7a9fef5d3ee782f9a71ec1bebde5b727e75c51b6f047df65 -f70748f893ae7daab13143fadc52a91e4be3e427a84c00999453febe84f8f922b995d31815addc96d5604b46872ec293eb1af6149352cd6a4b3ce0dc66dbdf86 -75d29ef4b67a33f5c52932b0902143f1d136fd1b298d98d62b03b15023c794e4365d0a4a4d6d44e58d291aa570a4a2671890098595e90ee855a3b0915190a264 -e6a63aba1bde509fb7277b0d822720ac93e6b4cd6d18cbff616c03b6a18da1dba9271c37fd475b5e70f66f169c762433bbf97c1e63c3cba480e9bed87e29153c -6cda7b5f42d19b12b83dd649fbd545c3caa5409bcc2801d3bcec189196887519406ef3ae5a3ad8ba2af86b14b7d1572d8b521db88d380c3b6ec61e0572e9c573 -e69d1ced63bbe3e2333a5edbd0ea65a1c5fcaa6c687ed5a41b586eb345da6c94066eaba6c3d5984b517473b8e6a58a5e709b5e683058144d28dbdbd67f8dee29 -1a52a25394b554912d25432fe1558ec5f44e2d339363e554f9aa2899c9fe50284d6144f94f7ad5022c478646822720c4db02043724b9eda253abc908b9d4a840 -f0b06975bccd0d6dc6e81ab8adc65e595951147493f98358300583585674c808c01d1b9d1009d25d052fb7050b45a969c9d867abb9cd886835701ba5410bed6f -a364086ea3a8041b28a02a3080dca6109891e1b0bfad3343857e6b0291788c585028ad57dbca034214d0b4b19a31dea657214c81a2a91c4049214237d21555c9 -db8e46030e618e609b9eaa5fdcd6d3fd6d0cdac06d615da8ca54fca92a78b54b8141e3360a90e94ba546b68b7e7c470c0f3568570718046f6de8469fa799a52c -148536f4e53f3a58304b8a6fc16646df88dc462fd468491181186f7387338b7e4b69534a8dbc03aabfdcc6d7402968d853688bc915dce6ed2cbd3700b7f55ee3 -ea4b18406ed3efbcd19fdf26d08d1b1b0dc06dd577c7ba7214e0a2c38ac2348aa59bc6028c1d35d67333428fad0a0e6339676ea65c91abe9803c3d1f51a8510a -63656da229ac6ccc59cf90de04d5ca5ba8e77ae367ca86b3987254d8326e4a33baa1ec5773a05b9d3bdbc06d85fa4caf8cc16dbd52b697f90e1ab7d9102de03a -b8ad971d1379430128d07d05822720dc97d0fdce811ada14081e36adbe2f2180d2f424e0360c2b280005a0401905822720705b19d97b9336f7e4dbf49405fd71 -b8bc70e9011b4d7ac2466f94a93ad7e061036e03b755dd19911f14800283a540f004046e6b5e47518eb7e238a61f3fc54f4390606dfeb03809ab79956aa447c1 -c306dc066e6b648f865350000ab44681e00908dc564d1b57b9bf2d77f27a7abc80e162934e68af46c5ba73091e36e036705bdd9d15e5410128d02d0582272070 -5b351da157dc268e6e97202d0ab325078922c056aaf982870db80ddc56aae7213114800203af40f004046eaba6ef306ee36f919df26781624c27c8ab47c82b2b -a705728769a640f0b001b781db3090a0001480026514089e80c06d6564ef4d5a115a8b002e8da8191645452cae376e0c40aec1c306dc066e1b80f161a8a2f781 -ba83238bfbd9b63dd2a12f85f6a82ec836780202b735aff328b720e8f725a42ee3be84928d173c6c5acd6de2d1bbee0782381ebacb1282db4af6bdf6266f293a -54ee768519d2b3a25bb6b7830d8ee7c11310b8ad799d241f5a8be16ccbd1f9a35ba68f04913db63d1ea479b56aa247c1c3a6bddc269f7f603b0b41109bcd00dc -d6a8de4c393fbe42875b8a0e4d76bbc9be55d8739095a240f004046eaba62f55795f42351e2117bf02c1c3a6a5dc463f9f543fa55409ce21dee6ef5ea1168538 -ac9071a847b9742d858c26bbdd58dfeaef5d9574d1b664123c0181dbaa6962705b353ad69b4bf0b06929b7e90ba38e881a3346bcaddefe18955668a6548c9543 -27b9f3c68bc6af6c7bd7e8a76d8ae28cba153a8bd37b8026bd0a94533b837d73f710af7414dff49a3a0af5ea462f312db7fe41302825064f40e0b66aba08b8ad -1a1debcd2578d880db106feb45572d036dc21f3d78630ce7d8ccd875b96a8a99f7be046fe848cf81e270992ac8dc43c42c879894af8c253aa4f38a462c94a2a4 -8cf2e46c7bd1d991e758f004046e43ef195c0582874d37b8cd1d6c43bcade6815109b4e9c440241e076a283ad021c31175f3468c740323417acd886842673b62 -8665640f1047d018451022dee5f1bde6d13010c5054f40e0b66afa07e26dd5e8586f2ec1c3a603dce68536705b9d9db142689311c4c15814fc2a041f44b9bce5 -da0c0268234f1e234a289182386108e5a0a83096a5c06219ddbc8d12d788d8c230a32a103c0181dba812bbedc06dd5e8586f2ec1c3a6eddc468136705bbd9d91 -3a2fd2a74fef644cdc0ba5e8e0cdd6ad9b37b96d03960322e524b6d2bde5560b5b94e228344617bfa7dc46ef75358f9a5617173c0181dbaa6977705b353ad69b -4bf0b06935b711a10ddc566f678c4af3ce8e5e0305054ad243a3e26d94e6e8457c310c044b2a1f5068efb88ddeeb286d041ba140f004046e6b5e2faafcbc7839 -c3ca336f9e7e398f9cf50d1e36ede53605da703f69d3faaf638ea44f9ff2145e88bd287bc80a11892eaf3739913f8866c69856d1b4c64ee2ae88b79a729edef6 -a244e6e8952ab4e24cef754d1b4acdf727780202b735af718da85182bdec49e70f8b67f94a0ff0e5d7724ff465d3bb7a843d3b658bbf8c67dbbbbfe59a4ba5cb -8d90152c9cd373a35c893275636af0b06929b7e1f96dcd1bed068f8c33257dfaa4ccca6261d1460f36503026f46652c88019575b055e3a858d82618b087614b4 -2a838314dd88f2a6a2b562c4b4d5c9e00908dcd6bc26af9adb643e129f133a92d028e52fc3b1a7fa257685dbcb67a80a29dddf665068380142aa7c5aaa9e1be5 -8a930d134f83874d7bb94d1c72e538ed4ab7d1818f293832927b6044f30652773c22429bbccd8b7d967945e12dc5d24d6301c60e8e313aa9dbeb852a3685bcd2 -a5a0e446af8550db9badad53cad5a1a8e14640476efa57eea2bb338a9a5793e00908dc564d6356b9bf2d4697d15c384b8e41b113af928975cbe1e12da3ffe503 -5f91ad0c440272584de5cfb66094868d063493f2311f789f42a023dea58401139fa5abc947bd2cca9514db62bc544378e9dfc1c3a6a5dce63e90b4d0b7e0b66a -7e38900b14800283aa40f004046eaba6cb54cc6d62f55144ba8c8b9d32a2452b87312d29dc66c736f322a2465a86f85b8efff22c18c9e9285252dbcc6d3c397f -71fad473a35c890be2861277ce1f667f67c983870db80ddc56cd0f0772810250605015089e80c06dd57419c66dfc2db253fe2c508c0dd1e4bd68620f5a165933 -f1959ba1cca1b2fce2a5711db4726e93d449a92a8e8945204aa1343329a65739084a21c074213078d880dbc06d0546344ca1001480029a02c11310b8ad79bda9 -4a6e33e6955659e536d2ce362990157fac649d5434422e37fe076555d4b86eab7896d29b743978d880dbc06dcdfbe1804750000ab44981e00908dcd6bc66b62e -89ca11a3744954bee732bb1134bdeac4b61c72a9bbe25226936f17cd2d386af72590bf4d1437af938ae5deec9607ca5d08863b2144fe4b4787e305d79431b322 -82870db80ddcd6bc1f0e780405a0409b14089e80c06dcd6b660b6cf17891d8f3157dceee4950d601136e73605bb6553f5e4194ff4c4bd1502eb7662a76a16934 -1929eafe36575c7ae380c49ab9fd6da6dcf4fcb52b52dd8533e9fd1a696d83870db80ddcd6bc1f0e780405a0409b14089e80c06d6d6a66d557c31a65ce847683 -409b15b0fbaedf2ea1db060f1b701bb8ad9bc306b5820250a02e05822720705b5d4dd48b723cdc066cf3881e3c6cc06de0b65e0ce85ee4e97d526eb585167a74 -6df9a2f1ecb1f21a22877e29103c0181dbfad56428b7ff0a040f9b56739be389bbf223dcdc66e0b6fe775fb20775b2549d6509014a166a7b842fa090dcc56018 -a240f004046e0b911b69baa140f0b0692fb7c9271f380e27f59a81dbca0c01e2f907658a90d396c49aaadce85d3e252ba82477ffd9bb5a20e7415320780202b7 -0d5a57417d330582874d4bb98d783e29c50cdc9607a302c3aa6668639e95c49a0275eb9369c90ab682dbeaef367d6acc012a36780202b70d502f415515058287 -4d4bb94d3fc9ca117253d64c95b4e0366991aec0c052665ffa89a2bc0ce2a19c46339b975ee80928542fcb78dea871ef1db1b8420145ef69a794dc6ccba6ee13 -3fbd8bad74df806e05465a1b4c832720705b1b9a173ef64681e061036e03b7a52055a06bdae65d9d9c8c2c653363d71dd8e1bd2fc1cd6dc442258a1d51fc51be -e2dfca5e518a28eaa49bc38273b3250cae02b1e9c3fe9150a06bc2b41f0a044f40e0b67e3417ca6c8602c1c3a61bdc161c6c63b137705b0c1f05fab1db589ebf -89d02647e0dcd8e48da8150dc53932247ee5ae6f210504051a6b41272d0a7a1acba27bab5806f856b4d715e8a030ad5d81e00908dc567b5ba1c0c628103c6c3a -c06d65a00ddc5674faa4101e7141cd3d7ae80c411c8545990fdc66e4693a64bb3134cd87d87a306bb402c11310b8add1ed0ae77aaa40f0b0693bb7958436705b -a1e993026d8ec95e1e02debd5095739bc0082f567aab608bb111d70a8944a8fc62e88a792be245556f70d4c65ec6789bcd437b10b4a73f8ac8bc3e0582272070 -5b7d8d84929aa640f0b06935b7958736709be8c95e26f31a4859453bc3bcd0a0639cfb0a257e536860ba3d24d255dfd7491d55f63641b5dc5650fc42e6306eb4 -02c11310b8add1ed0ae77aaa40f0b0692fb729d0666338af196b979191dc76f89eb654933377905951687384ac887ba1aa8db7110bf582a35eafbe731b912fed -412f0f64531aa2a8bcf4eed4e4f102df8402c11310b80dbd687015081e362de536ca83d9582c8d62066ecbc38a6110d16759ca42a1311447870366e94610e3b7 -f44295a8a1233737c3c9dfca3e0707f98ce1c632b9291eda84d5a5a33496d1dbb4c4c1fda1ee6acd832720705b57bb04eae5572078d8b497dbc4e9558e63ac74 -1b9de4c06deeee458436656f93ce04020b0aed820a3076739bd14f3dcca697abf09c6017196b6c8853be5063e9de489b5caea39529f0e7ad82003562a1fe1f35 -58b44781275e1cbb79c9eb23d32f987dd53d675d79b7e3fd9b2beefae571e731e3254b9f62f503b7b5a791e169d50a0c1ab7e9cfdd0dbe026eabba3322bf4c01 -37123544290ab735c455b8d14c0518b74d9a79c9e2dfbf4a718f993163701b452bd8745901701bb8adcbfdbbb5756b3eb7793df41ab4b671e078650a706ea367 -076ea36b05cbce2a006e03b775b673b7b962cd871eaf875e8336b70f7caf4601c16d6cddd3fb664582dbaad11db9b45a01366cd868a1bf96be30c6c3d42ddddf -164c697a422602ee27a5f71c58d215a0ec09a3e756b925c53d8a4de58e21c3d62920b8edc53f8e79dfe0b6d6b52f1cee89026cd8b0d7ab6f8c2d7f656cd94b63 -0ccb1e5b39b6e4f931168763ef879e8dde0f2c1fbbf799bf3ff75a6479df7270db0b9ce1c06d3de991c8140a4081815140701b9b7dbc6f70dbc0f40b54d4a900 -e736066d0cdd5efad31883b315af467ff2f7d32f8f3d150f27c6738cded8eb8e27de44bc0ddc86510505a0001428af80e036161160efeffe685ffe41bce52be0 -b6f28223872e28c0b98d9119833616a616d0c6898d431bb311dcb6e89157c06de0b62e747dd4010a40817e2b20b8edd63ffc89211a7fb3cffcad5c01b7f5bbb9 -507e3314e0dcc6b04c44da18b1f137c735f1660ba6ecb5e0fe95e036705b333aef98fed8b3863856891b789e5925322293262b20b8ed86075f646f016aca67fe -2db8adc94d09dfea5380731bdbd026af8d726e93a18d7de6dc76edddcf7680db1c4fdc15f71fc88fde35decdc0d4c07d09f5f5544b499dbf69b19e0ada1e530c -76ec4b0f979f59ad3fbf7a6468c4fb8e7e9d5233b90a4ac2b0daf14cc2d22aa904b7cdbb67057f0b74e31fc475f601dc5689e6c8a4f50a28dc76c56d4f2ad0c6 -aef09b1538b75d7de7336de736f9e483e0c349715f4243ba7e3d58d3c7cad65341a514f79f7d5463408aa6709b9042a128f94f23ba09a40b16b317dcc62202e2 -2dd04dbec83e83db829b0c093ba500e73676eb28c3358668fccd2eb2376335714570db55773cdd6a6ea31c3c6a8caee19c2b77bf279e6a55f9e0a9076b2a779b -9e613d1504b7d15ba406cb01e73686680cdd146803b7d5d0f150443b14e0dcc662693ccc26a39b0c6d6c2195df4fda766ed399cc1672532cc16d8e0e6d8436e3 -13bc1c8ff5b22dd529e51acd6cbe51a08792a16e239768fcd6b8f78e58473d73a7f8237455793e0e7bd9402fd4b66caa5f2f5453b7bcf45f522e04b39715b125 -575453cc94acf8b7e2a29ea73b377a1552fdb314de7f1139a25ff2aaa8ec8331896c6ccb53b7a15b1a4510eba43aa581db8a761bd80f8a029cdb1893f1bb47d9 -5be01affc0226dfc896e83cc6d46b68b7ec747aad9e4d1eadee69e57747232b294cd8c5d77408c918d02a0472471c0963b5b39a1fe594f2bd7cb0d9745bf2d24 -afade3390ab57d4569c14a7c730f161dad38c9e95846b922d2cad9ea1952ae302f6c6fdd3d77bc4df3dcbadb4c409542573a6c51ae88721da49802aeea922d09 -b8add53ffe70be3f0a086e63cffbd0d18de11a7ffffeb96e729b37d8c6ef4ec07d09f609dedf6fe5d99a3873a7518768ba54a04a29cf8d356ee728ce1031c556 -c7606c75d7daa80f5d28af683d8245e6a19233515e7f274b2d280865cccd9d50fe56b13472212bc2769d5e17a2a583a2e4af6c9f6357cde457f4ba0dda1cd7c1 -6dc456861914c814e0dcc61e72c83ec88fab16b7237068631be0980d7b75699dd40b6df2bda538e74a1f36de151c852402a23872a114cc2a34b6bdf8a273868d -8d9acf6da22e656a6de3457ad3348adbbc4ba5a2b9c16df2c872c7db0ad11ee736f63877f1cc36c7076686f3490bfdc4c1b89b0a086e63378df2db11f89bdf43 -ca574819b7b10d70eca8ab2e711b1dda38b1617f9b7100144537c728e233bafc568ce970401cab6508c6c11feef862d15a786157d7cd9bc4ab8f5719771d6d78 -a773b0cd79af03b62a10e36d94e5541babe9f136b5e3a6b5f2ea5c890131dec6ca12964a9242a425e763f49fe7667b2b4978bce0e063cf3d66d6d5def741d3ce -613311bf318e1dab3de5944b172fbae5a965cbd961d96b7e71fa0e47dc36c4fec73eb1afd9a54953a656a22f3281024d538073dbdd4ffd8df119a334fecc3699 -d8f829a56c73db3d4fff4f196e93a190f85979809cf74f7ea62ade50000a40012850bf02c41f76d9ccb805c57d11dcd6348a803f752bc0b98d1d6fc59641199c -e96f7e4e1c8336f6605ef69a7fdff361cf01b979c9eb23d32f987dd53d675d79b7fbfd9b2beefae571e7317b76a6d6e997de76ce35f779df332e58c89eca28f6 -e7e10314800250000ad4ac40c08f3cb8adee291fe5754001c66d2cd846ac081b962ce815c66d6c5fc2e2dfbf4a2c8859327bf67ee32fa414cc8c198b13baf001 -0a40012800056a5620e0471edc469ae1600405640518b7b19349173efc32bbe1e0f25b97fd6ef11f2e59f498febef4a6a52ca0c5ce9e2fc36d8594e7dcc692bc -fa86ffcdccc06d35ff46a338280005a080ac00ffc5a6bf987d6fb92d60e1d6bb1d0706ad50a0fe5d02c12506f4d2e061c3f67df26764e82f366ed98e51b66f94 -bff90e513ea4c545f1813d175bbfc8398c2791ef72b57de6f6e288557c800250000a40819a1530fec81b7fe1d96f3effd10e9e8048f725042cdcd277e778b7ef -c0a02f0ab46ed754402f0d1e3661dcf6e21fc7e4b738874eb91ec66d6c971ede50000a400128d0170538b7517ee1994d1ddc16b0704bdf9d438f2bc2b24e055a -b76b2aa097d6cc6d72c04c409b1e4593b98d3f8b44bc953ff9756ebff2f531bca10014800250a02f0a1857486cbff335715b216228b43b87b2830736f52bd0ba -5d53756e2f088bb7f1bb53d95b0c667145fe10c66d6cfb1dde50000a400128d01705f804a4ffa41b7fedebe3b61eedcea1ece0814dfd0ab46ed7549ddb0bc2b8 -8d3f0b5b0c63dba3b1656e63bf02ec91bfe22dffc93ff3831c58ddeb277b940805a0001480025c013e01197fd5f5dffcfab8ad47bb73ea27923225f2ade2fa7f -cbe4d9ccb4bc63f565a34058a1756e2f08e3b61b1e7c91bfc5301657e40f32b7ddb6f40dfebefdf13fb3b7f133b77ffdcf63784301280005a0405f14e01390fe -936efcb52fcf6d53cfb8d2735e82be705b74770e7f06bdfb2defe3e9fb679bab4cee0927cdd1ff5bc6e1662ad3ba5d53756e2f08e336f63011f1162348bec83f -8771db9fde1cc31b0a4001280005faa2009f8094df73dbef7c7ddc5666778e174d8c1baecbc050c9b4e036deb1fab25120acd03ab7178471dbb5773f2bbfc590 -56aecbdcc6eecbf6beb97d5f7eaa502814800250000a3005f80444f9856736f5715b99dd39c6fdd7ca45791f4f4f3f539cb1d9d8e26d651cf6fa5326f3a269db -bb6baaceed0595701b1bbd0cdd146813439a57879dacc5de0bee5fc93fc89fc545fe13c0eeffc51b0a4001280005faa280ce6db65ff85ab9adfcee1cbe47a7ef -6fb16728e0838ddb02b252b62ef55d16650755eb764dd5b9bda02a6ed3a14de1367d15d5b6aefae65fc7f0860250000a4081be2860e436e32f7caddc567e774e -a3d0248cb4068ddb5a1400af737b416ddc76ddbdcf79df9cb0fbf2538542a100148002508029d0506eebd1ee1ceff69da619b0fb12984bfa7f9be667497f5ab7 -6baaceed0501dc76c7136fda1efca15c6796fc0988ecfa95b73fe57d33b3e3cfbe0e3f9d50000a400128d02f05d82f76d11ff9e007bfb387b251ef27d5237e01 -bb73c4369db00f6c4f8ffb4dc9d69b89bc9d8892a1c3a6b6b2aa2aa8bdbba6eadc5e5094dbd8a35e0e3ef6dc63665d4d791f34ed9c879e1d63c7ad9e37ef018a -fd050b1e66c6c1e7ba222114800250000a945420e047be3fdc56c9ee1cca0e1ed8d4af40eb56dfea0c5317e2b6254b9fc21b0a4001280005a0407905d8d45c2a -dee6e536efd61c18345601709bf11f436cd43165e8dc163da3192f280005a000148002152940e5b6a20bb7f4dd39deed3b30e88b02addb3555e7f6023ab7e9a7 -c3e10a14800250000a4081320af8f7b7052cdcd277e75076f0c0a67e055ab76b2aa097066f2ff072db94532ec51b0a4001280005a0405105189379df279e7f83 -eb9cabf2cbb1c8010a744901ef3a291b4e784301280005a00014e89d024f2d5bcede2c88b0e617a7ef70c46d43ec7fec53454bb1c8060a744d0177bc8d0f27bc -a10014800250000af4540195dbd8df78430128605460c8f2825c50000a40012800056a5320176f0bd8fd832450000a4001280005a000148002f528006e7ba11e -a1510a14800250000a40012800054a2a006e03b74101280005a00014800250a01d0a80dbdad14e25f11cc9a10014800250000a40810e28006e03b741814628f0 -e0038f74e0070555800250000a40819e2a006e6bc49cddd33646e6ad5000dcd68a66829350000a4081fe2a006e03b741814628006eebef4f214a870250000ab4 -4201705b23e6ec56f41538d95305c06d3d9517994301280005baa18099dbee9c364e3c6474f73932d95cb2fbb863ef5c215db9fdd8cc7468286fdc3424ca3bcf -3c57ea22d7ab9acf9a5cc5b22d993cd6df50cd2ab23556842a69cf1c28266fddfd73ce6ed1a8b28d11705b377e52510b280005a0404f1530705b046d19d05cb2 -7b7ea661dfe6261e79aaa64edb75cf9742c19cf3b578abca45010bc9b10a1c365533c4ab829ebb7b6daf1ca038e9b029d3256c69b3eb6c28ed31c75e3ab8ada7 -bf74c81c0a400128d00d050cdc366ddcb869b73bd0ca11b5f2cc4c0d904c72becc245d800f8ac796728e9576d85ccde25e51aa5c40d2de384071b2661ba1894f -1c705b037e1ffaf64f4ad41d0a4001284054c0c06d96d5c38cc9ac41203e3345ffdd63f768f5748f39d92a6a1a6990d755f3c6bbc7ab48fc1585f4b27c86c64d -bb84afdc8e9b76b7f53a5f134c3248d0532cf84609e3093b733e9d47f9ea5556ee8a17a42b91dbaa81e45816984c73739538678f4893c80d2126fb10b92aa54a -6a2a724e1dbe3b59bbce89c6144997ad33f18f9d96d6289591db44a1532ddb44135e7dae92a3beb68648ea25334af1869057755519959695fb98c661e4b4718d -f93f51a2fcc74d9b2396ce63ad445734752d758099f517ad362eed9952c82ddf1fcec073406a466a140705a00014688902ec1ff6e2dff6746eb3ec7293398ccf -827c0a8ca6c368d2e28baad154badb25f29564df55669cdf33c7e944c9504c8dc6eb5171d2341c014d8a47515662be4c233d7afc237f25f5d9e998824dee1285 -87d1842dd854f353754c73585646e736b1ae2d91442c85124615112fa34ad2de386f4388f64d3c2fd110490e8a4b5a86c66e930cbf026919a172544dda3af35f -ec42e3bae935d2023359e74cd3e6f4376e344cb38dfbc30f4fc7f3db10ee820250000a400183029cdbc6c6c6d88415c66d86a855167e90832ea66850725b8332 -abe5421a715848cfc736114a5366163a4ba6db2c8ca4ee72330487f2e12b817a329b1a1dcbb6ff27f11511de53827c0c1418c8ced92d0eed30909db3476c994f -a501651272b309c279c5a86782bfb12a1137e77a8312c9cb7cf6d6d7dc767178552e310bb9396591eb2b919388ff4961d4342c9805c6f4fead8929f58928c026 -a7554053af97d056c944df48e0d09f8f02fddf09716853f487cffc601631480e33280005a0001418340518b459b9cdb7bf8dcf9484a8953e1fbbae4801212f9f -291361860be67ddff1c29ffc55ec7c16da51a274b94861bcbc98377080690a46e612d9b711a81d1bdf931bf930277f934792ca30c1cb0e4b04405438aa7b16fb -94fa7a6e9359ea33a1be6e4689b02fa0210c77bf668228199a184819c3b4b471c44b909c8bdb5cb71478b8d9ce6d727ff8e167260ddacf10ea0b05a000148002 -4515287c3fa9356a256239d99c4a5b274d6272d23d0d6cd92820de26a3094787e8bf62c536b74a18859aa6f1cd4c5ab9d9aa6e4aa8021a14c7f4b4ee12a325e3 -68e394b48d2ca6012595299824392c476eeca2e91138134e25d9e6542ad210a932d675464a43cc3195987349824e91a1ed192e6a1378d2f2cd7049ac518af6a5 -374d8b755269f5d348a541f136b93f9cf183a1a2a317f650000a400128d05505e43d6d9efd6d4c02d3f3dbf47b45e32b7ae4430902254b5bd2f679b1e424c359 -bed0206e4bb7def3a5d178254bbf4b206de06c93be5cd978db7eba973ccd4735902a987d358ebda23a3a4bccc7bd1805a66b97f9547c53bc12e0113be5739aab -0e382370b1b1b6cb6d688f69e9e3fab2cd5ec63652028dd19fe9767b35a424bca53444e6c09055c67c86ce789bd604ceb419e729409cbf2f81dfd521752df597 -c2c66d494265a488d19461e583a7efd4d55f1fd40b0a40012800058a2a20ef69f3ec6f2b9a75a0bd442d8139b4e43690ced68eb058d9d9baf7a0efe13920e82d -50000a400128202b20f6b4b18baefd6dbd542d7bbc8216f8c12d246d53a011dc26f7281e0ff36d44ab06b9aa2f17dcd6cb5f9eb60dae6a7a296a0d05a0400715 -c0f9a41d6c54cc7f6d5400dcd6c65683cf50000a40810a15b0ed69f3ef6fabd009640505a0004501701b4525d840012800053aac806d4f5b33f6b76121000a40 -01280005a000148002504052c0b8a7ad8ffbdbb0280905a00014800250000a40012810a8406e7f1bfb036f280005a00014800250000a4081c62ab0c311b7fdff -677ff8b96a15652e0000000049454e44ae426082} -\pard -\pard\plain \absw9637\absh6649\dfrmtxtx0\dfrmtxty0\nowrap\pvpara\posyt\phcol\posxc{\*\flymaincnt0\flyvert9281\flyhorz52226\flyanchor0\flycntnt}\ltrpar\s16\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb120\sa120\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i {\rtlch \ltrch\loch\f1\fs20\lang1033\i\b0 Illustration 3: Type Library Editor general interface} -\par \pard -\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Type Library Editor features:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Graphical user interface} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 WSDL source view } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Pascal source view of the library} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Pascal Proxy source view} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Pascal implementation skeleton source view} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Pascal Proxy binder view} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 enumeration creation interface} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 class creation interface} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 array creation interface} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 type alias creation interface} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls14\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 service interface creation interface.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Below are showed some sample images.We will use the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b user_service_intf.wsdl} file located in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \\samples} directory for our sample.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par -\pard\plain -\pard\plain\absw7860\absh8595\nowrap\pvpara\posy1\phcol\posx2{\*\flymaincnt0\flyvert44304\flyhorz44288\flyanchor0\flycntnt{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}}{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw524\pich573\picwgoal7860\pichgoal8595\wmetafile8 -89504e470d0a1a0a0000000d494844520000020c0000023d0802000000d9c2b750000000017352474200aece1ce90000000467414d410000b18f0bfc61050000 -00206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c0000393049444154785eed9d6da825c979df4fbe0492 -7c3009210412422059a238b27066e324c609c9f17ef07c111101af6309c6ebb112f0bdd7518c2e7e91150cd6ac568305f7626de2bc4ca24431bb62043a7b8d08 -027b985841ab8519df0c48bb8b8decbb59bd44b3935120380a384837d55dd5d5d5d5dde754757775f7d3e7776866cee95b5dfdd4afaa9f7f3d55ddd57fe4f2f2 -72c567bf09bcf9bf567fe14faebef1bf577fe28faebe7db9fa7fdf5ea946f19da25da82fd9cfd5eadbdf597deb0f57dffd6757e76ffee1777de7d15ffa8b7fee -932f7eea47dffd74233cd5aefee75bdf547ffad37fe64ffdde1b5ffbae3ffec766c8783eb6fde69d3bbfffdfdffc27d77f7c644afabc1ff8b9f7cfb68e460632 -f2e9a6e51f7af6ef7ee7a7d8200001084000028d045657aedfb9f1d2051b042000010840a04ec088c4fb3efd161b042000010840c0236044e2275ff8c6011b04 -2000010840c021a0a4c188c47b3ff1d67bff131b042000010840c021f089b78c485cbbf5b51ffb775f678300042000010858024a1a8c483cfd2f2e7ef457df60 -8300042000810513f867678f9efed06fbff3fdffb56d537f55692c01250d4624feee2f7df1efdd78950d0210800004164c4069c0cffcdbd7fffde7de6adc6e7d -ee2df55795c61250d26044e26f7fe0bf7dff2f3c6083000420008105135001c4af7ce66b1ffaccd7dbb65ff9cc57551a4b4049831189efffc0fdbff5f3f7bfa0 -1e93f53e8fbefe13b7bf99ed7bedf75502b53df75af6eb0bb7b3ef6c10800004202088c08f1c7de1e6d9577efa935fd19e5e7dd19bfda9feaad2d81229693022 -f1033fffcadf387e596f3f7ef75bea80afdc7da07f7edf271f67c7bffa3bfae7875fcd7ebdfc4993d81ec51708400002109839011525b822a175c28606eabbfa -ab4a634ba1a4a1124968f5f889dffabf9948fcd6ab464cda23091d55e88f49af13eb8f8a4254861ffb7a66828948bef91cf10704200001084c44e09defffdc2f -7dfacd7ffcf16c2b7d75fe4def547f5569868924bc80238b394ebea2f44087203afe50dff5cecb47dfcad5eaf1878b7865e67a8b79108000049647607df8a9a3 -8fffeed58fbc76f523afaacdea84fea9b69ffaf8effee04f7d6a984842071c6e18e1ee317f5033193a92b82486600a07021080c0c404bef7994fbcef3fbcfe77 -3ef88adabc48e2073ef88adadef7f1d7af3cf3898648e2efffeccb7ff37d9fd3dbf53bff270b02eefcb6d9f36b8fb2bcbef4bafef9e12f65bfbef06b7962fd27 -fdf9d2ebfe813ac35f7e331389b7debc5ee46f4fc41708400002101893c0f7fdb01109ebb95db550df9548a834d624250d664ee2077ff6e5277ff2bfe8ed99df -c845e237ee157b5e7b39cbefd1b3d95fddef26fd931f7e2393812fbef6e47fd49aa15356fffaf08d67dc9d7c870004200081d109bcedddffea5fdf79e3fa2f9b -5b59d517bd69cd505fd45f551aebc095341891f8a19ffbfc93effd4dbd3df3d93fc844e2b3afd83d4fbef78bb94ee8cf1fbcf8a13299d9f78d8b67f4e11fba28 -67ca75267a8f4d509cc5c9dc9c973d10800004209094c0dbdefdab4a063e72fbb5b62d17897f696d50d26044e29d1ff8fc5fffb1cfb24100021080c08209bce3 -3d9b7ffab17b9fbef73fda36f55795c61250d26044e21f7ef0f3dffb9effcc0601084000020b26f0f61f3efb6b4fdf7edb7b3ef6b6f73cafb7bf9a6ff6e7dbff -d16d95c61250d2502cf0f78b9fff9ea7cfd8200001084000029ac03b7ee4ece95f2c44e2dd375e79c7d3676f7ffa336c1080000420000145e07b9efe75250d26 -9278d73f3ffff3ff60f3577ee8dfb0410002108000041481bffcaedbeffa85f3e2a54337ef3df1d4f38f1e3e565b791f13df5a0868506c10800004164c4089c2 -b59bf77c91505ef1cb175f65db4ee0d9e73ebae09641d12000010828020d22a115023a3b09bcf8c26d7462272512400002a2092012ddc78b1009d14d1fe32100 -811002880422d19d40480b230d0420209a409c489c9fac57c5e77033b573b97fba5e9f9e7b53c79ba3c2c0f5c9fddcc2c664434c381349886efa180f01088410 -8810894c214aa77c76b85a4dac1375ef9f29c4d1460b80faeb2ad7897ab270d9d89a1291086961a481000444130817890727eba26f3e44377c006abe07af59a8 -34e3e0ac57248148cca4ae31030210988840b048b4b9cbacc3ae3f79173e4b767498ef5a9f9ce9d1a9f5c903777fb5b3ef1d5b0c1fe9d3e5ff9e1c981398c0a5 -3ca3cada196ecaf6176144194c1c6d1c931c23f303cbacacfe651192fe1c6e94eae4dfea835a79fe44120328fd44ed1ecb21008140023d452273a3da77678351 -badb6e0779dcd11ebbdfa67cd874ac75c75624eca09651a9f2a8472a50f044c2f7e6cae3e7225164521a99a574228f7ae60fd5b1eb934dd3b447e1d71089c046 -46320840402e817e22e186174edfdf74d2b5cbf6f69bfebbeee037c40d6622baf1a822b6a8a4b15dd16d918473222d1b3a2b3b0baf039eba2430dc444f1f0210 -d86f02c122e1f6bb5dbfdce6e8ad7b0d77f7dd64a3acbf803909d7984651f162114462bf2f0fb9bd3f2c87c05004c245221f50f2ef6e6a1f32aa8b44316160c6 -7ceac34dd9084f31a9a08792eab2e11de5f9f4b6bb9bbc53d707978c603863590c37210f108000046297e568784ec20edab8834beed30965e77d6d8677dce043 -0ff8147bcafcd7ead32812ce6cb34e13f29c841d56f28ccc94c058601eaa28f7e8b9169da03a1fce9c04570e0420b037042222895ec1cbd6719b5e3977a8aa81 -8c61e27aec8aeb50d71c020108f423b07f22a11fc9563762f503c72db0fd0192030420307f026389446f8f3c4394441233ac144c82000486258048745f810a91 -18b62d921b0420304302880422d19dc00c1b3426410002c3124024babb48228961db22b941000233248048f415095e010e01084060a904d4cb371189ee22a135 -9f3781430002105824013d588248f415891986879804010840a03f01440279800004200081560288048d0302108000041089253ec7d73f90240708400002db09 -1049d08380000420000122092209084000021088274024410f0202108000048824e2f593914a08400002102092a007010108400002441244121080000420104f -8048821e0404200001081049c4eb27639110800004204024410f020210800004882488242000010840209e0091043d080840000210209288d74fc62221000108 -408048821e040420000108104910494000021080403c0122898e3d08058e0d021080804402ea5ddce1c3688844779150ef7d6583000420208b807a113722d1d1 -ef874bab4aa9d555b1e603010840401081e422b15eadd6270f8c3fbd7fba5e9f9ec70f7245b9e379264624045d15980a01085802e945627d74b85e9fdccf7beb -88044d0f0210808028022388c4e9f9e6687570e68ac4f9890a30f427d78f4c3c949664bf0f370ff41f0f3785aeb829c546213692b87b5c14ddfe7f7cf7f252ed -cefe2b3ede4f516d0a6321008105111845241e3ede1ce44ebf1e4968fd50fbb55aa89ff64b36307576b83ada6861101e85d4869bb6ab0222b1a08b8ca2404032 -819144c2b878ebe83355b0b1c4e9b9bb5f4f5ae83d6eb22c79211802e3094442f26582ed10d85f026389c4c3c76a88e9f0c4bafeea2cc5169158ca44773791b8 -b875556be9d55b175923b5bff50ef5f3eaf17196c41daadadfd64cc9210081c1098c27128fb2b1233598e4c40db97254f6f86a911d62262704460fee7d569d44 -a21874cab441c940a6095a2cccd76c7fb167f0a64186108000042e2fc714897cca218f0cd4148599b63e3832c34aee28933b03e10d4c89958a4e226102875a18 -514417774bd5a03143000210484120b948ccf3a985f1adda25124e94600385a2c2f31ba28eef9a78c26906d58352b40ff2840004f69c002231c6e3d64d4f5cfb -f72f557eeb1fe5689256034725f4574462cf2f5f8a0f81f4041089b988843b2b6d271afc89ebec710a67261b91487f85700608ec390144622a91d8f38647f121 -0001190410094442464bc54a08406012028804223149c3e3a41080800c0288042221a3a56225042030090144029198a4e17152084040060144029190d152b112 -02109884002281484cd2f03829042020830022319e4828d66c10800004c411506a16be4a855e5de289a79ebf76f3deeacaf53b375eba50dfd46f958b2a797846 -fb9652469f012b21000108341108f7d888c448914778959012021080c07c08201288040420000108b4124024681c10800004208048887d71c57ca24e2c810004 -f6900091043d0808400002102092209280000420008178024412f42020000108408048225e3ff770f0912243000210f0081049d0838000042000012209220908 -4000021088274024410f0202108000048824e2f593a14908400002102092a007010108400002441244121080000420104f8048821e0404200001081049c4eb27 -639110800004204024410f0202108000048824868e2494bab241000210904880d7978ed129d021181b042000015904d47ba91189f14482b7e742000210989080 -f2f8519bd2b34945e2fee97a7d7a3ef4c04ef3c4d1e668957f0e37634842dd061d494cd838383504200001edf1033fda6b251789b5f6cdaba34d5d0c6245c2a6 -770f0ccae4ec70b53eb93f8d3c68c1402402db25c92000817404a23cfe4822f1688b130ff2ef4d9e3d562454fa46951a27884124d23579728600046208cc5b24 -72cf7e7260228b6cd8a7be47f9d3cca1eb4fdef72fd31c6d8c363c3829539c39df1f9c973fdc512c1546381f63431ed994e72a7eae8f0ef3cc0f37e62c430d4f -b991c4dd63d7a0fcfbf1ddcb8b5b57cbdd576f5dc4d47c35ad9b93cab8d747e515684bc57e53a65ea7de7270ddaa703b53d944be10104060f62261a704d40c81 -9a8dc87db4f1c27acf43e5d08b81292d096e9aedc34d4eb8b039a88e6eb90796d3129978e8b367ea7270966b46ae4cd90446f165a05993a6e12625168e0fcf9c -6cf1b387cbcbb229dd7aa647bd7422dc122f65f8816d57d6961c100901ee0813e74860f622611dae1580fa9e4a27db460ff9a0d38e39091d316c9dfc681ba7d2 -0253cfbff380586d202b4e242eabfa11d1d8fafbe65a54121e495452762e426100221151ef2485401081458884d7736f74ebdbe6249aa462e78cf7dc44a2f08f -eec0940e08eca08e71c8e5204fbea3cdb196c9f26cb264c7c7f9f0d6d55b77f5385776bcb3df442036c3ea8932c3b405f9fe2cd3b648a2c1c2a653bb657347df -f2b3f81c82ed0cba6e480481bd21e089446de03bdb616fce1c7de2baeed91b7c7d3904640c6d130977544a7fbf7f7a78f2203f4a4d2754ef656a14896c68ab36 -dca425aa397daf9ba3c222095b65b5debb71c145f7dc8c4d398e597f6d16897224ab3c4efb783b38650f2fc6aaaa67a89d2877dc5a60cc70562906ba1456d48a -b278a7f04e9d9b520aa19ea4a9073165268d891becdc9bcb9f82426037817a24e1e9847bfbfe482251de021b2412ee64b29a17c8e724bc21a97c2467934f80af -735528be9fda096abdbfdcda9c7ec3c4f5b42261a70f5c31282ad174f58b5e7fa5ebadd3e44ebbcdb1eaf6e369891b28781aa39db6e3949dc6a4cf91f7efadc9 -159f5e787c5f391c0bb79fbac11887837baedd76eebe724801813d21d038dc642f6def01af9144823511db9f93689fb836be3cefac67eed81fcc31eeb9ec7cdb -16ded4fdf65caaeb7f033d75c3898a912fab49de9975e1ea077a67aceb56c39e1a87b61235dab927573fc584400081b63909779469f4e1a6119f4598b320850d -37397737652ed65111ed27ed104d1911b8a33d666aa0767753fb484e5d24bcfc4c02c7fb9aafe6bfd27ffbf2545309b7cbefca5eed14e5198c0235727046b9ca -b1a9ba9d01d70d4920b037046639718d48b43e4c578f24ca111d6f9ada8e31d9f19ba2076fe774cb6126778cc79f30b0b3cd8d5f327f7dd53caee12528278f8d -58156a52cc61fb2261fd75d5c2b648c21d3d2bb5c18c675546ad8af31b58dbecdc9b4b9f8242208c0022d16b6e3969202263598ea6c1aab0b6472a0840400001 -440291e8d74c11897efc381a02332780482012336fa2980701084c49408944d45b8fc6580536e9188ea0cc650c374dd97a39370420909c4087f71d45051f76c5 -eb279e7afedacd7bab2bd7efdc78e9427d53bf55e1545e82bcf6c8a62a91887ad7078921000108cc848072efe10e5377881189e871ade43d044e000108402019 -014422dae98723232504200081fd214024819c4000021080402b014482c601010840000288040f8a4300021080403c0122097a101080000420402411af9ffb33 -31454921000108b4112092a007010108400002441244121080000420104f8048821e0404200001081049c4eb27639410800004204024410f0202108000048824 -88242000010840209e0091043d080840000210209288d74fc62221000108408048821e040420000108104910494000021080403c0122097a1010800004204024 -11af9f8c4542000210800091043d0808400002102092209280000420008178024412f420200001084060aa48e2fee97a557e0e37d40404200001084822903892 -5022b13e3dd7018efb3d3ee4f1a78f6c6ec366dbdf307280000420b02002238ac4c3b3c3d5d166287668c35024c907021080403b81114542bbf5ecdfa3c36c10 -ea68530e46e5e251fe29ffab8d3fcc78d5fae4be9766b53219e6c14a995b9ef2e1e3f31333d6b53e79c07d6c1080000420d08140b448a803ea5beb892b731285 -975f6927fe40f9703d4b9179f383b3dccb3bfe5dedc9d2983d66b4caa6f1879b6a296de0921db22d82692c113b210001082c98c0e5e565a06074110995bbf7d9 -2612764ec29b99a84f57787b2aa1868e26d6279b6292c31389ea0c7996f27e2642f9313bc2887a71d80301084060c10494df4f2e128112d43059dd38e15c8e44 -5567b9eb4140fd707b6c4bb8b0397006af187984000420b0f704848844f3709319173203504e9a7c302a9fc6d0a149c3709319bc2a5396e35ac598d5de378e50 -7507140420b05c025244c2996a2efdfeba986b2e428a6c6aa1186b3213d7fa4f7abf231b5e4a26ae97dbc4913a0840a00f81398944949fe2aed6285c24860004 -20d089002221e969c63edd018e85000420d081805891e824891d007108042000817d26804810494000021080c0b635fb66730b2cc1010420000108cc8cc01891 -c4821f44a46810800004164c40c5102389c4b3cf7d940d02108000040411f8f2c557471589053fb64ed1e649405d8df3340cab44139867bb4a61d50422a14ec9 -06817108e885c694331ae7749c654f08ccb35da5b36aec484235a37dbe938cb28f49c0bd6cc63c2fe75a368179b6ab44564d13492cbb0151baf9104874d9cca7 -805832098179b6ab4456cd40249c774264f5cd4a1b33bbf56d928b70a893b65d36f942bfd54ff632126e93874010811dee787394bf7a60575643fbba658b44fe -c238efed115cb110e84d60d76533e8fb717b5b8b4a4921b0bd5da92ec8e1c191792d4de39b0ec27d5d8c90ec6aedbb44aba501cf2392589f9e28acf92be78824 -a45c2722ecdc75d920121d1d8788da4f67e4d676a5de5da6de5f7076d8fc86020778880084a4299cfbaed6deb1aee72212f98bac2b6f7d70070432fd705e67bd -3e39abbc42aef6aaea748d839c6511d875d9942291b5b762c4497d5fab9ea079b37afbebd3091df695c0b676a5dc51f91e65f3b2cb956d4bcacb39aeacdcaf5f -80e6bf7cf3e850bf08c1fa46f7250835f8bb5abb749178f8388bd18c18d8374338b185fbaa6a3dde6780d65f55dd91852cf787b52104765d364e2451bed330df -e94c9539efb3aabe3e7d5f5d6408f965a7d9d2ae546bd18322ea4b36e2d4f8d233ebc1566604c5b4b16d6f68deede876b5f68e8e7136914476bde5019acbd4ce -2c7afbdd98a3e155d51d592cbb59ef67e9765d3695e126d34d51b38eaa27e85dae8daf4fdf3933898a2c94407bbb2a4207f3dab3aa43db3200e5bd46d346158d -fe300f2eea13e3bb5a7b47c7382b91c8b5370bf35524a1aede6aaf2dfe55d5fbe91629b54b60d765539d93c8e56173e0c6a95e2c6bde950be43d27d0daaecc58 -9376c779df7fd3f6fae4fae092a328cd22b1a3f9ed6aed8b1009f386512312051175e96e8924ea2fb55e68e765cf2fcb6ec5df75d97813d7f90b6ecbf1df5daf -4fa7a5ed2b81b6766586980a2c4eafd791844a70e0b531a7417a7e2fc0d1ed6aed0b11892c98d05769f62564b8498f536d9dcfe9e65f386a0104765d36fedd4d -d994b51a4736fdb85daf4fdf5717b98086d1b3082dedca19ffb037b91ad794dfef947dcfa7bbfc89e8f21980d2efadd5478fa9d85b277638ba5dad5dae4870a5 -41201981c8cba63a8f6d9fdd49665e4f57c5e15311886c571dbd736ce9125935833909ae400824231071d9644fc9166104cfeb24ab9158c737cff411ed6a4492 -89ac9a40245449d820301a01bd0aec68a7e3447b42609eed2a8555638b84a0576d602a04200001088c2d12a25f3382f110800004f68d0022b16f354e79210001 -084410402422609114021080c0be114024f6adc6292f042000810802138bc4c5adabf681b9e3bb11769314027d08dc3daebd74286b7f6ab7db0cbd9f4127a449 -07615a6aa2acfaafdeba288aa77e3abf84167a4a91a8f2cc2edb069d580465a18d630fccdeae0ad1224193de8336b3b588ba8f60856111ee6b429108e317966a -df9b26e5ef48605891086bac61a93a1688c3a6259057ee2d1b902ea2aea71389167cee38c0f1dd2276d7ca5c46f28552bbb1bd9f260f4bb2b31c1feb31ad224e -51a7901f024e7b292ce6ec4122615b9969365e3b74db5853c3a2492fa6b9ec2e88766bd6b9211237efadae5cbf73e3a58b6b37ef3df1d4f38aa0d29cfa63f4ea -094cf527fbc8b801bd139f873bf7f766b0cf7ccd2e56e3f96b7bccdf6cfc5fa68d1e43d8dd324821954088481469ca26556d876e1bdbdefba0494b6d27c17617 -5eca349a9d5e2e38e30913ce2e9270c2857c68cfd5e4ca5ce3d55b779d4921fff2d3318473b89d944423266c6eb33b75884898c0a11646e8e6e8b4c3368fe0c5 -bb34e9d93583e10c2adbc0dde3aaff19ee1c63e7349d48b89141596a6728a81eb87913dbee35192012fad695bceac6a6ccf9e64ac01389aa9baffeca478df408 -68f5068b3259a34ad0a4e75af929ecf2c63bd450b77c7f33a148e431434950dfdde45cb4fae2aa5c81cee052f6356cb8a97a0aa623525c1a62f3f4e3caca6ffd -a36ca6b627526d8755bf409316db188630bcd24fc8fb158844f73989bc46dc405c77cfdc3d395f3deda7ff68a7000326aeed3cb653494c590f711d2c298ffae0 -a3d3006badacd8516d87b5f0c37bf48726bda416b3a32cf5c68048f41489c15a4fd04c4350a2c14c222308f42110d45a8312f5b182632130e570536ffaeebd85 -bbf47a21915f6f6664306b0234e95957cf7e1a275a24f6b3ca283504200081f1082012e3b1e64c10800004c4114024c455190643000210188fc0b422b1fd51a6 -000ad5bb689b1fbd08c88624108000040620b0448fb4009158da9a8b03b454b28822507f06aeedd9e9a86c49bc8704f4fdceac02fbc26df56e70b556935ab1a9 -c7da4d59031a229258dc9a8b7b78654d5c642461e20a58d0e9f3b6c42ab07aa5be8422611f3edab5e866be4642d39a8bee8d84d963785932b3166cbed48e5e73 -e7226b9be5934ebb6ea25d504ba6284e1b33eda178bcbf5833b86857ea82d79f722949fbb01c4d8696e41168f148a239cd70b82978d14dede2f30bb575cdc572 -25853c9d1d313407565754e09a17dd96238cafb631db0abce6912b49db32c34c8045f0de9fa43b3d924014331409d3c9dbbde8a62312994cb42d19db146a946b -c47a2bcbe6d1059fa513a8b5316f1117af3f685b9a3b30c520d5d25b4997f295ad82556087196eaa2d74525d6769d7a29b652461ae62b3e6e2d675375d7790f9 -0a5eaddde55a58c631e5c2ae88c4326a74f252786313ac02db7be2ba3a731dbfe86635e4b72b6fb42f25eb0e2c647ec151090463f20b6c3403ecb0926e406a56 -2250241a161e1ecd684e248140a5dfbb90b580a61d6ed2014031e2d361d1cd5a28a2e7a39d4c6b6f2ef25787adad2c2ba12962634f02cec4b56a2fc54ac35e1f -a27170c96d5b4c62f5ac86e51ddee2914417747291104d0fe3f798000bb0ee71e5ef55d11189bdaa6e0adb9340cc2aad3d4fc5e11098070144621ef580151080 -0004664900919865b560140420008179104024e6510f5801010840609604662612fad691f2d185fcf7967b4878a06996ad0aa320b0a704cabbab73008b7050f3 -1389abeaa397552a6e656d1489fa33b17bda2a29766f02f52b7911d7766f2e64104f407773590576b805fe6a75905f9cb7b21536f23fa927dbb73fb2c8c51cdf -8c39c227402ba24d0c45c078306fc9afa1729f269f492389f2b924e7393af5355ff5446b847d1ab66961d75b175cded3341bf167751ea653cf5be78f739a35be -5805567ce54e59006f8463110e6a429170f8353fe9dab242965b0d8ba88329dbf49e9e9b5560f7b4e29317bbf048adeb5227b760f8134c271295a5338a613c83 -58fd777cd72ee56417d270d7f1674e62f8c6b03f399ac657ae341cb87653e3421dfb838d92ee2450b6105681edbf0a6c769dd656602d1067ffabf704ddb5b707 -b42cec4a24b1b3d592a09d00abc0d23a0626e08d8fb00a6cbf55601d95b05fdd71272d21664fcbc2ae88c4c06d7c3fb2cbda9b133ba85989c048825560f7a381 -742f65c523b10aec30efb8d64348d5896bb78a9cd8a27c3f907d8f1022d1bd39eff591cec4b5ba45825560f7ba310c59f8aa472a7b23439e63ecbca69b9318bb -a49c0f0283126015d8417192d96c092012b3ad1a0c9b210156819d61a560525a0288445abee40e010840403401444274f5613c04200081b4041089b47cc91d02 -1080806802938a44f579bada43133ed8e21e14d1c0311e0210582e01ef7ea645dc7e39b548442c97c8dd24cbbdb4a62d59fd4a5ec4b53d2dd43d3dbbeef846b8 -35019c662312d9bdea5b6309ae5b01cd49a689342d99f53647abf3b674cbfab24534add98844b916935e86f3f86e3918952f0c6b1ea52b1ec3363f73c9ce8e6d -3cca3cb0adea4c7f0a152a6f64347b2ae7cada5ef561ab39b6466cea43c0a95ff5bc35abc0f661c9b10e81d28fe50b592312fd96e5703cb17de8da5b2f21c35c -802e713be06d95b8ab2c7847596d30c765e770d4c23ebded9ccb86356e5aae85e5106015d8e5d4e5bc4a52382756817df6b9fe0bfc35caacf5ffd539ed6c904f -75f8eacbc16a7509f95383d814adab7eaeec3d15ee6a21f36a8758d39b40b57edd56e72ee2e47603bd1ee2523a89bd4992419540d9665805760c91a84e5154f4 -23fe4f3b44a2793ac4ac12ca85b05002ac02bbd08a9dae58de3007abc00e30dce4bdbfba32a6e4bc02504f5194cbff77f8931d1f6c1c6eaa65581fbf9aaee171 -e6810978a39a6e24ba3d926015d8816b6271d95526215805b6ff2ab0f5599d3a6277baa254143bf36c27aecd5bb18b153dbdb718b9f30dea7b6de2badce30851 -657ddac5b5e6fd2e901d62cceb9b5560f7bb350c58faaa4f2b7b23039e62f4ac26bdbb69f4d27242080c4660d73ddb839d888c20302901446252fc9c5c180156 -8115566198db9f0022d19f213940000210582c014462b1554bc120000108f4278048f467480e10800004164b605291f0e6feeb373b2d163b059b98803bb750ae -d942839cb85ae49f7e894d68729108583111f1907fedccb504d55b94f48db13b97f0a441ceb53aa7b72bb0094d6f688405538b44c88a895c9311154ad2280235 -91a04146f123b147207756ac02fbe20bb7075dbba971e59cea1040b98e52b9ce92f7ac36ad15021d08348844b67097fbdcb5cab56c756af996e287bf92180db2 -03ffc51de2adf1b5880eeef491c445fec06bb67692015a2e9b61be5516e4282ec545d05fdc2522ae404d22418314578df331b8f04bac023b68249155b0b362a2 -ebfdebb26c220cfd1f7db7f95c1c422d6916091aa4d0ea9cdeecd27db10aecd0abc0666cf58a893b4462e79bb0a76f27582087409b48142fb2a241caa9cb5958 -eab8afd2a7cdc2b2ee46cc62b82937dfae98b87db8a9ba5c6bf78273240474ab73ba1d95314c1a242d249e4073138acf674e47cc4724f209416f32d08c27158b -745a2d61ac694e6d48b22d5b44820629b962a7b2bd3a57ea3d353195513dcf3ba948f4b49dc3210001084020310144223160b2870004202099002221b9f6b01d -021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920128901933d04200001 -c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb643000210484c0091 -480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b2870004202099002221b9f6b0 -1d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920128901933d042000 -01c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb643000210484c00 -91480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b2870004202099002221b9f6 -b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920128901933d0420 -0001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb643000210484c -0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b2870004202099002221b9 -f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920128901933d04 -200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb64300021048 -4c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b2870004202099002221 -b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920128901933d -04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb643000210 -484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b28700042020990022 -21b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac3760840000289092012890193 -3d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb6430002 -10484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b287000420209900 -2221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920128901 -933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb64300 -0210484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b2870004202099 -002221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac376084000028909201289 -01933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb643 -000210484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b28700042020 -99002221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac3760840000289092012 -8901933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71eb6 -43000210484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b287000420 -2099002221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002890920 -128901933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d71e -b643000210484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b2870004 -202099002221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac376084000028909 -20128901933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424d7 -1eb643000210484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b28700 -04202099002221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac3760840000289 -0920128901933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf6108000042413402424 -d71eb643000210484c0091480c98ec210001084826804848ae3d6c8700042090980022911830d943000210904c0091905c7bd80e01084020310144223160b287 -0004202099002221b9f6b01d021080406202884462c0640f010840403201444272ed613b04200081c4041089c480c91e0210808064028884e4dac37608400002 -890920128901933d04200001c9041009c9b587ed10800004121340241203267b0840000292092012926b0fdb210001082426804824064cf61080000424131855 -24d4c9d82000010840401601a5712fbe705bfdfbe8e1e3904d257ef6b98f3ef1d4f3d76ede5b5db97ee7c64b17ea9bfaadb25025af67a173e703010840000242 -092417097502360840000210904b206124215439311b02108000045c0221634d2a4df4705360be248300042000810510402482a66e1650d31401021080400702 -880422010108400002ad0410091a07042000010820126177047788c53804021080c082091049d08380000420000122092209084000021088274024410f020210 -8000048824e2f573c1838c140d02108040200122097a10108000042040244124010108400002f104a22309163f0924a016d70d89e6027323193c876d03813c43 -da3069964da08b48c85a3c7d126b35d690a6a3976467db4e009ec3b690709e216d9834cb26d05124960da57fe9c22fc2b6f776f4b7614939c073d8da0ce739ec -79c94d22014422c98455f8458848845c36f00ca1149e269c67789ea45c2a01440291484260d80b26dca921ba21e4c37986e4469a6513402492b8c8f08b10a716 -7281c1338452789a709ee1799272a904100944220981612f9870a786e886900fe719921b69964d602c91b87fba5ead4fee17fe48fd5c9f9ec7dfb19b55469655 -f939dcccd1c7855f843d9d9a3a91bbd51babfaabdaa9ff6dfcebf6c367d2fa53f00c2f781bbd10383b2b282493c1d384f31cfcd464288ec09822b15a5961e829 -1283e453779a7dacaae6167e11f61709eff679af092a4bf41bcfd5bf7567a7ff6a3f7dbc619b3e0d7249a4e0e9967d7bc12dc33adb9da59b27e1709e3b0b4882 -c513185124d6a727072bd3f1efe38e2bc79e1dae8e36dd22920589c49666ea3ab8bab3f3f6b479c36e97c180b9853bb570d1ad97bdad985b44420b70207f1dd2 -ed3c249c76e7dcc279861b43caa512185524cead7f77bf98a1a37c306a73b4324edf7a7ff5c519a7d2c34d5e2491ed393acc06a18e36e560542e1ee59ff2bfea -ebb94c93e75c4993853b4acc560767baca3707eaf40f62ab3ffc220c776a6de3458d4ec71de5b03184dee9e6d328126e329b8f3ecacdd6e6d398c626d65fece1 -b124ed81510f27869c658b40d64ba421b795b4fe27178e5b41faa493130e6f9f212449b36c02e38a44ee73b360c238fa0727eb4200bc3d995ab8299dce5a654e -a2f0f24648548626583957df94a377e642cc9e87b593da3415e9d28ad2315209bf08fb8b84e7b9ac53d68348d62bd9ef9ecff2fcbe9b4c3b779b8fed087b7bda -d2e853db0cfbf4a353f06c1389b6526fa151ff535d41ad30cc817038cf65bb3f4a1742606c91c8dcae8a03b43bae4e41ab3ebcead76b15d91cac4f36a76be5e5 -37477e47be3e54550f506cc0e1851d9550438730f9897468e2243662a6b4aa08294268baae61f09eef9648c24e2ad87eb75582ba48d42309775ac275e5ae1b75 -f371cfe26a8c97c61e5eff1205539b3438cf2d22e116ca15dac6fd5e80d598eddc0887f38cad29d22f8fc0f822f158f5e8d707478548d46614325538cd842497 -93cdc9dabf7fa98f481865aa9eb451637279c8b4cade911533f3117e11f68f24eac34d6dceddf35f6d5dfb469fbe45245c0fd81837881389c612d9c0c8fed52b -97a70475c1ae8f4105caf0e084c3dbe7f25c1e258a25308148e46338fa4ea77274281f17b2233c661a4075e7cb8904eba3b7888493a133dc6424c1196e72e6cf -756c518b241c23bbdc621b7e112e4324ac43dc1288d83199d8363a4224e1dae6396e5ba2b6fd9ed6eaacea7ad0b8335c2486251cde3e3b5416872c8cc0242291 -0513c5edb0b960e8611fd3677794a371b4679b483893d2a5df5f9be72aca2733aa272d33d4fb8da8749bb2b617f3e0c3236dc34dee1888eb9bec7eaf771feec2 -dc8114f5ddceb8ea9cf59ec634ee6097dba1ae073d819753b8530b175d8f5be3548d2d75634975d96d013d2c2191c45484c379065610c9164c602c918819ab19 -1277f77b6d3b4e598f2c12da8b350e74783bad13f43c75a3e37677ba131ede908bad296f52c43bdceb6b77a8df70a7162e121e3acfaab61279fbad52bab9d5b3 -aa17795ac2e13c3b5416872c8c0022d1349a94df5bd5e1ce57b7233f4e24317273accf6aec34a0b17fbdf3282f41b8538b1289583346483f0ee1709e23149953 -cc9cc0d24562a20826fc2214e7d43a0c19e9de779f2b61c13cb7071981d0620987f30c3480640b268048749997ded920c22f427122b1b3ec2912c07358aae13c -873d2fb949248048201249080c7b31843b354437847c38cf90dc48b36c0288441217197e11e2d4422e307886500a4f13ce333c4f522e9500228148242130ec05 -13eed410dd10f2e13c437223cdb2097411097dbf0adb7602e17737413284003c432885a709e4b96cf747e94208448b846a5b6c8104422a20302b92053a354085 -1308699fa48140b448800c0210800004f68700222160447e7f9a2325850004e646009140242000010840a095002241e38000042000014462a2f539e61639620f -0420008128024412f420200001084080488248020210800004e2091049d083800004200001228978fd8c1ab623310420008145122092a0070101084000024412 -44121080000420104f8048821e0404200001081049c4ebe722871729140420008128024412f420200001084080488248020210800004e2091049d08380000420 -0001228978fd8c1ab623310420008145122092a007010108400002441244121080000420104f8048821e0404200001081049c4ebe72287172914042000812802 -4412f420200001084080488248020210800004e2091049d083800004200001228978fd8c1ab623310420008145122092a0070101084000024412441210800004 -20104f605b24a1fec60601084000027b4ee0d9e73efac453cf5fbb796f75e5fa9d1b2f5da86feab7dacb060108400002106816894b3e10800004200081cb4b15 -483544128acc2267ea2914042000010844114024b8b1010210800004b6dde0442441fb80000420008166024412b40c0840000210209288bf41386ad88ec41080 -000416498048821e040420000108104910494000021080403c0122097a101080000420402411af9f8b1c5ea45010800004a2081049d0838000044a02aba57fa2 -fce3b21fb856eb6d84d040247010108040452496ea19954f540a18e2166d1a85e2cb175f5de4a697770da18148e0202000015f2496e716b54fec2612219e545c -1a4482cb1e0210e84240b951dd7d16e7f5b61bdc5f24b4c02ce35f551044a2cbe5b1b0ab82e240a0030144c28566f5323604e9407eb4437459100944020210e8 -420091681489d13cf868274224ba5c1ea3550f2782c06c09201244125ee364e21a398100041a26ae93c8d8e6a8b8c3767d72bf38e9fdd3f5faf4dc3cc9f4e064 -bd5a953f07ab9afe7312dd809c67e5319fc3cd60c5795481d6255b22892ed4ba35028e82c09208248c24328538da6831503e6e55e884e3ef3607abd5c1590a9e -3d45a2db9c44a610a5e09d1dae5683e9440f91604e0279800004ba134826122a4470a207a5134a33b41e14feaeea52bb17a151637a8a4427ddaa1579c0751f7a -88842e0b91c4c02dac5313c10608c823904a24b2d0a10823ca6022dfa3fd9d1b670ce84c8bac7a8a449748a2c58f67d1923b0095273b297616a1461676e88fd9 -9301d49f5c6b7b88049184bccb120582c07c082414097fa641f9c14224528cda5795a6a74874a9a09d7e5c27c8bd7fa90419a56c62c6510ba50a4e50628fea37 -73432481544000025d082414892d9184ee1dab60a29fe3dbe2ca7b8ac48091443e1f63e7ef7391b0a56e1300f7101d4c6cdcd9feb88a269288e3d5a583902016 -c60c08cc84402a91c87ac73be6241ee53de8f5c98314287a8a4427931ae72454fc549db10f1589da605d3f412592402a2000812e049289441e28ecbabba972d7 -d3a0bdb19e22d1259278f8b8e9eea662904d4fddebe1262f92681e6e7227278e363bc7b2dae9114974b9303a7513381104164820a14868b7e8cebeda196ca753 -9c3f5850ed350fa1163d45a2b38ba83f27e1ee691109d5ae6a13d7e59ebe13d7dcddb4c0ebb67303e54008c412482b1243b8fbd812b93e31362060ed267db3ec -134f3d7fede6bdd595eb776ebc74a1bea9df0a4db79ae028084040340144c2adbe452e884b24412401010874278048348a446c0832e78e027312dd2f8f39d72b -b641601c0288049184d7d2186e425420008192002241248148e011200081560288445b24a1476996f1af9e8ee61dd738020840209a801609e54196b7f18e6b57 -ff1089e86b639c015fce028199135022a19ce952b7d8f9e7a5eaa5ee011049a0131080403401bbaad052bf4489f452c5d2962b840613d7d157510856d2400002 -10580601440291800004200081560288048d0302108000041089e9168d5946c84929200081fd244024410f020210800004882488242000010840209e0091043d -080840000210209288d7cffd1c7fa4d410800004bc67b3799f049d0808400002106826c070132d030210800004186e62b8090210800004e2091049d083800004 -200001228978fd64f20a02108000048824e8414000021080406424b1bcf78d50220840000210e846a0e11658b58b0d021080000420a0095cbb796f75e5fa9d1b -2f5da86f6c108000042000018f801109a5136c108000042000018fc0ff07685cc7b12ce019120000000049454e44ae426082} -\pard -\pard\plain \absw7860\absh8595\dfrmtxtx0\dfrmtxty0\nowrap\pvpara\posyt\phcol\posxc{\*\flymaincnt0\flyvert9281\flyhorz25602\flyanchor0\flycntnt}\ltrpar\s16\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb120\sa120\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i {\rtlch \ltrch\loch\f1\fs20\lang1033\i\b0 Illustration 4: Class type definition} -\par \pard -\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par -\pard\plain -\pard\plain\absw8025\absh8850\nowrap\pvpara\posy1\phcol\posx2{\*\flymaincnt0\flyvert44304\flyhorz44288\flyanchor0\flycntnt{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}}{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw535\pich590\picwgoal8025\pichgoal8850\wmetafile8 -89504e470d0a1a0a0000000d49484452000002170000024e08020000008b3ab220000000017352474200aece1ce90000000467414d410000b18f0bfc61050000 -00206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c0000469049444154785eed9dffd71d477d986fff8ffe -ea53daa639ae699226694ffdc6a727fe014e7b7a1a4a813ac6817382a4d410de03c13507055b08458657c6028cfd1a238560c5c6bc562c4842a34ac1b6702359 -1531b21d8ee0057f4516365f62200492b79fddcfeeecec977b7776eece7df7ce3ef7ace5fbee9d9ddd7966779ffb99d93bf34ffec56bef9bf082000420000108 -f811b8e2bae3373fb0c902010840000210f02030518b5cffb91759200001084000025d09641679db67bebd8305021080000420d091406691b71c7ef12d7fc802 -010840000210e84620b3c835ebcffde65dcfb3400002108000043a11c82cf2ba8f6efef78f7f9305021080000420f0f6a3975e77d363af7de743d316f954d228 -a8cc22fffefd8fff879bcfb3400002108000044412efbaf3c94f7ee9c5c665fd4b2fcaa79246416516f9b737fcbf5ffe5fe7582000010840000212827ce4d873 -371d7b7edaf29163cf4a1a059559e4976f38f34bef39f34bf7bebc25af27be91bc7fcf99bd4f247f7df9def423bf4533cc5fcffce579cf7cde73e6b7fef2c792 -cd3c3978ef9a0d210001088c8ac07fdbf5e57d479f79c79167f4e62d6f74317fcaa79246996416f9d5f73cfa6f564ffdc291979244e7ff46decbf281f3c95fa7 -8e24ef3d964a6e1e39b00904200001082c9e80c419b6455424261e90f7f2a9a4d103738d45342ed1571610d871c6a5e77f4ba474dbf3c97ee47df2d1cb7f3c2d -7a68d9f0c7cf5cb262204d9ce599c749f51cea6bfc8227b682000420307a02af7de797deffb9a7df7a77b2d8ed49f25e57caa792a6432cf2e6133f4ae471e29c -51e22fac3d23c2d0351a73c87b5db975e947a9b35efa804636c63d9ad87dc3342432f190896cb237979e79b3e4b67aeec8f967dedc94e7e2edcd1e21000108c4 -416065e77dbbeefedad51f7ce2ea0f9e97c5dcc6f54f597ee7eeaffddaefdcd72116d13e093b10b1d7641f486f8ac6225b2fef2d4cfe8d2fdb2679e21b6e1bea -5692cff93f4ee29234c3bccfa6de5bd39ce7e8bf4d8caa1997c24200023d12b8fcdac3d77feac97f77e3a3b25462915fbdf15159aebffbc92bae3d5c8a45ae7c -f7a95fbcfe4bbff8e9b42de9ab4f26efafffd207be9ab62c7d3a799f7da4f97df5c9eb8eff30893f8e3fa629b365ffd389455e7cfa3a7ba5becf3ffa80db869a -ff978f2719667bc98fad745469e6cd07533f06d640000210808003815ff88dcc224621b64ee4bd5844d2e89d3feb17f9b5779f7af5db4ebefa6d4f9c4a36bab4 -a7fa5e3e4a970f7c33f1c4e34fbcfa50ea9b2c65f9d38bdfbc5613db8ba677df507794bc7e78cf07d2ac2a39647b397dcfe3dfbcb6f160eac7c01a0840000210 -7020f0aa37dcfe89e3dfbc6e7fd696246f74d19bb2bc914f258ddee4338bfcfaef3df2eab7fc45ba3c9e8a445fafdc7353b2f2da3f7ba558f7edcd6b35e54d9b -459fbd440c7ff668b6264fb0e72bc54649e02209dc36d464d9e65f793cdbea931793ecf44f7daf2fdd5dfd60b2e268a1582000010840c095c0abdef071f1c407 -ef7d62da925ae4637a6bcd2cf2da1b1ef9d7bff9672c108000042000819f7fe3c6ffbcedf4e74ebf306d914f258d82ca2cf25f6e7ce4f2377e81050210800004 -20f073bf71f45fbeeede57bdf1b657bdf1a02eff3c5dcc9f3ff7fa7b258d82ca47637cdf23ffea754759200001084000029d08641679c3cd8ffefceb8efedceb -8eb140000210800004dc096416f9cfef3dfb4fffd3c63ffbf53b5820000108400002ee04f259aaf69dbeecaa83972ebe244be9c92afe984e4071b14000021018 -3381aa45e49e7961f3591617027bf6de32e65387b2430002101002258ba842e0e248e09ecfdc8b481c59910c021088950016f16f92c222b15e15940b02107027 -8045b0883f01f7f38c94108040ac04dc2c72e6c0caca81b3be3dc91b3b26f2dab9d1dfdd6afaf1f4bfafe9a5261689f5aaa05c1080803b81f92ce26497a33b27 -bb367c0dd45c92a9fbcdf7352d81ae379f3a1dff54f96111f7f38c94108040ac04c25b64be3b75378b38eecb31599bf9b048ac5705e5820004dc0974b1487af3 -5d4b9ba7d216aa736b2be93b6dec924fb34f56d6cea47faeecda99af9aa4e1883637e59beb777c891eca6b2af9d8b7f2e2a3c69d9aac766d58318775c0e5a3aa -0425d951a46153b5a4cde10816713fcf48090108c44aa0a3454cf746a569e8a2182595477e0b4e5a8d264627b53e952c1a483c94f7978803247d2d9fc22256e2 -8d5da9ba9a766a94a692683ce06a8b5691f35939a01d47d588d9814d0f5cb048ac5705e5820004dc0974b488e963af7730146146129eac6de41df2f65db8124c -d46fd0768234ccc9cc64e4a452317b9fbdd3caae4df051b1c8b464f6be9a5ab7b088fb79464a08402056023d5aa4dc85ded083add14659039547bf128b4ce98a -6fbcd757123beac131191669eb198af5aaa05c1080803b819e2c92342e594d4072736fb6486e88a249aadea255cea7a9452b6977ca5ab466eed43116b10ebe68 -d1aa445dc4221805021080401381f92c92f58dab1b4ce776b93bc4ba9527f768f3ca6ed3b5def54a3e8dbdeb2bf2d2be96993b9dda54a55b9555a7076677ab10 -8b70cd400002106823e06691b65cdc639f9852d22f12536d52160840c08f0016f1ff453d16f13be7d80a021088890016c122fe0462ba12280b0420e047008bf8 -df438945fcce39b682000462228045b0883f8198ae04ca020108f811c022fef7506211bf738ead20008198086091792dc2ccf410800004464b40e67bc522fe16 -d16f132e33b49306021080407c04b43d068bcc6b91982253ca02010840c09d0016c11f1080000420e04f008bf8b37377352921000108c44a008b601108400002 -10f0278045fcd9c5facd82724100021070278045b0080420000108f813c022feecdc5d4d4a08400002b112c02258040210800004fc0960117f76b17eb3a05c10 -800004dc0960112c020108400002fe04b0883f3b7757931202108040ac04b008168100042000017f0258c49f5dacdf2c281704200001770258048b4000021080 -803f012ce2cfceddd5a484000420102b012c82452000010840c09f0016f16717eb370bca05010840c09d0016c1221080000420e04f008bf8b373773529210001 -08c44a008b60110840000210f0278045fcd9c5facd82724100021070278045b0080420000108f813c022feecdc5d4d4a08400002b112c02258040210800004fc -0960117f76b17eb3a05c10800004dc0960112c020108400002fe0422b48814890502108000045a096c6d6db9c71cd352c669913d7b6f6181000420008119042e -6c3e8b459a433015a3d0e1050108400002d3082c814556269395b573591074e6c0caca81b317fd9bdedcc32e2cc26503010840a095c032586465d7ce9595b533 -a939b0486b959200021080c002092c85450e9cddd835d971d4b6c8d9350951f4950a26b18bc826f97be7c639fd70e7462e1e3ba5731c63c522275627ab278a5a -a9fce9565d9beb57e7476ce7e5b631a9200001080c94c09258e4e24b1b3b522bd46311158cac579dc89fe64dd2f67574e764d7869aa3631cd3ab45443c57af6f -a62741a2938e1e914df2ad077a1e71581080c058092c8d453207181324da30d1c881b3f67aed38d13576b224796e148788a44f8ba081b15e60941b02d113581e -8b5c7c495ab176ae1937947b4a6658c4b737bed522a68d2a8b138a36ab7445628ed5d5a4194b228fe4b36a383135bd6c62072e57af9f30b188c434d92b0b672a -99447fc25240084060600496c9229792e62969afb2228f542da535559d249b641d240ef187fd04579b45f2de91ac85ca0a37f46d551c15e9cc4a6fdabfca79db -6d619aa496c9c04e2f0e070210889ec0725924edf648630be926c9fad677ecca5aaeec862cbb17a4d2f6e5ec92368b6456a805227a5c7600513e8bccfddfb4c8 -d5d36776c82561b4540967ac1efb6ca7daf5c20b021080c0a2082c8145dc7fe1d16f4acb22e56e8df25f691bd3ea897a9ff9d4be90348869499f6e6c1ab26659 -a46347fda24e2cf60301088c84001699fa0346fb5787a5677bf58fa2c1aa68c0b2fa2a524f343e96953557591ad1b7355515dd234568629eee2a229ad24e4772 -da524c0840603004b0889345f4f9dcec65bba1d49064babe4def7af670af5477d12d5e3ce63b2b7da93fbe104cad77bdc89867810773557120101813012ce268 -91319d1494150210808033012c82459c4f161242000210a811c0225884cb02021080803f012c8245fccf1eb6840004208045b0085701042000017f0258048bf8 -9f3d6c09010840008b6011ae0208400002fe04b0c82c8b081d160840000210984d401434ffd021fa43efc915d71dbff981cd6bf69dbeecaa8392afec78feacb7 -2b077f35b32504200081911198ff461da145e687420e1080000420e048008b4c6d19732448320840000263268045b0080420000108f813c022feecc6fced83b2 -43000210500258048b4000021080803f012ce2cf8e6f2210800004208045b0080420000108f813c022feecf80e02010840000258048b4000021080803f012ce2 -cf8eef2010800004208045b0080420000108f813c022feecf80e02010840000258048b4000021080803f012ce2cf8eef2010800004208045b0080420000108f8 -13c022feecf80e02010840000258048b4000021080803f012ce2cf8eef2010800004208045b0080420000108f813c022feecf80e02010840000258048b400002 -1080803f012ce2cf8eef2010800004208045b0080420000108f813c022feecf80e02010840000258048b4000021080803f012ce2cf8eef2010800004208045b0 -080420000108f813188c45ce1c58994c263b8ee6623fb7267faf1c387b717ad96493d9092adb764d3f63d77c0401084000022981215964455eb936542a8d9230 -32e86a85aee939452000010840a08dc0a02c72606dc7cada9934f8d8d8b5b2635773a88145da2a95865a084000020b23302c8b9c1579ac9d93c26f884e36f206 -2b8d4b929738266de9d23025d5c9da8eecb39d1ba97e8ac4bb36f46e5bacc9829bb35916925db22f160840000210f02610d02292757d997aa01a616471c6d19d -c57bd1461ea094d2647a28e491347f258ed135892a925e96628dc4376913d9d19d935430895d72d334b9a4f1f859090108402026025b5b5bdefed00dc35a448e -aff26ab14872d3dfb521b77b11807146166ce4e1881da3d8fd288578f210a4714dea9534ae690944ea07cf1a08400002311110012c81455c2d97f776480c21af -249e282c528e181afb452a618a861acd16c99ab03692a6b059b188eb91d32606010840603909c46991a2a129b385d524a56d50332c32b3452b69e352af24fd2b -e212abad6c39cf003c07010840601e02915ac4dcd08b0773a527c3f4aecbdd5fffb47462220fbb2fbdf2d070d286953d494ceffa3ca71ddb420002d11088cb22 -44031080000420b05802588487742100010840c09f0016f167174d404a41200001087813c02258040210800004fc0960117f76deea664308400002d110580e8b -c4f4234fca02010840201a02f27bc3a5b1c89ebdb7b04000021080c070085cd87c76c92cd238668016a3f5f529ebb53b7f5d79e5a4754312400002101803816f -bdbcf5d39f7528e8e64b5ba3b3481d8f984584d2011b4921000108444a402c22af1ffc78eb85ef6f3dfddd2d91c4d7bfb375e1d2d6531793e5c96f27cbf917b6 -fefaf97f7cf16f93948fbf8045b6b6c422172e5c4024915e14140b0210e840402d220a11917cf7475ba28a8b3f48fed4e5b9ef6d3dfbddcc2ee212793df6ad9f -44128b3842126148ca93279345dfcbeba1871e128bc89bb944b2b97ef5d5eb9b8ec721c9baa677cf9994108000047c09a845240a1185bcfcc34221ea0f5588a4 -9118452df2c8df7c7f892d521ae5bdfcc73480620e55882cd288a5ed58621159fffaf495fc2df777c96df584c9e4c4ea6432cd1046065dadd035bdef39c17610 -800004dc09a8454412260a117fe8a2f2308b346dc9ebe457bfb3dc166944230a98611131c724e9574ffe9d5c79a54929e188e824b3c8d5abab26b2486ef7f29a -12676011f7d393941080c0e009a845a423c46ec51285fce9e9676c85c87bb5c85f9cfbf6b82c92f67f24fe90b04314622c22ebf5955b64fd44de402581c8ea7a -fe878629c94bad62fd9d7a675da296f4954532c5e7796853acc9f2a86639f8938c03840004222650b1884621a2105db4b35dff558b7cf1ecf3a3b148de92a52d -57aa9052d072e1886d91cdad441f2734d4c8028e748d9e3ef51024b541f6b1244c2c93b484e99ae4c3e45db126cb21ff40d29c58b51ad1223e49291a04203060 -026a11791c4be4a1e1885188be117fe8a216f9f3c79e5b7a8b547a47a454daa22505b37f4472f2f593addd93ad2389422ebffc721589fc2bcd5a5b178e24e9cb -b188441ac92d5f35605c52da597ad36f6cd12ab927b78e7152c943c54e067c5e71681080c05808a845c410952844d61b9de8b3bfdabb1e8345ea75dbd82f9258 -64b275727272f764b7f47f4c4e26b1c9e4e464b27b92842022125d2a62d058a26e05b3d7792da219e192b15ca29413020327a0161143c8e358461be6e95eb366 -a4161191ec4eac3149e491fa238d48d2c0a5d62f22b148f12a5ab4ec47b7ac20c3764ff1beb1452beba64f9ab2d2b6b2d5acdb9e67b6067e7171781018050163 -1179a25745a20ad15f208a3c648dfcfbb517c7178b24f59fba439ab3e47fd290652c92c522129c546291c680c3346ae54f6d691c613fd5556ae62a77b7675147 -915eb72efaeb47719e5248084060a804d422f28b7479a3f2d0451ff3d5b62c5188749c481a792d7d8b56a553c4fc39ad82f497861a88248bf4af5f99b468e92b -7bd277a8b5cb7141000210084dc058449c21efcda20a3116918e13190465e92d62d3741c8d31f99d88061c178e248330ea7359da23626291d0b544fe10800004 -864a402d72eed99f49cca10ff556fca1a36949c7c9579efb87315a4487cc4a24a24f64a516494210e96c3f299def27b39faf0fb582392e084000024109a84564 -ec2c69b01255d417592f8b28441e0296d789c72f2df193be1e2825fe3003c2cb1b7dd237fd57dfef6694780faa6c0201084443402c22818863711ebdf0cae846 -8657348ecd5f9af857ac972359924100021058520262111941ebe1a7be27dde65ff8aba7ffe4d4378e3ef2f5faf2e097378f7fe5a28cd88845a656b4ba432d72 -6bfa327fea1b5e10800004e22320dd1ef268affee450daaca469eb3baf24e3fbca40f1affcddd68f7e922c3ffefbad9ffc345b247d242d5a9dc28bd6c4e289fd -fbf7ab48ce9c39733e7dc91b5da31fc577f6502208400002e3b5488f75af9eb8fffefb1f7ef8e163c78e1d3a74e8f6f4256fe44f59291f21921e819315042030 -1c0258646a5d4cfb65497db8140d38c416870f1f165b9c3a75eaa9f4256fe44f59291f99f62edd5f6da0dea6c3983686fcb41fadf363f6e15c581c0904464300 -8bccb248e3678d836e8924340a1173c89bd7a42f79237f6a4462b76865639964b917439a5477d77526122c329aeb968242603804c66b91d6ae0edb16d3de4b45 -9abe10a310230c558b8a44fb48d28acf46816f7046696493ea4c249b6683dc16e589469876643897154702811111c0224eb1c86c8bc8e358d2972e1d21d28a25 -21889da3fc292be5234920c9b2c6ac866910db6622b13729869d37b39394c79c1fd1094c512100816d2680455a2c52e91d91d46a143319893ed7eb65913c7ad0 -59ad4a7b9a3e1389ecdb1a30b834db3b2d5adb7c35b17b088c91c0782dd25adb0b6ad1ea3a134961112d8135d1081669ad54124000027d13c022f3b668e9f6fe -bdeb5d67223116a94f34624da6dbf779427e108000049a096011278bd889423de9dbf4f06f311349d1de954fed6e261e91a947b279abb2550ddd2e9cff108000 -04c21018af455c9ed1729c8c845f1d863939c915021058020258c4a9925a95c308284e1c490401084447008b385569ab45b46bc40cbfc8688c4e58490401082c -3f81f15a245cdda94e2a439e84db1d3943000210d84602e3b5884b78612aa653622cb28d2734bb860004164c008b380177b1082d5a4e2849040108c445008b38 -d567ab45e85d77e248220840203a02e3b5488f55d9f393bef59fa0f3a3f41e6b8bac2000815e096091a93883ce2f92cd30d2f8fb402cd2eb294e661080405002 -586496451a3f9b7f7e9124db4415abab573769048b043de5c91c0210e895c0782dd2dad5116c34c65c22eb9ba59946ea23a0384d88d8ebe94066108000043a12 -c0224eb1489ff38b1412b127ac4a46ccca660ba98fcf48bf48c7d39ae41080c0c2086091168bf43fbf48d69ca50328e6d188ed89fa58f158646117043b820004 -3a1218af455a41856bd1aa4c4995f48d6091d6fa200104203048025864de162dddbecbfc22e56940b268a4e822493e4ec4525f33c8338883820004c64d008b38 -59c44e34effc22d5e6a9dc163a97884c16621eddaaaf19f7c94ae9210081011218af455c9ed1627e91019eb21c12042030280258c4a93a5a95c308284e1c4904 -01084447008b385569ab45b46b84f9459c68920802108888c0782d12ae1219193e1c5b72860004864660bc1671092f4c6d754a8c45867696733c108040380258 -c489ad8b4568d1724249220840202e0258c4a93e5b2d42efba134712410002d11118af457aacca9ee717a91f1923a0f4585b64050108f44a008b4cc5196a7e91 -8a125c0c31238dcbe6bd9e316406010840c02680456659a4f1b379e717c1225c821080404404c66b91d6ae8e50a331365a249bb42a8b7f8a21e24d40944e6765 -0de3a8d35b152bb2211db3f48d73284674da52140840603004b088532cd2e7fc22d32c920ec198bcb2a946ea338e58872a1faa6a8adccc2a7be5604e340e0402 -108894001669b148fff38b4c8d45328964938e9c902975f3356693c6f910ab61891e7216cf447ade522c0840602804c66b91d61a58788b569b45f221e34b2188 -2d18dab15a2b9504108040df04b0c8bc2d5aba7d97f9456ab3ad4bd8600728d3661cb1d2144229262bb15ac0fa3e4bc80f021080c0340258c4c92276a279e717 -d1ce8c72b779698d698caacd2f92afb0e620d16e14999544274cac64cb890f010840203081f15ac4e519adc5cd2fc2cf3e029fe8640f0108042280459cc0b62a -67de1150b088533d90080210181c012ce25425ad16d1ae11e61771a249220840202202e3b548b84a6464f8706cc9190210181a81f15ac425bc30b5d529311619 -da59cef1400002e108601127b62e16a145cb092589200081b8086011a7fa6cb5c8bcbdeb4e474122084000028323305e8bf45815c1e7179163e521ae1e2b8cac -200081fe086091a92c03ce2f52ca7af5848b215cd2f4775a9013042000014702586496451a3feb797e11c78ac2228ea0480601082c96c0782dd2dad5d1680ba9 -9dca7aed543f73e6cca143874e9d3a75ecd831fdd588bc74702d59291f49826c7ddd07ba26fd773d1dcea4189297414d167b3db0370840a02b012c326f2c226e -b8f5d65bcf9f3f7ffbedb73ff5d453af79cd6bec1ce54f59291f490249967c648b417d612c62c6732f0664cc07d52216e97a6a931e02105808012cd26291e0f3 -8ba857f25864530f67da9a859c13ec04021080803b81f15aa495d1b6b4686191d67a210104203028025864de162dddbec3fc2233fb454a1649067dcf669eb267 -a81ad409c4c1400002232780457ab08876b03ffcf0c3870f1fdebf7fbf74a74b5f88bce48dfc292be523f3cbf6865f7ecc68bfaa4d3132f2f395e24300024323 -305e8bb83ca3b5b8f94586765e703c10800004dc086011274eadca610414278e24820004a22380459caab4d522da35c2fc224e3449040108444460bc16095789 -8c0c1f8e2d394300024323305e8bb88417a6b6c2251eda09c1f140000210e844008b38e1c2224e98480401088c8f001671aa732ce28489441080c0f8088cd722 -e3ab6b4a0c010840a07f0258a47fa683cbb17d24c77484c8ec67f2d97891e62f26c81a5c857240101812012c32a4da08742cad164912acae264342a647d0f067 -f649a003245b08406079098cd722e1ba3a3ae5ec70eae4a3a0e8b8f1c5c0f2c95f1a285466252992245e28ffd5b43fb54c69d02efd3bdd838945ac21ed53df64 -b231a3db374e8b5284340e2525090420b07c04b088539d751243a7c46dbb4f6edd7a334f5f8951ccbd3d7997dedab304ea016b8b13ab8569e4b63fe595872a46 -23d68acc5b1517a860cc0891c941a5298a6951f2436e0d83dacacfe71080c0c0096011a70aea240649ac8bc9baf2a7d32e3551e52e6cffa9b6a8ac496ee61abb -58ea997d2b2f3ecd3562d6548689b482914c576a977afacac4f21d0a4c52084060c9088cd722cb51513e1629a296cc25332d62ab416efe591b98d545b2ba9e4f -a265fadfeb76b17542fcb11ce7164709817e0860917e3806cbc5a145cb7eb62a6dd15ab57ac9b30e0c3b34291d6b397fd326563461a5914d792ac6ac29ab1282 -144149d1ec160c0b1943000243218045865213538fc30a16a6f5ae27cd4ae59bb836291917682357434f77356e483572220d3ecc01e50d5da6973f7b9e6baa45 -ca73cbd3bf3ef8538c0384c03c04c66b91ae5d1dee943be5ec9e2d29210001080c90001671aa944e62e894d869f7248200042030540258c4a9663a89a15362a7 -dd9308021080c050098cd72243ad118e0b021080c0321118af453a450ce1122fd3c9c2b142000210a811c0224e27051671c244220840607c04b088539d631127 -4c24820004c64760bc16195f5d772931bf3fef428bb4101833012c32e6da9f5ef6fa2f0ae104010840a089001619fe792177746b68c5e278a7adefa34458a40f -8ae40181311018af45c2757574cad9ed24cb07b3aaa69eb6de9e77241f1c3e1b67371b90a41857a53c465636406f6691522ab74325150420302e0258c4a9be3b -89a15362a7dd6b22bda5d7c392c6f5e9ca3cad99702a1fc5dd1a83319983a43ebc3cb148878a212904464d008b38557f2731f439bf48fde8a60d985b595f1143 -75c28ff21c2458c4e92c20110420d04060bc1659bed3a16b2c521931bea1c0b94bb0c8f29d0d1c31048642008b0ca526661e8767bfc86696692d7ea9cc412243 -c1e7ad5f0d73874c9d9b6429d07190108040580258242cdf3e72f77a46abf2830f6b9292749a1133574836e988f9bc3a77884ef5de3837491f65230f084060d9 -098cd7225dbb3a96bda6397e084000022108601127aa9d94e3942389200001084441008b3855231671c244220840607c04c66b91f1d5352586000420d03f81f1 -5aa45378d129f1af58affe6b8c1c210001080c89001671aa0d178ba83b243bf9f7d6f465fed437bc20000108c447008b38d569ab45c413fbf7ef57919c3973e6 -7cfa9237ba463f72da1389200001082c1581f15aa4c76a524fdc7ffffd0f3ffcf0b163c70e1d3a747bfa9237f2a7ac948f3a8b84193e7aac21b28200048211c0 -2253d196869e2aff51d946030eb1c5e1c387c516a74e9d7a2a7dc91bf95356ca47a6bd2b1b5431cfb071ccf724ff19164130c1ae0732860004ba12c022b32cd2 -f899dcffebeb45121a858839e4cd6bd297bc913f3522295ab46ae324368b048b743d97490f01086c0781f15aa4b5abc3b6c5b4f75265a62fc428c40843d5a222 -d13e928620c31e83dd9e0264da7a2b96498632610690edb86cd827042060086011a75864b645e4712ce94b978e1069c59210c4ce51fe9495f2912490644d4d55 -3af947d31420d9805779acd230e7476d2b4e6d084000028b2580455a2c52e91d91d46a149d444463911e2c628f9698ec329f39aabe5e76d910a6e8614eed6459 -ec49c5de200081111118af455a2b79a12d5af55e105dd3d83bc24484ad9547020840605104b0c8bc2d5ababd67ef7a3aec7a1a41344c019258a4be5e63912cec -9836f1e1a24e1ff60301088c9e001671b2889da8fe8cd61c4ffa9af908f369d5b569ca8e42aa538324c752ccf9d1f4e9e8cf6a004000028b23305e8bb83ca335 -ed272395fa09f2abc3c59d03ec09021080803f012ce2cfcede921150fae1482e1080c0b211c022bdd598f9753aa331f6c6948c200081c11318af45c2558deaa4 -18f224dc9ec819021080c0761318af455afb45b46a3e65bd76e7af2baf6c180465bbab92fd43000210d8060258a405ba48a49e42568a50b6a1bad82504200081 -8111c0229e16b970e1022219d8c9cce1400002db4060bc167184adb1c8c993c962e292871e7a482c22ebe7120903bc3bd601c92000810113189745dca70c3155 -26e65085c8228d58da8e251691f5af4f5fc9dfe5d1ae92dfa2bb1862c61827033e633834084000023681d159a4b1fa1ba70cd1946917c8d624e9574ffe9d5c79 -a5c941c211d1496611f32374177f6816ee293967210001080c950016496a668645d2fe8fc41f127688428c4564bdbeaa3ed0c1daad38635d86cab247dcad8c59 -e29ed28e79ac9153867a6a715c1080c028086091e916c95bb2b4e54a15529ae7f0c291c2224563597a83376e30c3b58b5d2aa32bda2d5aa95ab281dd67a42c92 -3008fc28ae4f0a0981e11318a3455aa70cd16a3bf9fac9d6eec9d6914421975f7eb98a44fe9566adad0b472441732c527143a5a5ab325dae197571dafa52db97 -8ec1883f867f59718410181181315aa45ebd8d2d5a8945265b272727774f764bffc7e464129b4c4e4e26bb2749082222d1a5dac3913669d57bce67afa95b248b -48d2832df5a0e092115d9f141502c3278045a6b668894564d99d586392c823f5471a91a4731dcee8179911612463ba67e149d288e596d2b48fad268d6555ab0c -ff24e30821008188096091a916d10fc41dd29c25ff93862c63912c1691e0c4c422453359dae2342df2908f349690394456578bd90cebb18895329b71c46c99ce -3f12f14949d12000812522303a8b384e1962aa507f69a88148b248fffa95498b96beb2277d4357b83ef7c50b021080c0f0088ccb221efc93df8968c071e14832 -08a33e97a53d222616f1c8d761933c68a147dd0116492000816d2280455ac04b2ca28ff3664f64a516494210e96c3f299def27b39faf6f53fdb15b08400002db -4b008bb4f097f8c30c082f6ff449dff45f7dbf9b51e2b7f70c66ef1080c0f612c0224efc1d272371ca8b4410800004222280459c2ad3db22f7df7fbfd30e4804 -0108406039096011a77af3b0c8fa9d77bee7f77eef5def7ad7ce9d3b3ffce10f3bed864410800004968d0016e9bfc6fef0f0e10fddb2ffd65b6fddb367cf0d37 -dcf08e77bce3b77ffbb70f1c38d0ff9e86992363150fb35e382a0884218045a672f59a8ce4ee8f1dbc4d1eebbae38e3b3ef2918fecdbb7ef7def7bdfbbdffdee -b7bffded12911c3c7830d959e526eb77cfb50606f6f905a2e34e993725cc5547ae1088890016996591c6cf1a07ddbae3f6db6f5bfbd067d2d7e1c387efbcf34e -71c6fefdfb251c79ef7bdf2bed5a2292b7bded6d3d59c41e63ebc46ab81f2436fea2bef5f47754546b3e248000049681001699d722fffb8b5ffcd4fa9d478f1e -bdefbefbfee88ffee8d39ffeb458e4aebbeefad8c73ef6a10f7d68efdebdef7ffffb6fbcf1c677bef39d6f7deb5b6758a4f8deafc145e5eff4d69c4e5522d268 -fa2dfb8cf4c9474635d66091c9d1143f6dcca668cc42306b7c7b251472de9465b85238460840a099001699d7229ffdec6745249ffffce76fbbed3671c6fafafa -a14387c422b7df7ebbf48548a39658e45def7af74defbde1c6dffaaf532d62dde8d3e0c2f2447daa1273ef2fa290f6f4c5e4256612add4545624d39c49deb217 -6cde14ae4d08406099096091168bb44e46f2894f7ce2ce3bef78f0c10725043992beeebefb6ee917f9e8473f2a8f66dd74d34d6b7b6fdebbeb4db7dcf4fb1fbe -fe8dd36391f278efe50e8924fe686c26321bb5a6cf057162b52c03bb5365762601e74d59e60b886387c0e8096091796311f94588747e48e395f8e39e7bee91ae -75ed1491b8e4c37b6fde73fd9bef3870cbc1df7dd39f3e78f4f31fdf33a3452b6f364adbaceace98dad95069a1ca8b534d2f7fa7218e692e3383d21b002d3b0d -3d6fcae8af4500406039096091792d22db4b13d6eaeaaa74a14ba3963ce0fbfbbb77dfbaf7fd1fdcf9864fdeb6f691b7bfe90b4737fecffa0725d95f1eb93d57 -451102648d4a9bebe5b9439228a3d46b5ee9e8369f65eb67a64ff79a6844c6a2d721e5b3adea2d5ad377aa3dfa7644a2e48a03f09d376539af1c8e1a02105002 -58a4078b4816d21d72edb5d7ca5358b77e70cfbe6bfee39d6b7ff0d1dffd1f5fd8f8ec89bbf6c9a7fff7be3b4abbb1db8eb27b6fd1cb6ddd8cad2e8952a0d0b0 -bdd51b9f4e3fd218581847984fad9ccabdeb79268b9837858b110210586202586496453a4d46221d212292bb6ebbf5e05baefeec67fef0e427ff40b27ef45e8d -3f78351160de14ce0b082c3f012cd2671dcac3be0f3eb071fc8ea4ffe3b10792e9ad78d509306f0a67050462228045faafcdd39fbbabff4cc911021080c02009 -609141560b07050108406049086091fe2bca6300e0fe0f821c210001082c840016e91f3316e99f293942000243258045faaf192cd23f5372840004864a008b0c -b566382e08400002cb40008b0cbb964a635be5bf782fad2c8fa6687ee1126eb8f86103e3e82000810513c0220b06de717795814ff4c7e7f6ca7caa91d42cf618 -bf68a4236a924300025e04b08817b6991bf5d92f521ac824ffa977c3caa98335f65f3c72840004206011c022fd9f0ea12c626638b4949184203a6a56791cc5fe -4b458e108000049a086091fecf0bb1882e26ebca9f1d76d934ee6275e0c54a1b5787dc490a010840605e0258645e8261b72f0dbe9b777534345fd933b1873d22 -72870004206013c022c33e1f2a1de9f5def5fcf0e95d1f7645727410889600161976d596c38e541557af9f58bfda9ee9b62492fc515f1ed11a76c57274108886 -0016e9bf2afbec5defffe8c811021080409f04b0489f34352f2cd23f5372840004864a008bf45f3358a47fa6e40801080c950016196acd705c10800004968100 -16e9bf968845fa674a8e1080c050096091fe6b068bf4cf941c210081a112c022fdd70c16e99f293942000243258045865a337a5cbd8fb2581924b8e97727c326 -32c7d1f50eb3ebb16cfb01743d60d243c08100167180b48d491aef3b739860faa627568d51acc1bb745d694213f95d63f5278d32fe8abe1a7feb38fb53856bed -dda65decd81c5c3d3797353d19793e0d245bafae967e31ea9761ad82ba9da17e3bedb60f528f880016197665f76d11fb6e6dde673725eb469ddba06178aefaaa -7cc0fa5436358fccfeb45054435464153edf6b3d379735334db5b81320015e1977c0e7866ed7c089550629585c05b2a7660258a4ff33a3cf7e91f42eb35efaaa -6f7f3f977b521605a45f72e5bf725090a4b56fcfe6969b7efdb76ff9cdb7b3dada065158f9346432fbd31c7e2544ca8ed95a9bbdade7e6b22697485ade6a7853 -f9bb00be7aa254d87447c5119900a831d3da5e34de2ae5901e559e6187a3aa549c162e4c29fabf36c831460258a4ff5aedd922a69da8697e91a2e3c41646728b -cb6745b42d325d22cd1d30352b340d1d3c23d38aabcadeaab45c95dad3eaed57baa6be2f9735e99e34a12586f46b7c4d42e9edd87cbf2f3e369b270752716963 -26591e45b050caa1accfee47556e3e0c538afeaf0c728c930016e9bf5e7b9e5fc4bebd9a6e8ad92b939b63430bd1acfb7d731851cea4b1c5aae1ce6e239ded98 -a658c4da3adfd8dcda5d9cd1bcc77cadc610d618fb66a67a5d5fe1506c96a2d04f2b698a38c0740e95f76259ac6aeb22c6ea725426b8d28dea07d04f29fabf34 -c8314a025864d8d55a69ea99cb228d794dbb8f3778a8594df5aff325a2f516a726e00d0eab3c9fa6295cdaaf1af758bfad3639439b864aea94bfd390c5265fb7 -48f3a36eb64baca62b3b7129ab3c7d9d46231f1361b5a79fa714c3be4038ba0110c02203a884198730cd22a56fd379e395dd0e543c5c95af9d2991d2ddd36e1c -33c75609444a8d30d9d114eb9c3fcdb2af1c5b16489986396df74f8a691461f6e0b2c66ef75b4d9bc6725d58bbd043a9dd91931bb0f437e956d9a715160d9994 -f762675b727196d1e67a87a35223948e364c29867d657074c32180458653176d5fd2ad1b9c7e6b357d05c9fba267bdd23652be0136dd2a937b99352f89fd67be -979a584a37523d9cca7eedce85199f96da63f2ee6fcb7cf9d303d9cd3ff148e5a9e2f635357205bdeaf4c38ddfeb6d67d79e7d2e77d96bad9843aa3f27507e6e -3a2b6835fdcca3b2eba70e2a3d807e4a31ec4b83a31b0c012c3298aa98f340a6367a64f9ba7550cc791003dddc2efbb61ce2b61fc0b6949a9d8e84001689a5a2 -5b2c8244b6b1a291c836c267d7c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20000108444c008b445cb9140d021080407002 -5824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420109c0016098e981d400002108898001689b8 -72291a04200081e004b04870c4ec0002108040c404b048c4954bd1200001080427804582236607108000042226804522ae5c8a060108402038012c121c313b80 -0004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20000108444c008b445cb9140d021080 -4070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420109c0016098e981d40000210889800 -1689b872291a04200081e004b04870c4ec0002108040c404b048c4954bd1200001080427804582236607108000042226804522ae5c8a060108402038012c121c -313b800004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20000108444c008b445cb9140d -0210804070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420109c0016098e981d40000210 -8898001689b872291a04200081e004b04870c4ec0002108040c404b048c4954bd1200001080427804582236607108000042226804522ae5c8a06010840203801 -2c121c313b800004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20000108444c008b445c -b9140d0210804070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420109c0016098e981d40 -0002108898001689b872291a04200081e004b04870c4ec0002108040c404b048c4954bd1200001080427804582236607108000042226804522ae5c8a06010840 -2038012c121c313b800004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20000108444c00 -8b445cb9140d0210804070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420109c0016098e -981d400002108898001689b872291a04200081e004b04870c4ec0002108040c404b048c4954bd1200001080427804582236607108000042226804522ae5c8a06 -0108402038012c121c313b800004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20000108 -444c008b445cb9140d0210804070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420109c00 -16098e981d400002108898001689b872291a04200081e004b04870c4ec0002108040c404b048c4954bd1200001080427804582236607108000042226804522ae -5c8a060108402038012c121c313b800004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447cc0e20 -000108444c008b445cb9140d0210804070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583000420 -109c0016098e981d400002108898001689b872291a04200081e004b04870c4ec0002108040c404b048c4954bd120000108042780458223660710800004222680 -4522ae5c8a060108402038012c121c313b800004201031012c1271e5523408400002c1096091e088d9010420008188096091882b97a241000210084e008b0447 -cc0e20000108444c008b445cb9140d0210804070025824386276000108402062025824e2caa568108000048213c022c111b303084000021113c02211572e4583 -000420109c0016098e981d400002108898001689b872291a04200081e004b04870c4ec0002108040c404bef5f2d64f7fd6a17c9b2f6d5dd87c5636b8e733f7ca -bf972ebe34cf2299ecd97bcbe48aeb8edffcc0e635fb4e5f76d541c95476304fa6baad1e9feea043f9480a01084000025d088845e4f5831f6fbdf0fdada7bfbb -2592f8fa77b62e5cda9218459627bf9d2ce75fd8faebe7fff1c5bf4d523efe0216e9c297b410800004e226a01611858848befba32d51c5c51f247feaf2dcf7b6 -9efd6e66177189bc1efbd64f8845e23e25281d042000810e04d422128588425efe61a110f5872a44d2488ca21679e46fbe8f453af0252904200081b809a84544 -12260a117fe8a2f2308b346dc9ebe457bf8345e23e25281d042000810e04d422d21162b762a9456c85c87bb5c85f9cfb3616e9c097a410800004e22650b1c89f -9e7ea6a21059a35dee6a912f9e7d1e8bc47d4a503a084000021d08a845e4712c918708431759298b98c3ac3116f9f3c79ec3221df8921402108040dc04d42212 -676808628bc45688347969ef3a1689fb7ca07410800004ba11508b8821f4892c598c3cf48d4421fa0b122cd28d2ca9210001088c8180b1883cd15b1789c84397 -afbd8845c6703a5046084000021d09a845e417e9f246446216d3a9ae0a918e1349438b5647ba2487000420103b01631179104b3bd575d1e7b2b42d4b2c221d27 -32080a1689fd74a07c108000043a12508b9c7bf667620b7186fe46c4f6878ea6259d225f79ee1fb04847ba2487000420103b01b5888c9d250d56a28afa22eb65 -1185c8cf12e575e2f14b3ce91bfb4941f9200001083813108b4820e298fcd10baf3032bc232b9241000210180501b1888ca0f5f053df931f827ce1af9efe9353 -df38fac8d7ebcb835fde3cfe958b3262e3525ac4eef0717caf23e3b340000210181501c73ba49dcc633aa8e56bd1ea340f977c7910559aa79e7903010840603c -043cee96a3b0888861da3c5cd3a6e232231bf306021080c0780878dc2dc7629169f3704d9b8a6b3c270d258500042060088845bade2dc76291c679b8e4a795d3 -a6e23203e5f306021080c078088845ea774b1dec7ddadd722c16a9cfc365c60b6b9c8a4b9e7d6681000420303602da316ccf5a688fd1db78b71c8b452af37035 -2ac49e8aeb3baf6cb140000210181b01b1487dd6c219dfb965e2c2d159c41efede78557fb56f4fc5250f35b340000210181b01db22a6b3446e8ff64c2195bbe5 -582ca2f37049e3667d2a2e1def45179dd0517e3b23cf74b140000210181b01b9019abba5f606999f86d822b1ef9663b148e30c2a762c529944e595bfdb628100 -04203036026211fb6e697ad42b0ab1a79c1a91451a6750497e8bdf3489ca8f7eb2c502010840606c04d422f6dd52de1b8534de2dc76291c61954cc6c8ef54954 -c676ea505e0840000242405e95bba5ddb56e260bb1a79c1a9145ea33a8d81302572651f9f1df6fb140000210181b01b548e56e69662d6c9c726a2c16699c41c5 -f66a6512959ffc748b05021080c0d8088845bade2dc762911933a84823607d1295b19d3a941702108080109057d7bbe5282ce23e838a10d44954389f20000108 -8c9080c7dd72141671994145e654b1275119d58c0214160210808012f0b85bc66f11990e850502108000040645401a7eeef9ccbdf2af8784ec4d24933d7b6f99 -5c71ddf19b1fd8bc66dfe9cbae3a98fcfe7ef3d939f395cdf5f8784100021080c030092c8145e41059200001084060b004061d8b0cd3bd1c150420000108d804 -e66c790ad8a235e791b13904200001080c9f00167969f895c41142000210182c012c82452000010840c09f0016f16737d8af061c18042000818511c022580402 -10800004fc0960117f760b533d3b8200042030580258048b4000021080803f012ce2cf6eb05f0d3830084000020b2310d022fcaec785808c3fe358d92eb99166 -1a0138073d37dcf13a9eedeec982962bfacc7ba9b8b01619d4d063033c18a5ef78c1e8f8662c1e04e0ec01cd7d934e781dcf76f7645c17ee355549d957c505b7 -88fbd930c2949d6ab1af5132e13c9b009cbb9e219d4ee3ae99b7a6a7be5a114d4bd057c56191edec17e9548b5c2d8bb95ae0dc9573a7d3b86be6ade9a9af5644 -58643beff2ded5e3b861a7cb8fabc5916a3d199cbdd1b96cd809af4b869dd2705d74c26527eeabe28845b6d3529d6a91ab6531570b9cbb72ee741a77cdbc353d -f5d58a8858643beff2ded5e3b861a7cb8fabc5912ab1883728bf0d3b9dc67ebb98b115d78537d2be2a6e30b1c899032b9395b533b933e4cf9503672fc6ac10a9 -fb4eb538e7d522fbb297c65bad1ed28c6f2e2607ef137746e6bde769320cc17936cc4abbc13c4573df91c75e6654b77b6e9df0ba67eb9872ceeba2b297392f93 -c6ca7281ac695c523a627149d657c50dca22938931c7702c628e24c02175aac539af16d957e5e1f7faf5230964a5fc5b3f9b758dc9a1afd3ddce47f71e6209c1 -d9e6399b86a69ca6edd9e55d0aec9df0f65ebf735e178d57817da574bd4c1aaf91d673db9c24ad297b04d857c50dc9222b07d6764c766ea4f79100b76c4ffa21 -8fa4532dce79b54cbb97d95fd8cd195c4f5c59d39a9b23edbef269bd1777fd5d4eebf1d781cc08b3a659a4f596b114d83b9dc6ad60bb2698f3ba98260997da9c -7d99743ab73b25ee8a684659dcaf8b193b1d9645ced6bff8272d5dfa4adbbb36764d26bb36926fac4777166faca6303550b6499a32c973d7ce6c956e6ba749b7 -2dd2ecdab923db58feb773e3dc9a6e2841927d6cd5fc13ffe92bb3a0db77ea4e97df9c57cb8c6fc4f2912e260ad13fedf366daedcc6c6ba7372b35073bb7691f -99cdeb092a39785c422138cfb8bfd78ba0b670c7d2a876cda192d510b077c2eb517db33799f3ba70b4887d9e3b5e26766569ddd5cfe469d9ce4ed917c3be2a6e -6016b9f8d2868623d92d5b6ee2b9212a6b129dd8294d4b4872dfd75bf95979b7e3682a952c936ccdc55ab6955e19639a8a3c9206b7c6fc3d43a84eb538e7d532 -ed762fa03406371631efed6fca332c5209e1f56a31799a7b9fc9adf123db61950426c38ad8dcafa5109c6700692cfe0c2cf58f5c2c321cec9df0bad79a63ca39 -af8bba452ab2370270bc4ceccd8df2f59aaa9cc9957ab7afc1d6948e706627ebabe206679124c830f7ee22aa28c211d5ccc68e95b58d032b22898d5d2b6be70a -58760394beafac9108a69ead646577c99868a46e91d6fcbb3c14d0a916e7bc5af4ae675e264a3037f7ba451c63917a0ef56f58761af3a9b96c8c69ec5bb37d3c -f6d5e871fd84e03cc3228dc5b757da45b363144de32e6fbb1267e45fd945efd83be1f5a8bec5c722735e26f6d7a0cab95df1ca8cab6f76ca5e30f6557103b448 -1243acecd89509206bb6b23a5d136d1c484c93fa66636da5d488e472974f2c92376dd96147d650568e7e2a8d6c2ef9bb3567e9e9e5de2ed98b4566c4ef3d5ac4 -d655e59ed518fab45aa4eebc4e575108ce332cd258fc8ac5ebb7f2bae30d967a683243b7768c62ee4441b177c2dba9e25c12cf795dccb8221a2342f7cbc4d451 -e54b43ebd93ead72e7bc0aea30fbaab8215a24edf3d0e7b58ae6a3b461caf488481355127f485c927793cc6ed1ca9c61b568596d501a9d643184e96e49fb601c -5bb47c1f2deb548b735e2d95bb5ed058c4fe8665df0a675c1eee579acb9da57e6be8ddd695b2e86dba72df9734d36e1933b0d8073fdb55955864bbb0773a8d3d -aa6ff1b1482f5fb6b0c8b3f35776b7bb5ef951a8e4765fdcd6addef5e46bbea516b9d14ba356e5bbbf69b0d21c929c57b2cef5a2b9291595e9b4b7f69eecda6e -d152a5d9a669c83fff694bc707ba3a5d7edd78d6e2a14a8b87fd3dcb7c548f1b2a773493d2be69ce58a9c92a375c7b777a33addc523541e3b6766b8ffb291a82 -b3cdd3d030b7f5c62234826adc64b9b077c2eb5e6b8e29e7bc2eeac2a8d46ca5822a5f77f4446dbc9a2a5f2cea5fa1f4b4af5f7d2e291de1cc4ed657c5693e93 -2bae3b7ef3039bd7ec3b7dd95507fbaa95bef2999757c73bfbbcbb736eced273a8f7efc8338ebfd2d2625256da52cc9dba7ecbaeb7bae8196f5ef53c758d9d55 -3dbd7e6aef57d3346eeb514181383716dc1c7363111a41356e621773e0d83be1f5a8bed99bf47e9f99f332997639d4af824abddb5741e57ab15356c2d37978f6 -55715824c8cfdc1cabb6532df67eb5381e64ebd719bff8a097bd3b661201e74a497bbc9538329c91ac13def97757c96198d745bfc59c11f8ceb3a3be2a6e0416 -e9121ccc53251edb76aac5c15e2d58c4a3eae7df6438d83b9dc6f3177c8416d138a61ec8ce09b3af8ac322c422db4960cecbc071f34e57cb606ded58d8c527eb -84b7f7c3a3bebc91f6557158643befa19d6a91ab6531570b9cbb72ee741a77cdbc353df5d58a685a82be2a0e8b6091ed24e07d0174dab0d3d5c25da9135b49dc -096fd7cc5bd3535fad88b048ccf7b84e971f57cb62ae163877e5dce934ee9a796b7aeaab15d1725bc47eb480f78d043a3de90b436f0270f646e7b2a13b5eef5b -deb40dc5222e47489a39ef3f332a2e608b969c582c2e041caf2b97ac483383009c839e1e8e787b4f16b45063c87cfe1a096891f90f8e1c200001084060e004b0 -48ccfd2e033ff9383c084020020258048b4000021080803f012ce2cf2e822f111401021080c09c04b008168100042000017f0258c49fdd9c0267730840000211 -10c02258040210800004fc0960117f76117c89a00810800004e6248045b0080420000108f813c022feece614389b4300021088800016c1221080000420e04f00 -8bf8b38be04b0445800004203027012c82452000010840c09f0016f16737a7c0d91c021080400404b008168100042000017f02cd166146170840000210808023 -0199886572c575c76f7e60f39a7da72fbbeae0182666a18c1080000420d02381924564064a5e10800004200001470212b2542d1241870f45800004200081c510 -c022fedd4a8ba921f60201084060c804b008168100042000017f0258c49fdd90bf1d706c108000041643008b60110840000210f0278045fcd92dc6f3ec050210 -80c0900960112c020108400002fe04b0883fbb217f3be0d8200001082c860016c1221080000420e04f008bf8b35b8ce7d90b04b68bc024f65727b08e3fe45ed2 -64321a4a271a76622c82452000816602229125bd27b61e763280e064d2e9be29795ed87c36ca45c7e5ed44038b70d7800004da09a845e2bb6f6683997b59c4fb -563be40db148fbc530e4fae3d820305802c622833d42bf03c322156e58048b40000241086011fb6eab61999fb706be15160972fd0cbcd6393c082c800016c122 -2ea719bdeb4808021098d5bb1edf17705ab468d1e29a8700041641206c2cb2b12b7f907865ed4c5e9c330756560e9cbda87f9e5b5b994c8a3f7b2bf27659e46c -529eecb573a3b7e25c2a41f3c996162d1f6a2e611a6920307202012d922864d786da426e82935c24d60d7163c764b2e368882ad8168b240a298c7874e764d29b -48b04888b3843c210081f90904b388041956fc212211a9a830f21b62f99edbf337c5edb048adc859bcd547d1b0c8fce73a39400002210884b248127ce4814811 -8ea46bf48668472a3dde6df3acb6c122536ef449bc65b771a5c9d6f29579b092042efacad62400f595ca188b8438fbc9130210989f40408b547b3be446995b24 -44cf415945c3b14851476a82540f852a124a49e790a513d18615d698ade6eb3da25fa48f9030c0f79df9af617280c0f61208689119b1887ebf967064be3be30c -7403b2481155a4cf11d851c53443d89b6838b2613f92e0733fc4223ed4b6f7e264ef10580a02a12c927cbf6ee917d107b456d6ce8500b50d16a91739f9e62a11 -58f9b102578bd4da03e7332e16c1221080401002c12c92861a6dcf68959eddeab5b5603b2cf252d3335a793b9e3e5fd0188b34b768d91d24bb36e81709f15d83 -3c210081f90904b488de37ed2e62d3cd6e7dad4e7f6051fededd874eb6c522521df5df8bd86ba658444396caaf4ccc1a7ad7fb3821e6bf54c8010210682410d6 -22db77f96f9745067b9ad1a21524961f6c7d7360105818012c62a36634c669271ee368212108408071b4dacf012c8245dacf92857dc5634710580a02c422c422 -2e272ab108768100048845dacf0162116291f6b3c4c5baa481c07808108b108bb89cedc422d805021098158bc83d22be65cfde5bc4912eb7489386588458843b -050420d08d80dc67e56e1bebe26191f86c6a4a24b5dcc9a9766262916ed79537683684c0d21130c3cdc6faa6538dc46a5353ae4e34b008e68000042000817e08 -108bf4c3d15be36c0801084060a90960112c020108400002fe04b0883fbba5fefac0c143000210e8850016c1221080000420e04f008bf8b3eb45e36402010840 -60a90960112c020108400002fe04b0883fbba5fefac0c143000210e8850016c1221080000420e04f008bf8b3eb45e3640201084060a90960112c020108400002 -fe04b0883fbba5fefac0c143000210e8850016c1221080000420e04f008bf8b3eb45e3640201084060a909542d12f100fa140d02108000044210985c71ddf19b -1fd8bc66dfe9cbae3ac802010840000210e844a0b088888405021080000420d089406611094758200001084000025d0924166181000420000108f811f8ff831f -58f7415a3c4e0000000049454e44ae426082} -\pard -\pard\plain \absw8025\absh8850\dfrmtxtx0\dfrmtxty0\nowrap\pvpara\posyt\phcol\posxc{\*\flymaincnt0\flyvert9281\flyhorz61442\flyanchor0\flycntnt}\ltrpar\s16\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb120\sa120\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i {\rtlch \ltrch\loch\f1\fs20\lang1033\i\b0 Illustration 5: Service interface definition} -\par \pard -\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \sb240\sa120\keepn\f2\fs23\b\f7\fs23\b\fs23\b \ltrpar\s8\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql -\par \page\pard\plain \sb240\sa120\keepn\f2\fs23\b\f7\fs23\b\fs23\b \ltrpar\s8\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql {\rtlch \ltrch\loch\f2\fs23\lang1033\i0\b Export the pascal files.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Type Library Editor has option to generate the pascal version of the WSDL file. To do so, click on the \'93Files\\Save generated files ...\'94 ( it can also be done through the contextual menu ); It will bring up the dialog box showed in the figure 6. } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par -\pard\plain -\pard\plain\absw6135\absh4755\nowrap\pvpara\posy1\phcol\posx2{\*\flymaincnt0\flyvert44304\flyhorz44288\flyanchor0\flycntnt{\*\shadow0\shdwdist0\shdwstyle41\shdwfcol0}}{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw409\pich317\picwgoal6135\pichgoal4755\wmetafile8 -89504e470d0a1a0a0000000d49484452000001990000013d0802000000564a8861000000017352474200aece1ce90000000467414d410000b18f0bfc61050000 -00206348524d00007a26000080840000fa00000080e8000075300000ea6000003a98000017709cba513c00001ee749444154785eed9dedaf1cd57d80b7ff473f -d62a6d094a4c491aa555bb71a5f80b2aaa14a705c9710cfdc0bd9bd22a5652081552f00b5690d60a6ed317171a1a25c448ac6f852aa4c472718541f2cded8d88 -6d11595c0b3b04fbcaa81f5af8e89e3367e69c33af3bb377765e7ef3ac46f6ded933e7e53933cfef3767f7defdb5dfbeffe5110f084000027d27b0fbe0d9c367 -b6d820000108f49ac0c8b8ecb1576eb141000210e8290125b1d0658ffee0831536084000023d24a0f4e55cf6c88bb71ef93736084000023d24f0e22de7b2fda7 -7ef9e57f799f0d02108040ef08287d3997edfbbbad3fffee353608400002ad13f8abb5ed7d4ffff4feaffd57dea65e55656c3f95be9ccbfee05b6fffe1e14b6c -108000045a27a054f5f57fbef2fcf95b99dba9f3b7d4abaa8ceda7d29773d9ef3df1df9ffde6668bdbc3e73fbe133c6e9c7f27ecc6cbffa37fbe72adc55ed134 -0420d03c01958e7de7d55f3efdeafb79db775ebda1cad88e297d39977df689f5cf3cbefe99d31f1aa198c7f5d72fe99d756eefbea92bfef058b2ce60fff6fb0f -3fbefef0eb5a6aba69d399cbefd6d78158ebaea13a07582f2e6a83c010097c69f2e6f1b5eb7ffdd2752322f5c46cf647f5aa2a63cda0f4e55cf6b9c7dffadd43 -17ee7be9b62e7de91df57c19db7d87deb9a01bb87d345eff7dd3ebba9bf1766bef4c5eebcb1829754200020b13503997ef32a3339b63a9e7ea5555c6d6aff495 -939779a9d0b1cb2e4133898cce9e9e7bdf551ce553ca9161013fa73325d5213ac9faf0cda0b6e861b333932e99c7c73f7a3d4ac7fcbccc4f1883f4cd4fd672db -b5b5068798b1b8d6bdfa336a30af6e7f1c8e346ad4af640979eb1083707d7937f48410b8ff6be7bff5ca7b7ff182defc8b563d373bd5abaa4c89bc2c3cfaa397 -a63a3b3b7a49fdac9e0729d5f6f5afa8f4cda451c1f3af9cfb483dbd7e6ed34fa38243ee5c78c996fc2830824ac70af3325379941bba274173aa099b399ae766 -2b6c37dec378ebe986a2c1063d37dd08ba64876307bb70c0e1400840602e81f1eacb93177eb1f799cb7b9fb9a436ab33f3a3dabefac22f3effd597abe56581f9 -2efd68dbd416655236dbb24b6c97df3509cb9ba7bd753795df85195c22054bad97655568d7cbfca4291c552a73cc6ed724532eff8aafd645fbb37bee656db640 -46fac65a1b04205037814f1e78f1b17fbdf2fb4fbea5b6445ef6b927df52db632f5cd97de0c5ecbcec8fbe71e1d38f9dfff4f70369fdfc8a7eeeb62bd13de0f6 -51b3f3dbefe93cebd67b07bd438efe3c70d9f78302b61ebfa43ed65415d5639bc8aad05672f0ecffe9d4efec4fe3bd0a7b38bf5d37a878ebd1feec1a3c141905 -0ce024281f1acf2100810509dcf7c5d0655664bed4d473e53255c60a41e9cbad977dfe1b17ee7df43feffd5ee0b2b72febe7d176e46d6d9f238f5ed6f79837af -1d50fb8f5ed32e0b9e07afdeb9f0bdd8b16ea75732a830a844d7e6ead7fbfd62b60f8927e9a34c255e9f33db753b13ada71b9a3b1cdb6dd3610fd4811f07c2fd -f1c5f4131f26cf210081b904ee7af01ffef1ecb583df0e9328f5c46c466dea897a5595b1f5287d39977de16fdeb8f7919fdcfbfc4d3fa3bbfedadb3ffc2050d5 -f33f51af1e78ed7ff50f1f6c1d787a2bb6f6ffb3b7f5b1b64050c5f5d7ded23b4d49754850205ee6e6916867ac98e983aad33eb1f5449d0b2bcfa833deae1d4c -460f6f1ef1ea0f87e6f7dc7bf5c8cf42087e317f50765caa63a68cffc40c9c0d02102849e0ae07bfab6cf5cce9cb795be0b2bfb7b5297d3997ddffc41b9ffaf2 -6b65b7a7ae0686bababffc210d97ec7e0f1b06427310e80f817b1e9afde573175fb9f8abbc4dbdaaca585f297d3997fde9936f7cf2a1ff28b97deac9c065bfba -babff421256baeab58f77b58d748a90702f208dcfdc5b5dfd977faae879ebbeba19366fbad60b33fdefd67a755193b70a52fef77cb9f7ae313fbd6d820000108 -f48bc03d5f5adbf794e7b2070fbf75cfbeb5bbf7bdca06010840a047043eb1efdf95be5c5ef6c0df6efcfa9fcc7ef30bffc406010840a047047ee381d30f7c73 -c3fb5b8cc72feeda73d27f1393e7108000043a4ee0873f38adc4b5fff8c50c976ddfbccd06010840a017047019be8600042410c0651266b11761934e4260a904 -70192e8300042410c065126671a9e18eca21d00b02b80c974100021208e03209b3d88bb0492721b05402b80c974100021208e03209b3b8d47047e510e805015c -86cb200001090470998459ec45d8a49310582a015c86cb2000010904709984595c6ab8a37208f482002ec3651080800402b84cc22cf6226cd249082c95002ec3 -651080800402b84cc22c2e35dc5139047a41a0ff2e5b3f311e9fd8e0cf46420002c32650a7cb36a6e351f4184f37735d5ed53ec5e5cdab55eb34b3bed851c33e -637a11a2e9e40009d4e6322d32971fadad8e46b93aab6a90322e5bcc2f557bb2582b1c0501082c9f406d2e5b55ee5af7d69ed2e952288e4d9bbd8d5726e3f164 -354ae65667f144295ddecff5d4ab2e098cf2b2e090e98a7a613233695758c6f64d4bd63c56675e4f54cdae7074acab4a97d4ddd3f3a16a888f74f99334c018cb -90215095406d2e4b2d5aa96b7e32f3131ffbdc7f62bd309b6801159777d6d04a0ae5e24b33f091279dc04aee5ed25752e21ed355a813cc9535a3b6a8aadbdbaa -7b6aa7aaca3e41611080409708b4edb2d86de9783af316f2d3eeb3e0d2cacb4c036de2a69fc44599582f4b5498513850f3cddbb3154f705d9ac8aa418cf21010 -46a0369795bec7f46e2463cb55c1bd5bbd2e4bbcbf995e1dcbd4a5cec832c417582c349ab09380e140400081da5c96bdf66fbc10e42fae80dde9cb45ddbb99b7 -230bcac7ee31c345abb0da8c7733bdfbd0f0c0ac7bccb0b9ac7bccb40a0bded020478300045a25509bcb425bb995f5f07d00fb418d60a53ffc2098ca71d443ef -71b7819ef2829d19e5fdb57fbdbee615cb7099bff6afaa0b9af6de31306b61614f72d6fee31f5b532a64d59f8f1643a0a304ea7459e534b55f1f89309963ab91 -a732617a0b81c110c06565830cabfe9814025d26d0aacb061331ba7c06d03708c82080cbcae66532e69b5140402a015c86cb200001090470998459941a691917 -04ca13c065b80c0210904000974998c5f2b18b9210904a0097e13208404002015c266116a5465ac6d55302776a7a1c39f66c7902b80c974100023513502abbba -7563879b72533b2e530db34100024320a054559c2e1997954fa9324bb6e932255136084040360125a941b8aca6db64aa8100043a4a0097757462e81604205089 -002eab848bc210804047090ccb655ba7f6dabfb178e89c3f25e70eed3db5e5eff08b8e46f1c25d9bcb78e755cf1363a9bfbf295cd59ad8e1e1416319c3aca3da -cc813481b41a414aa7090cc865da4eee223f77286e28f56a4c58fee9dbf95339d6f9467a9bc455e6daf23a564387b386b948af2af6bc4c71cab44260402e9b97 -ae1464374a7cddceccee789d6fc46577fc164b9eb9b18eedb8c3d9c35c4e6ad610d2921c29964d60402ecbb9f3729eca4d16cca9acff3d7448dfa41e3ae7ee40 -23c7f9f7a4f1c2875406183d7469578f4a13cf99bb5e9d2fe6ed37f753610d61626977d844d3753ebaf074e6e9b7abf513db912ce075c025b0516d452dba1cd7 -c2544fc2319926ed486dcd5187a38a63d00c11ef5e32e8c6a9a8ff11465326184754de9fc4449f0bc69b371161ee6e5d566222304d5b047059ceaa99ef2673a1 -e83de68ad1cf8cc3a2676e4fb88ee30a7bf55b27262a2cdeefaf0c851755a40caf599728d90bcfb61cdf133b28e10bdbb1844ab42f821167b6687b18d8c2134d -fca864c7a21c2a668a0875da65764dc0e2d26542697a946d6a96d9e7b81f8b27c20e37eca13780a28968eb5a1e7abbb82c7606a4b31bf7b27fc965650de93cc2 -edb1f950987d444ab46e2cde1ffb6e605334cae6e2aa8c252cbe8efd0edbfbe544818201469961fa0d12e374a30d6d9173c1ba63e893783f53920d69a7dbf54b -c6cc953051c02575f71f4d628ad2dcf166b665d270473d319719133174a9b434fe01b96cde7a99998154b290ce6e4a5e69e175ef250e894b25710de75dd21979 -54d8279b06457d0c3aef5206efbecbbb378daefd121d33899827b0ec16436ca782f7829dd02cb9f0a894cb42da8bbb4c0d25934e6cd52cea7389f11678337459 -f6b2690a4b4b57f3b09b1d90cbf4599fff3ea6afacf8724cf48abb14ddf5133df3aea8e4f5e0bd6f60aea60267f9699af348bcf270b52e5134eca44e494e19fb -a4da4ddc20a60bb80166f5d9dd5fc792b32809d297b379c15dd88e7850f5b98c68e275d8f7663e348bc5c798cacdc26a637dae3211518521fab0ad0a13316cab -b433fa01b9cc5c05a9cf9779a7b84b77a2db0a7f5212e958b4a63de74632dee8422e8bfce0ddcdd881246efafc85707fb0f18578f76683bb79f5251b7bb361af -c9cb0a5b8ce7471ed1f85166f13d91dad815f91873d779d57ebc6f6e45d2cb3bbd370ba2fc7aa4adeecf5212485150d99b3cd265d9b189cfc7d2cef53ce45677 -e6b2b5d591f956eff493e4dfea68f977cb9b9be3b41b9b6b9b96ea20e007ad3aeaa38e6608eccc6515feb8906c97f96ff7a752a566669256ea2280cbea22d96c -3db8ac59deb40601082c87002e5b0e576a8500049a2580cb9ae54d6b1080c07208e0b2e570a5560840a05902b8ac59deb40601082c87c0205cb6c3af5de17008 -40a017049424e77e77492ddfe1d2cef7302d2706502b0420d04502c52eabf1db5bca7f9913df8f59e1c37be5b1521202106898002ec3651080800402b84cc22c -361c00690e021d2480cb701904202081002e93308b1d0c927409020d13c065b80c0210904000974998c5860320cd41a0830470192e8300042410c0651266b183 -41922e41a06102b80c974100021208e03209b3d87000a439087490002ec3651080800402b84cc22c763048d22508344c0097e13208404002015c2661161b0e80 -3407810e12c065b80c0210904000974998c50e0649ba04818609e0325c060108482080cb24cc62c30190e620d04102b80c974100021208e03209b3d8c1204997 -20d03081965cb67e623c728ff174530f5bed1c9fd8504fd8200001085424d09ecb7c6d198bcd75d9dc0215078f342100013104bae132e3a0b9aa9a5b00974100 -024325d00d9725f23277073a9eaedb5bcecda9b92f1d9f98ae8c462b6b269ecc5646e395c9783c590def5a27336bc6f02ed6af841b580840402681da5c96f995 -ebb9e96b6cbd6c328bb94c392bb24f2211b33feac38db3d656d513fd6378c886129ed65c7e25a9a855cb97c553090420502301f55ded556f7eeb7459faabe28b -5c96b75e167f5b40a5612e35f3d4a6d2b1d5d9ededd9449bcb579ed15c4125299775f11beee91304064c4059a97d9795556966c265b3b330e74a65c2fe5181c5 -662b81e9122e336f23e45532d4d584b253031f08b44d408acbf4ed6190739977037c25c50ca8ee2ef5da99fe0c8757ccbbc7cca9a4ed79c2291080403101312e -33ab60e69158b637fbc3d57dbdeaef3e98360e97feddad6b5e2532173eb93c20208640af5c56437214acfa97fc30470dcd61400840a021024372995a2cd3395b -f0db02653e9886cb200081fe101892cbfa332b62d27e060281c608e0b28612e0c666948620304c02b80c974100021208e03209b338cc38cca821e013c065b80c -021090400097499845e233042080cb701904202081002e93308bc46408400097e13208404002015c26611689c91080002ec3651080800402b84cc22c12932100 -015c86cb2000010904709984592426430002b80c974100021208e03209b3484c86000470192e8300042410c06512669198dc350265bef371812f40ebda303bd5 -1f5c86cb20503f01755d1d39f66cc17675eb062eab57853d7319e1aedee9a7b62511302e2bf8e2dd6c9725be0176ee5f75af5a7e6e857d2ed03f9711ee9674f9 -516d8d040a5ca6be404739aebb2e2bf0a37da9930eeda5cb961eeee2d1497da5a67a845f24dce7c055e3b54a55c504f25c66bec0b5f72eebe45520c7658b9c22 -a5c28bf7959a9d9c42b4d24102d665e6b4348ff0aba8e7ba4c9f9693d5e06ba8c7d3b569f86473dbdb1f7e77b59f28f95f749d5783f92ac564c913d3205a0701 -7bd334370abefdda44f18c9732da0dbe7636d8efd556ff4264c15c0b71d982e1ae8ccbca94c171108813f05d6674e68b6c4e5ea675339eae1bef444f945cec8f -376f6f28e5acac19776cdc54020a8ad96f7dcdab21bb6474cf616acb3ce1132fb976c3635d7fec1d4ce3174e5f5db668b8cb0d4159f12a8c8dc159a8c34e3c4c -9998a3b2361bb8a293c98f7b5ce483249070594264f35d16a44591aaa227be1db4ad2633ab18973f05c9dccc382eab86bc92be07cdb1b1242ec8d412eb6589fe -243c88cb4a2e43d844ac62b8cb0b418591cd4eadbd2c537129909a8a8da97a06792577f0a6afe12ef9eb656991d5e332eb0ee335ff4c4b2fd23bebe594cc7099 -39a5e3e99eaf485ce69f5555d3c27ac25d7adadc228239f1b2225b4198f21d97887be654601b1881c4dabf7f1b61d6ce8adec72c61a2d43da617a46dbe96cecb -f43d664ec96c9745e29b4d32f232afb6787f3cfd3538ef556562ae4a75d4ae3d27f71fbf78f8ccd668f7c1b3ea3ff583da55f5e37f559baf27dc65bb6c5e640b -33afac30157359bc9e06e712637687c08e3e5f56e0b2f1385cb94fdc42bab50e6f7d2dc365feaa48bca42b6c964df469ac0d651fbac5e8a5f4da7fb23fdeed6d -539740559974c865663d35f1f98c52e12e2304e5c72b97487b6f689a30e54739778f198f7b4d4d64772e637a62a2bd3a158bb7aa81df2d9f71526511e8b7cbd2 -1f34abe6321b6762abf839912d234c65adfd272224a7dd2009147c04d27fa99af71b5f4dafd6bdb627ba7f2eab3fdcb53d07fd3a63e82d04ba49a0672e5b4ab8 -c365108040ff09f4cc65dd0c08f40a0210689d002ee303131080800402b84cc22cb61e12e900045a2780cb701904202081002e93308bad87443a0081d609e032 -5c060108482080cb24cc62eb21910e40a07502b80c974100021208e03209b3d87a48a40310689d002ec3651080800402b84cc22cb61e12e900045a2780cb7019 -04202081002e93308bad87443a0081d609e0325c060108482080cb24cc62eb21910e40a07502b80c974100021208e03209b3d87a48a40310689d002ec3651080 -800402b84cc22cb61e12e900045a2780cb701904202081002e93308bad87443a0081d609e0325c060108482080cb24cc62eb21910e40a07502b80c9741000212 -08e03209b3d87a48a40310689d40cf5ca6ba3b7753df6dde3a563a30700273cfd2f485371a8d14b4e5fd2b7e46fae7b223c79e2dd8ae6eddc065e2cfdaee0f50 -5d579d3a518d22656fbd7499b255de23db65eb27c66a32a3c7ea4cf8a4ca3e657b313ae3b24a27aad64dec441d4fd7cb9da8eaa8f1890de9aa9a3bef8371999d -6c267ef027fddcab62e7050a5ca69ca51c971f7427333341e6442d73ba9628435e9637a76aa676ed39b9fff8c5c367b646bb0f9e55ffa91fd4aeaaf7775555ba -40b873a745780dafad8ea2d385ab1a02cb219077a29a7b834c974579993d394b9fa8255cb6733b77bf86aa323123eab3cb5cb89bacea3bcfc9cc25f6fa349aad -8c462689b3fb57d6ccb0d54be3e966f727951eb64ec0bacc98cb3cec2a47e5bc2c3869a7eacc0c1ee122897f439a3863d579aaee4ff551e149fec7ac97e504ad -1ebacc2d9745d36ce6fbe6e6741c9e1c1bea59a0adc0596be17e7dc69850593a4e2e27d4b77e7dd281f2047c97199df9222bcccb6c41eba3e04ed3579836973b -6fb7679320faaa3dd1129b0dd8e1495e6eddade7e7edf0f2327f31c2ae4a24766a6d8d8cd78cda742454674cb4a7fc394dc9611248b82c21b2527999899de955 -b3823dde1b5ceae6623a73ef09b05e2672bdcc5b58cd7399c9deeddb0581c5662ba5df57ea797c1ba67dea1db5bf5e961659b9f5b220cf323ef257c48a5c165f -081ed83adae0f3b28c7bcc307bf756c782348db7bd7174690289b57f7fd5ccac9d957a1fb3202f4b9cb789bb4eb330e2b98cbc6c007999bfc61f9d10d1bda456 -9859ec67d5bfdeb4457c6d0bbce19efa7c59b0b2919785c5cedb71f4f9b220e8ea87b7d656dabf7d9f94fee5652aa0156f553f1752620a59f51fc4e2718933a1 -2c07755db571a2e6768fbcac737959c107a9fd976a3c29f5927f949dd559ed60a2e530a12d70a21add2cef5ff113d1b3bc4cfc7c30400840603102b8acec5dc3 -627c390a02106886002ec3651080800402b84cc22c3613f76805025d2680cb701904202081002e93308b5d8e96f40d02cd10c065b80c0210904000974998c566 -e21ead40a0cb0470192e8300042410c0651266b1cbd192be41a01902b80c974100021208e03209b3d84cdca315087499002ec3651080800402b84cc22c76395a -d2370834430097e13208404002015c2661169b897bb402812e13c065b80c0210904000974998c52e474bfa06816608e0325c060108482080cb24cc6233718f56 -20d06502b80c974100021208e03209b3d8e56849df20d00c015c86cb2000010904709984596c26eed10a04ba4c0097e13208404002015c266116bb1c2de91b04 -9a2180cb701904202081002e93308bcdc43d5a81409709e0325c060108482080cb24cc6297a3257d8340330470192e8300042410c0651266b199b8472b10e832 -015c86cb200001090470998459ec72b4a46f106886002ec3651080800402b84cc22c3613f76805025d2680cb701904202081002e93308b5d8e96f40d02cd10c0 -65b80c0210904000974998c566e21ead40a0cb0470192e8300042410c0651266b1cbd192be41a01902b80c974100021208e03209b3d84cdca315087499002ec3 -651080800402b84cc22c76395ad2370834430097e13208404002015c2661169b897bb402812e13c065b80c02109040a07d97a91eb041000210d839813b77ee54 -cd1c55a3bbf69cdc7ffce2e1335ba3dd07cfaaffd40f6a57d5ba54791e10800004ea22d09acbaa364c79084000023512a82d2fabb14f5405010840a02a015c26 -61adb4eaac531e02f208e0325c060108482080cb24cca2bc18cb88205095002ec3651080800402b84cc22c568d609487803c02b80c974100021208e03209b328 -2fc6322208542580cb701904202081002e93308b552318e521208f002ec3651080800402b84cc22cca8bb18c08025509e0325c060108482080cb24cc62d50846 -7908c82380cb701904202081002e93308bf2622c2382405502b80c974100021208e03209b3583582511e02f208e0325c060108482080cb24cca2bc18cb882050 -95002ec3651080800402b84cc22c568d609487803c02b80c974100021208e03209b3282fc6322208542580cb701904202081002e93308b552318e521208f40ae -cbd40b6c108000047a4460d79e93fb8f5f3c7c666bb4fbe059f59ffa41edbac303021080407f08708fc93d2604202081002e93308bf2d63e181104aa12c065b8 -0c0210904000974998c5aa118cf21090470097e13208404002015c266116e5c558460481aa0470192e8300042410c0651266b16a04a33c04e411c065b80c0210 -904000974998457931961141a02a015c86cb200001090470998459ac1ac1280f01790470192e8300042410c0651266515e8c9d3ba291f4c75c02a6407ffe8cc5 -223d3d72ecd9921c54315c86cb7a4940a96c918ba30fc7a80b588daee435ac067475eb86c84db90997f5f2e22c79ee52cc10302e93770d9b0bb8aacb449e15b8 -0c910d82807599b0cb1897d909c56583b892855dc00b0c0797d9f532959c2e00b0fb87e0325c360802b80c972574ccdaff20aefcee07e1aa3dc465b80c97212f -090496ebb2d924fac8c778ba1ee15a3f311e9fd808de79d8beb9391d8f46eec7da9036bf5eb6a147123e5667b50d643b866b916ab9c75c845ad5a480f2ad1358 -a2cbb4c82633e32c75418e229d7917e76c65345a595b0684865da645e68cbcb63a1ad5a6335cb68cf3833ae511589acb54c2e5e5624a674a6d465bd1c519bffe -6b8e9dcdba2c35d830ebac6350b84cde55c788964160592ed389589494b9d42cd8632e4e3f6babf1ca8faa6ad46539bad159a77fd719149b463ba3c44d2771e6 -11eed1e8cc230806b86c19e73d75ca23b044972557c1d4451bb96c19eb4a712176c165ee6c313e0a24e584a5f9e8e5424f6a4a5e5e8a678fdad97a22eb6575a4 -c74b88b7f26cd2ee8896e8b282bccc641c2a35dbd9555a80ae132e731956f0fe869f61e579ca3fc4a46633ffad9245ae4a5cb608b5762f4b5a5f80c0b25ca633 -8e39eb65e64dccf17473816ecf3da45197a507aba3b8ca43e36f77947559eade7c67c6c765b86c100496e6b220ed9af73e66ecfdcd5ab3f8665d763beb7dcce8 -9edabcef91999765df63fa0b679319eb657303170520a0082cd165e61af697b1ed9b005ea2117c2c2b9e89d421b5865da648a63f5fe6efc9719949df129f4ab3 -7b58fbafe354e03a1f0881e5baacbd53b1799775f684e11e731077589d3dff1aeb182e33a8cd1f3e6a0c7b930de1325c360802b80c9725c4caef960fe2ca6f32 -9c36d3162ec365b80c79492080cb70192e9370253793fb74b9155c86cb70192e9340c0b84c2d91c8dbf87bff4652acfd4bb850bb9c1075a46fca65ea9a97baa9 -d195e42c55e82644f13d4ce84c3e81e8739a62ff2fe932a936b7e32ac9c1e471bbf69cdc7ffce2e1335ba3dd07cfaaffd40f6a97f27df95a2809010840a05d02 -b84c7e0ad3ee1946eb106886002ec3651080800402b84cc22c3613f76805025d2680cb701904202081002e93308b5d8e96f40d02cd10c065b80c021090400097 -4998c566e21ead40a0cb0470192e8300042410c0651266b1cbd192be41a01902b92e93f72bbb8c080210904d20fb7798d45e3608400002fd2290fc7d4cf5331b -042000813e1270bf5bae9eb141000210e82f81ff07dfd75a8d8d5aff130000000049454e44ae426082} -\pard -\pard\plain \absw6135\absh4755\dfrmtxtx0\dfrmtxty0\nowrap\pvpara\posyt\phcol\posxc{\*\flymaincnt0\flyvert9281\flyhorz14850\flyanchor0\flycntnt}\ltrpar\s16\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb120\sa120\ql\rtlch\af6\afs20\lang255\ai\ltrch\dbch\af6\langfe255\hich\f1\fs20\lang1033\i\loch\f1\fs20\lang1033\i {\rtlch \ltrch\loch\f1\fs20\lang1033\i\b0 Illustration 6: export pascal files} -\par \pard -\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Click OK the button to complete. The program {\rtlch\ltrch\dbch\hich\i\b\loch\i\b ws_helper }has the same capabilities and the files can be generated with the following command :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Listing ws_helper execution session]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ws_helper\\ws_helper.exe -i -b -o. user_service_intf.pas} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ws_helper, Web Service Toolkit 0.5 Copyright (c) 2006, 2007 by Inoussa OUEDRAOGO} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Parsing the file : {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 user_service_intf.pas}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Proxy file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Binder file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Implementation file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Metadata file generation...} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 File "{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 user_service_intf.pas}" parsed succesfully..} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/Listing]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The complete projects of the example is located in the folder \'93samples\'94. Below is printed a extract of the generated interface file.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 [{\rtlch\ltrch\dbch\hich\b\loch\b Code]}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 unit user_service_intf;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TUserCategory = ( } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Normal} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ,Admin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TUser = class(TBaseComplexRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 private} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FCategory : TUserCategory;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FUserName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FeMail : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FPreferences : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 published} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Category : TUserCategory read FCategory write FCategory;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property UserName : string read FUserName write FUserName;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property eMail : string read FeMail write FeMail;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Preferences : string read FPreferences write FPreferences;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TUserArray = class(TBaseObjectArrayRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 private} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetItem(AIndex: Integer): TUser;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class function GetItemClass():TBaseRemotableClass;override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Item[AIndex:Integer] : TUser Read GetItem;Default;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 UserService = interface(IInvokable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{CA6F6192-C3DE-4D9C-B3DF-E616376A0DC9\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetList():TUserArray;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Add(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AUser : TUser} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Update(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AUser : TUser} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Find(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AName : string} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):TUser;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Delete(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AName : string} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):boolean;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/code]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Providing an implementation for the service} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b user_service_intf_imp.pas} unit generated above contains a skeleton implementation class for the interface. It defines a procedure named{ }{\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b RegisterUserServiceImplementationFactory}{.} The procedure registers the class as the service implementation provider -in the implementation registry.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [code]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Unit user_service_intf_imp;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$IFDEF FPC\} \{$mode objfpc\}\{$H+\} \{$ENDIF\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Uses SysUtils, Classes, } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 base_service_intf, server_service_intf, server_service_imputils,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 user_service_intf, cursor_intf;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{ TUserService_ServiceImp \}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TUserService_ServiceImp=class(TBaseServiceImplementation,UserService)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Protected} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetList():TUserArray;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Add(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AUser : TUser} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Update(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AUser : TUser} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Find(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AName : string} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):TUser;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Delete(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AName : string} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):boolean;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure RegisterUserServiceImplementationFactory();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Implementation} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure TUserService_ServiceImp.Add(Const AUser : TUser);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locObj : TUser;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locObj := Find(AUser.UserName);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if ( locObj <> nil ) then} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 raise Exception.CreateFmt('Duplicated user : "%s"',[AUser.UserName]);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locObj := TUser.Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locObj.Assign(AUser);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FUserList.Add(locObj);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure RegisterUserServiceImplementationFactory();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 GetServiceImplementationRegistry().Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 'UserService',} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TImplementationFactory.Create(TUserService_ServiceImp) as IServiceImplementationFactory);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...) } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/code]} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b\qj \ltrpar\s7\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b\qj \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Providing a binder for the service.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The binder's role is to:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10132\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls13\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 unpack the incoming message,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10132\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls13\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 set up the call stack,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10132\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls13\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 make the call against the registered implementation,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10132\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls13\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 serialize the execution stack to create the return message.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\ltrch\hich\f4\loch\f4 user_service_intf_binder.pas} unit generated above contains :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \'95\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls12\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 TUserService_ServiceBinder}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : the actual binder class,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \'95\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls12\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 TUserService_ServiceBinderFactory}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 a factory class for the binder and} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \'95\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls12\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 Server_service_RegisterUserServiceService}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : the binder factory registration procedure.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \'95\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The following code extract shows the unit interface part and a method handler of the binder.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code part of {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b user_service_intf_binder}.pas]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 unit user_service_intf_binder;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$IFDEF FPC\} \{$mode objfpc\}\{$H+\} \{$ENDIF\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 uses SysUtils, Classes, base_service_intf, server_service_intf, user_service_intf;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 type} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TUserService_ServiceBinder=class(TBaseServiceBinder)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Protected} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure GetListHandler(AFormatter:IFormatterResponse);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure AddHandler(AFormatter:IFormatterResponse);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure UpdateHandler(AFormatter:IFormatterResponse);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure FindHandler(AFormatter:IFormatterResponse);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure DeleteHandler(AFormatter:IFormatterResponse);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 constructor Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TUserService_ServiceBinderFactory = class(TInterfacedObject,IItemFactory)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 protected} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function CreateInstance():IInterface;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Server_service_RegisterUserServiceService();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure TUserService_ServiceBinder.AddHandler(AFormatter:IFormatterResponse);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 cllCntrl : ICallControl;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 tmpObj : UserService;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 callCtx : ICallContext;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 strPrmName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procName,trgName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AUser : TUser;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 callCtx := GetCallContext();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TObject(AUser) := Nil;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 strPrmName := 'AUser'; AFormatter.Get(TypeInfo(TUser),strPrmName,AUser);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 If Assigned(Pointer(AUser)) Then} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 callCtx.AddObjectToFree(TObject(AUser));} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 tmpObj := Self.GetFactory().CreateInstance() as UserService;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if Supports(tmpObj,ICallControl,cllCntrl) then} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 cllCntrl.SetCallContext(GetCallContext());} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 tmpObj.Add(AUser);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procName := AFormatter.GetCallProcedureName();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 trgName := AFormatter.GetCallTarget();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AFormatter.Clear();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AFormatter.BeginCallResponse(procName,trgName);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AFormatter.EndCallResponse();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 callCtx := Nil;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/Code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Host the service into an application server.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The application server's role is to route incoming service requests to the Web Service Toolkit runtime. For the runtime to process service requests :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls11\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The services and their implementations have to be registered ,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls11\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The message protocol (SOAP, XMLRPC, binary,...) have to be registered. } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The runtime interface is defined in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b server_service_intf} unit. This unit contains :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls10\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetServerServiceRegistry}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 , which returns the service registry,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls10\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetServiceImplementationRegistry}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 which returns the service implementation registry,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls10\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetFormatterRegistry}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 which returns the message format registry and} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls10\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b HandleServiceRequest}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 which is the unique entry point for request processing.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Starting from the version 0.5, the toolkit provides a simplified model to develop applications server . This is achieved using the listener classes. A listener implements a transport between the server and its clients. The toolkit provides three (3) listen -ers implementations:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f4\b\b\b\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls9\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b TwstIndyHttpListener ( indy_http_server.pas ),} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f4\b\b\b\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls9\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b TwstIndyTcpListener ( indy_tcp_server.pas ) and} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls9\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TwstSynapseTcpListener ( synapse_tcp_server.pas )}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 . } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 All listeners derive from {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TwstListener} defined in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b server_listener.pas} file.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Below is printed a Indy based HTTP server sample. The code is divided into three (3) parts :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u57356\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u57356\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls8\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 messaging format registration : {\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 Server_service_RegisterSoapFormat(), Server_service_RegisterXmlRpcFormat(),}{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 }{\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 Server_service_RegisterBinaryFormat();} ) } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u57356\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls8\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 service implementation and binder registration : {\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 RegisterUserServiceImplementationFactory(); Server_service_RegisterUserServiceService();}} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u57356\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls8\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 the listner creation and starting : the listener is created by the line {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 AppObject:=TwstIndyHttpListener.Create(); }. It is started by the line {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 AppObject.Start();} } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 program http_server;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$mode objfpc\}\{$H+\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 uses} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$IFDEF UNIX\}\{$IFDEF UseCThreads\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 cthreads,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$ENDIF\}\{$ENDIF\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Classes, SysUtils,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 indy_http_server, metadata_service, logger_extension, server_listener,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 server_service_soap, server_binary_formatter, server_service_xmlrpc, config_objects,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 user_service_intf, user_service_intf_binder, user_service_intf_imp;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AppObject : TwstListener;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Server_service_RegisterBinaryFormat();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Server_service_RegisterSoapFormat();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Server_service_RegisterXmlRpcFormat();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 RegisterUserServiceImplementationFactory();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Server_service_RegisterUserServiceService();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AppObject := TwstIndyHttpListener.Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 try} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('"Web Service Toolkit" HTTP Server sample listening at:');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('http://127.0.0.1:8000/');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 WriteLn('Press enter to quit.');} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AppObject.Start();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ReadLn();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 finally} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FreeAndNil(AppObject);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end. } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [/Code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b Server_service_RegisterUserServiceService}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b user_service_intf_binder} unit registers the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b UserService} service by calling in turn {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetServerServiceRegistry:}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code located in user_service_intf_binder.pas]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Server_service_RegisterUserServiceService();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 GetServerServiceRegistry().Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 'UserService',TUserService_ServiceBinderFactory.Create() as IitemFactory} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End; } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b RegisterUserServiceImplementationFactory}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b user_service_intf_imp} unit ( generated by {\rtlch\ltrch\dbch\hich\i\b\loch\i\b ws_helper} ) registers the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b UserService} implementation by calling in turn {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetServiceImplementationRegistry:}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code located in user_service_intf_imp.pas]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure RegisterUserServiceImplementationFactory();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 GetServiceImplementationRegistry().Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 'UserService',TImplementationFactory.Create(TUserService_ServiceImp) as IServiceImplementationFactory);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b Server_service_RegisterSoapFormat}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b server_service_soap} unit ( provided by the toolkit ) registers the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b SOAP} implementation by calling in turn {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetFormatterRegistry:}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code located in server_service_soap.pas]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Server_service_RegisterSoapFormat();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 GetFormatterRegistry().Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sPROTOCOL_NAME,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sSOAP_CONTENT_TYPE,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TSimpleItemFactory.Create(TSOAPFormatter) as IitemFactory} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 RegisterStdTypes();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 Server_service_RegisterBinaryFormat}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b server_binary_formatter} unit ( provided by the toolkit ) registers the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b Binary message} implementation by calling in turn {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetFormatterRegistry:}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code located in server_binary_formatter.pas]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Server_service_RegisterBinaryFormat();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 GetFormatterRegistry().Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sPROTOCOL_NAME,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sBINARY_CONTENT_TYPE,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TBinaryFormatterFactory.Create() as IitemFactory} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 Server_service_RegisterXmlRpcFormat}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 located in {\ltrch\hich\f4\loch\f4 the server_service_xmlrpc} unit ( provided by the toolkit ) registers the {\rtlch\ltrch\dbch\hich\i\b\loch\i\b XMLRPC message} implementation by calling in turn {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetFormatterRegistry:}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code located in server_service_xmlrpc.pas]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Server_service_RegisterXmlRpcFormat();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 GetFormatterRegistry().Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sPROTOCOL_NAME,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 sXMLRPC_CONTENT_TYPE} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TBinaryFormatterFactory.Create() as IitemFactory} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ab\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\b\loch\f3\fs20\lang1033\b {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b [Code]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 In order to give it a try one have to :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\tx2550 1.\tab}\ilvl0 \ltrpar\s1\cf0\tx2550{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls7\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 compile the server ( {\ltrch\hich\f4\loch\f4 \\samples\\tcp_server\\tcp_server.lpi} it is a console program),} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360 2.\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls7\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 compile the client application ( {\ltrch\hich\f4\loch\f4 \\samples\\user_client_console\\user_client_console.lpi} ),} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360 3.\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls7\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 execute the server and start listening,} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360 4.\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls7\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 execute the client.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b WSDL generation.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Services in the toolkit are organized into {\rtlch\ltrch\dbch\hich\i\b\loch\i\b meta data repositories}. Conceptually a repository corresponds :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls6\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 at compile time to the pascal unit containing the service definition} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls6\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 at runtime to a name space. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The repository is the toolkit WSDL generation unit.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b The Meta data Service.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit is provided with an easy to use metadata service implementation which in turn uses the raw interface defined in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b metadata_repository} unit (see above). A Lazarus GUI client application is located in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b tests\\metadata_browser} folder.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b WSDL generation API.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b metadata_wsdl} pascal unit contains the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GenerateWSDL} function for WSDL generation from a repository (see the signature below). } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 PServiceRepository = ^TServiceRepository;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TServiceRepository = record} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 NameSpace : ShortString;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Name : ShortString;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 RootAddress : ShortString;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ServicesCount : Byte;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Services : PService;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure GenerateWSDL(AMdtdRep : PServiceRepository; ADoc : TDOMDocument);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\b\f7\fs23\b\fs23\b \ltrpar\s8\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\b\loch\f2\fs23\lang1033\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i0\b WSDL Customization.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The WSDL generation is based on the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b IWsdlTypeHandler} and the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b IWsdlTypeHandlerRegistry} interfaces located in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b metadata_wsdl} unit. In order to customize the generated WSDL, one has to provide a class implementing the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b IWsdlTypeHandler} interface. Then that - class has to be registered in the registry. The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b metadata_wsdl} unit contains implementations for pascal enumerations, {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseComplexRemotable} descendants, and {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseArrayRemotable} descendants.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Sample} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A functional sample project is located under {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \\samples\\http_server} . It is an Indy based http server.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Services Extensions \'96 Server side} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Services extensions provide a mean to hook into all the services request processing stages. Services extensions may be used, for example, to implement authentication, request logging, data compression, etc.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The IServiceExtension below is the interface used by the toolkit runtime to call services extensions.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TMessageStage = (} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 msAfterDeserialize, msAfterSerialize, msBeforeDeserialize, msBeforeSerialize} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 IServiceExtension = interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{E192E6B3-7932-4D44-A8AC-135D7A0B8C93\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure ProcessMessage(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AMessageStage : TMessageStage;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ACallContext : ICallContext;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AMsgData : IInterface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\chcbpat4\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch }}{\chcbpat4{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 end;}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The "{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b AMsgData}" parameter actual type depends on the message processing state and corresponds to :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls5\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 IRequestBuffer}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 on "{\ltrch\hich\f4\loch\f4 msBeforeDeserialize}" and "{\ltrch\hich\f4\loch\f4 msAfterSerialize}"} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\sa120\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls5\aspalpha\li720\ri0\lin720\rin0\fi-360\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 IFormatterResponse}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 on "{\ltrch\hich\f4\loch\f4 msAfterDeserialize}" and "{\ltrch\hich\f4\loch\f4 msBeforeSerialize}" } -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 These types are located in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b server_service_intf} unit. Extensions have to be registered in the extensions registry ( located in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b server_service_intf unit }) printed below :} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 IServiceExtensionRegistry = Interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{68DC78F1-E6CF-4D6B-8473-75288794769C\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function Find(const AName : string):IServiceExtension;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Register(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AFactory : IItemFactory} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 In order for an service implementation to use a service extension, it has to register himself to that extension. To that end, the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b IServiceImplementationFactory} interface provides the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b RegisterExtension} method. A complete sample is included in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \\samples\\h -ttp_server}{\rtlch\ltrch\dbch\hich\b\loch\b }sample ( implemented in {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \\samples\\logger_extension.pas} ).} -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Services meta data.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Services in the toolkit are organized into {\rtlch\ltrch\dbch\hich\i\b\loch\i\b meta data repositories( see the \'93services's meta data\'94 below )}. Conceptually a repository corresponds :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls6\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 at compile time to the pascal unit containing the service definition} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls6\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 at runtime to a name space. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\rtlch\ltrch\dbch\hich\f4\i\b\loch\f4\i\b ws_helper} tool, when parsing the interface definition file, records the meta data of the services contained in the file to a resource file. The resource file is then embedded into the generated binder's unit file( see the unit \'93initialization\'94 part ). -At runtime the service's recorded meta data are accessible through the interface {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b IModuleMetadataMngr} defined in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b metadata_repository} unit ( see below ). The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b GetModuleMetadataMngr} function defined in the same unit returns an instance of an object support -ing that interface.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 IModuleMetadataMngr = interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{B10ACF6A-A599-45A3-B083-BEEFB810C889\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function IndexOfName(const ARepName : shortstring):Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetCount():Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetRepositoryName(const AIndex : Integer):shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure SetRepositoryNameSpace(const ARepName,ANameSpace : shortstring);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function LoadRepositoryName(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ARepName,ARootAddress : shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 out ARepository : PServiceRepository} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure ClearRepository(var ARepository : PServiceRepository);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure SetServiceCustomData(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ARepName : shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AServiceName : shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ADataName,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AData : string} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure SetOperationCustomData(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ARepName : shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AServiceName : shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AOperationName : shortstring;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ADataName,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AData : string} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 //---------------------------------} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetServiceMetadata(const ARepName,AServiceName : shortstring) : PService;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure ClearServiceMetadata(var AService : PService);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\chcbpat4\rtlch\ltrch\dbch\hich\loch{\rtlch \ltrch\loch }}{\chcbpat4{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 end;}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Extended Meta data.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The meta data interface provides a way to add custom data to recorded ones. Services's metadata can be set through {\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 SetServiceCustomData, }operation's metadata be set through the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b SetOperationCustomData} method.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A repository's extended meta data has to be registered after the service meta data recorded in the resource file have been registered. So for client application the generated proxy unit contains a conditional code fragment to call a registration procedure -like showed below for the eBay sample located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b tests\\ebay} folder. The procedure name is obtained from the interface unit name ( the repository's name ) : {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 Register_}{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b %UNIT_NAME%}{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 _ServiceMetadata} . } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 initialization} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$i ebay.wst\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$IF DECLARED(Register_ebay_ServiceMetadata)\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Register_ebay_ServiceMetadata();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 \{$ENDIF\}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End. } -\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Headers support.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b The THeaderBlock class } -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 THeaderBlock = class(TBaseComplexRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Direction : THeaderDirection read FDirection write FDirection;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Understood : Boolean read FUnderstood write FUnderstood;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 published} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property mustUnderstand : Integer read FmustUnderstand write SetmustUnderstand } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 stored HasmustUnderstand;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TheaderBlock} showed above ( the private part has been omitted for brevity), located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b base_service_intf} unit, is the root class all header classes are derived from.. The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b Direction} property indicate whether it is an incoming header or an outgoin -g one. The {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b mustUnderstand} property define whether the header is a mandatory one.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Defining header class.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Soap headers are derived from the THeaderBlock base class located in the {\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b base_service_intf} unit. They have to be registered in the type registry. Below is reproduced an header example extracted from the {\rtlch\ltrch\dbch\hich\b\loch\b \'93calculator\'94} sample project located the {\ltrch\hich\f4\loch\f4 tests\\calcula -tor}.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TCalcHeader = class(THeaderBlock)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 published} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Login : string read FLogin write FLogin;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Password : string read FPassword write FPassword;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property WantedPrecision : Integer read FWantedPrecision write FWantedPrecision;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b The ICallContext interface.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ICallContext = Interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{855EB8E2-0700-45B1-B852-2101023200E0\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure AddObjectToFree(const AObject : TObject);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Clear();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function AddHeader(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AHeader : THeaderBlock;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AKeepOwnership : Boolean} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetHeaderCount(const ADirections : THeaderDirections):Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetHeader(const AIndex : Integer) : THeaderBlock;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure ClearHeaders(const ADirection : THeaderDirection);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End; } -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The ICallContext interface defined in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b base_service_intf} unit represents the service call context. The {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 AddHeader} method allows headers sending while the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 GetHeader} method retrieves header in the call context.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Client side headers.} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 An {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 ICallContext} reference may be obtained from the current service proxy instance simply by querying it for that interface as showed in the code fragment below extracted from the {\rtlch\ltrch\dbch\hich\b\loch\b \'93calculator\'94} client example project.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ch : TCalcHeader;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdrs : ICallContext;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FObj := TCalculator_Proxy.Create('Calculator', edtFormat.Text, edtAddress.Text);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ch := TCalcHeader.Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ch.mustUnderstand := 1;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ch.Login := 'azerty';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ch.Password := 'qwerty';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ch.WantedPrecision := 121076;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdrs := FObj as ICallContext;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdrs.AddHeader(ch,true);} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 A header may be made mandatory by setting its {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 mustUnderstand} property to 1 as in the code above.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Server side headers.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b The ICallControl interface.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ICallControl = interface} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ['\{7B4B7192-EE96-4B52-92C7-AE855FBC31E7\}']} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure SetCallContext(ACallContext : ICallContext);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetCallContext():ICallContext;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b ICallControl} interface, located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b server_service_intf} unit, is used by the toolkit runtime to share the executing call environment with service implementation classes. When the runtime is about to issue a call against a implementation class insta -nce, it queries that instance for ICallControl interface support; If the implementation has ICallControl interface support then the obtained reference is used to set the call context through the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 SetCallContext} method. The implementation instance can then a -ccess the call context by calling the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 GetCallContex} method.} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit provides the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b TBaseServiceImplementation} class which has support for the ICallControl interface and can be used as a base implementation class. It is the base class used by the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\i\b\loch\f3\fs20\i\b ws_helpe}{\rtlch\ltrch\dbch\hich\i\b\loch\i\b r} generated skeleton implementation class when invoked the - {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b -i }command line option.} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The method printed below, extracted from the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\b\loch\f3\fs20\b calculator} sample service demonstrates the access to headers for read and write.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function TCalculator_ServiceImp.AddInt(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const A : Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const B : Integer} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ):TBinaryArgsResult;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdr : TCalcResultHeader;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 h : TCalcHeader;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 cc : ICallContext;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdr := TCalcResultHeader.Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 cc := GetCallContext();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 if Assigned(cc) and ( cc.GetHeaderCount([hdIn]) > 0 ) and ( cc.GetHeader(0).InheritsFrom(TCalcHeader) ) then begin} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 h := cc.GetHeader(0) as TCalcHeader;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 h.Understood := True;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdr.Assign(h);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdr.TimeStamp := DateTimeToStr(Now());} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdr.SessionID := 'testSession';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 cc.AddHeader(hdr,True);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 hdr := nil;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result := TBinaryArgsResult.Create();} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Try} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result.Arg_OP := '+';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result.Arg_OpEnum := coAdd;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result.Arg_A := A;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result.Arg_B := B;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result.Arg_R := A + B;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Result.Comment := 'Doing an + operation';} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Except} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FreeAndNil(Result);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Raise;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b SOAP Specific.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Binding style.} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The binding style is used to indicate whether the service is {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \'93RPC\'94} oriented or {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \'93Document\'94} oriented.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Client side.} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The binding style may be specified in the SOAP protocol string on the creation of a service proxy. The default value for the binding style is \'93RPC\'94. Below is printed a sample code that demonstrates the use of \'93Document\'94 style.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 locService := TSampleService_Proxy.Create(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 'SampleService',} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\b\loch\b 'SOAP:Style=Document;EncodingStyle=Litteral'}}{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ,} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 'http:address=http://127.0.0.1/services/SampleService'} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 ); } -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Server side.} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Currently services created with the toolkit use the \'93RPC\'94 binding style.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Encoding style.} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The encoding style indicates the rules used to encode types in XML. Supported values are {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \'93Encoded\'94} and {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \'93Litteral\'94}.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Client side.} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The encoding style may be specified in the SOAP protocol string on the creation of a service proxy. The default value for the encoding style is \'93Encoded\'94. The above sample demonstrates the use of \'93Litteral\'94 style.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Server side.} -\par \pard\plain \ltrpar\s2\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Currently services created with the toolkit use the \'93Encoded\'94 encoding style.} -\par \page\pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Provided examples} -\par \pard\plain \ltrpar\s2\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sa120\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The HTTP server side samples has been tested on Windows XP and Ubuntu. The client side has been tested under Windows XP and Ubuntu. The samples are located under the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \'93samples\'94 and some under the 'tests'} folder.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Client side examples} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls4\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 UserService, {\ltrch\hich\f4\loch\f4 samples\\http_server, samples\\tcp_server, samples\\user_client_console, sample\\library_server} : the client console uses the three client and server protocols (HTTP, TCP, LIBRARY)} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls4\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Google sample : It demonstrates use of class and array data types.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls4\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Metadata Browser : This sample demonstrates use of class and array data types and mainly the toolkit metadata service.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls4\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 eBay sample, this sample uses OpenSLL which can be found at {\field{\*\fldinst HYPERLINK "http://www.openssl.org/" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.openssl.org/" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "http://www.openssl.org/" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 http://www.openssl.org}}}}}} and SYNAPSE ( http://www.ararat.cz/synapse/ ).} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls4\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 \\samples\\delphi\\user_client_console}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : Delphi ( compile with Delphi 7) client sample. Used protocol : the TCP, HTTP, LIBRARY; Used format : BINARY. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Server side examples} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls3\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 samples\\tcp_server}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : This is a sample TCP server based on the Synapse components. It uses the UserService.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls3\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 samples\\http_server}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : This is a sample HTTP server based on the Indy10 components. It uses the UserService and the toolkit metadata service. It demonstrates the WSDL generation.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls3\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\ltrch\hich\f4\loch\f4 samples\\apache_module}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : Apache module sample, this sample demonstrates the hosting of the toolkit into the Apache HTTP web server. It is based on Sekelsenmat 's Apache headers translation. It uses the UserService service and the toolkit metadata service. I -t demonstrates the WSDL generation.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b\qj \ltrpar\s6\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Delphi examples} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Delphi samples are located in the \\{\ltrch\hich\f4\loch\f4 samples\\delphi} folder. } -\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Status} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit is usable for simple types and for class types. The serialization is designed to allow customization of basic types and class types by implementing classes derived from \'93{\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseRemotable}{\chcbpat4 \'94}. This classes have to be registered in the type registry. -} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit is provide with :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls2\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 SOAP 1.1 message format implementation ( FCL XML units or Delphi xmlDOM ) } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls2\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 XMLRPC message format implementation ( FCL XML units or Delphi xmlDOM ) } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls2\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 binary one format implementation.} -\par \pard\plain \sb240\sa120\keepn\f2\fs28\b\f7\fs28\b\fs28\b \ltrpar\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\b\loch\f2\fs28\lang1033\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i0\b Serialization} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The serialization is based on the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 IFormatterBase} interface located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 base_service_intf} unit.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has three serializers implementations : the SOAP serializer, the XMLRPC serializer and a binary serializer.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b SOAP serializer} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The SOAP serializer implements SOAP 1.1. It has support for the following pascal types:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Available integers : } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Byte mapped to unsignedByte} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 ShortInt mapped to byte} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 SmallInt mapped to short} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Word mapped to unsignedShort} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LongInt mapped to int} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LongWord mapped to unsignedInt} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Int64 mapped to long} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Qword mapped to int} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 String mapped to string} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Boolean mapped to boolean} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Enumerations mapped to their string representation (?)} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Float types : } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Single mapped to float} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Double mapped to double} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Extended mapped to double} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Currency mapped to float} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Object (class intances, not TP ones ) :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has support for instances of classes derived from {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseRemotable}. {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseRemotable} is the base class used by the formatter interface to allow customization of the serialization.. The toolkit provides the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseComplexRemotable} class which impleme -nts serialization for its ( or its descendants ) published properties. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Binary serializer} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Binary serializer is more efficient in time and space compared to the SOAP serializer . It uses big endian to stream data. This serializer has been tested with Delphi 7 ( {\ltrch\hich\f4\loch\f4 \\samples\\delphi\\user_client_console} ) It has support for the following pascal typ -es:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Available integers : } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Byte } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 ShortInt } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 SmallInt } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Word } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LongInt } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LongWord} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Int64 } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Qword } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 String } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Boolean } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Enumerations } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Float types : } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Single } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Double} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Extended } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Currency } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Object (class intances, not TP ones ) :} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has support for instances of classes derived from {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseRemotable}. {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseRemotable} is the base class used by the formatter interface to allow customization of the serialization.. The toolkit provides the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 TBaseComplexRemotable} class which implemen -ts serialization for its ( or its descendants ) published properties. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Class type serialization. } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit has support for instances of classes derived from {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseRemotable}. {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseRemotable} is the abstract base class used by the formatter interface to allow customization of the serialization. The toolkit provides the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseComplexRemotable} class which -implements serialization for its descendants classes published properties. It also provides {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseObjectArrayRemotable} class for serialization of array of {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseRemotable} descendant classes.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs23\b\f7\fs23\b\fs23\b \ltrpar\s8\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\b\loch\f2\fs23\lang1033\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i0\b The root \'93TBaseRemotable\'94 class.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch {\chcbpat4 }}{\chcbpat4{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 TBaseRemotable = class(TPersistent)}} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 constructor Create();virtual;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class procedure Save(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AObject : TBaseRemotable;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AStore : IFormatterBase;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const AName : String;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Const ATypeInfo : PTypeInfo} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );virtual;abstract;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class procedure Load(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 Var AObject : TObject;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AStore : IFormatterBase;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var AName : String;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ATypeInfo : PTypeInfo} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );virtual;abstract;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End; } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseRemotable}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 is the abstract base class used by the formatter interface to allow customization of the serialization. This class defines a virtual constructor and mainly two(2) virtual abstract class methods :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b Save}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : this method is called when the toolkit needs to serialize the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b AObject} parameter.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b Load}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 : this method is called when the toolkit needs to un-serialize to the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b AObject} parameter.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\b\f7\fs23\b\fs23\b \ltrpar\s8\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\b\loch\f2\fs23\lang1033\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i0\b The \'93TBaseComplexRemotable\'94 serialization.} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 TBaseComplexRemotable = class(TAbstractComplexRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class procedure Save(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AObject : TBaseRemotable;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AStore : IFormatterBase;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const AName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ATypeInfo : PTypeInfo} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class procedure Load(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var AObject : TObject;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 AStore : IFormatterBase;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 var AName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 const ATypeInfo : PTypeInfo} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 );override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class procedure RegisterAttributeProperty(const AProperty : shortstring);virtual;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class procedure RegisterAttributeProperties(const APropertList : array of shortstring);virtual;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 class function IsAttributeProperty(const AProperty : shortstring):Boolean;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 procedure Assign(Source: TPersistent); override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseComplexRemotable}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 implements serialization for its descendants classes published properties. The serialization is based on runtime type information (RTTI) and can be customized to:} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 ignore always some published properties.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u57354\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls0\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 ignore conditionally some published properties.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The following class shows a the serialization's customization sample.} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch {\chcbpat4 }}{\chcbpat4{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 TSampleClass = class(TBaseComplexRemotable)}} -\par \pard\plain \ltrpar\s1\cf0\chcbpat4{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs20\lang255\ltrch\dbch\af6\langfe255\hich\f3\fs20\lang1033\loch\f3\fs20\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 private} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FProp_Always: Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FProp_Never: Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 FProp_Optional: Integer;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 function GetStoredProp_Optional: boolean;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 published} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 //This property will always be serialized} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Prop_Always : Integer read FProp_Always write FProp_Always;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 //This property will never be serialized} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Prop_Never : Integer read FProp_Never write FProp_Never stored False;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 //This property will be serialized if "Self.GetStoredProp_Optional() = True"} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 property Prop_Optional : Integer read FProp_Optional write FProp_Optional stored GetStoredProp_Optional;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f3\fs20\lang1033\i0\b0 End;} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs21\b\f7\fs21\b\fs21\b \ltrpar\s9\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs21\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs21\lang1033\b\loch\f2\fs21\lang1033\b {\rtlch \ltrch\loch\f2\fs21\lang1033\i0\b Attribute properties.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseComplexRemotable}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 allows properties serialization as attributes. Theses properties have to be registered as such with the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b RegisterAttributeProperty} class method or {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b RegisterAttributeProperties} one.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\b\loch\f4\fs24\lang1033\b -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0{\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TBaseComplexSimpleContentRemotable}}{\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 provides implementation for the \'93XML Schema\'94 complex types which extend simple types with attributes. The following example illustrates this :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 [XML-SCHEMA]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 [/XML-SCHEMA]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This type will be translate by {\rtlch\ltrch\dbch\hich\f4\i\b\loch\f4\i\b ws_helper} to Pascal as} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [code]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 DecimalWithUnits = class(TComplexFloatExtendedContentRemotable)} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 private} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 FUnits : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 published} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property Units : string read FUnits write FUnits;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [/code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 using the predefined types ( in {\ltrch\hich\f4\loch\f4 base_service_intf.pas} )} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [code]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 TBaseComplexSimpleContentRemotable =} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class(TAbstractComplexRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 protected} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class procedure SaveValue(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AObject : TBaseRemotable; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AStore : IformatterBase} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 );virtual;abstract;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class procedure LoadValue(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 var AObject : TObject; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AStore : IformatterBase} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 );virtual;abstract;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class procedure Save(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AObject : TBaseRemotable;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AStore : IFormatterBase;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 const AName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 const ATypeInfo : PTypeInfo} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 );override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class procedure Load(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 var AObject : TObject;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AStore : IFormatterBase;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 var AName : string;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 const ATypeInfo : PTypeInfo} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 );override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 TComplexFloatExtendedContentRemotable =} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class(TBaseComplexSimpleContentRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 private} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 FValue: Extended;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 protected} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class procedure SaveValue(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AObject : TBaseRemotable; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AStore : IformatterBase} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 );override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class procedure LoadValue(} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 var AObject : TObject; } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 AStore : IformatterBase} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 );override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property Value : Extended read FValue write FValue;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [/code]} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 An instance of this type looks like the one below. Every attribute must be registered using the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b RegisterAttributeProperty() }method. The toolkit provides class for Pascal basic types( {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b TComplexInt8UContentRemotable, TComplexInt8SContentRemotable, TComplexInt -16SContentRemotable}, ...).} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [XML]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 12.10} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [/XML]} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\b\f7\fs23\b\fs23\b \ltrpar\s8\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\b\loch\f2\fs23\lang1033\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i0\b Provided array implementations.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit provides array implementation for basic types ( in the {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b base_service_intf} unit ) listed below. The implementations are based on the serialization's customization.} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Available integers : } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Byte \tab TArrayOfInt8URemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 ShortInt \tab TArrayOfInt8SRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 SmallInt \tab TArrayOfInt16SRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Word \tab TArrayOfInt16URemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LongInt \tab TArrayOfInt32SRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 LongWord\tab TArrayOfInt32URemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Int64 \tab TArrayOfInt64SRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Qword \tab \tab TArrayOfInt64URemotable} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 String \tab TarrayOfStringRemotable( AnsiString )} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Boolean \tab TArrayOfBooleanRemotable} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Float types : } -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Single \tab \tab TArrayOfFloatSingleRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Double\tab \tab TArrayOfFloatDoubleRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Extended \tab TArrayOfFloatExtendedRemotable} -\par \pard\plain {\listtext\pard\plain \li1789\ri0\lin1789\rin0\fi-360\qj\f5\fs18\f5\fs18\f5\fs18 \u10146\'3f\tab}\ilvl1 \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li1789\ri0\lin1789\rin0\fi-360\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Currency \tab TArrayOfFloatCurrencyRemotable} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit array's implementation support \'93embedded\'94 array serialization. This type of array occurs typically with types like the following one ( the {\chcbpat5\ltrch\hich\f4\loch\f4 "ResponseGroup"} may be repeated ):} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [XML-SCHEMA]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [/XML-SCHEMA]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 which could be instantiated as} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [XML]} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 1 } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 Sample name} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 Group 1} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 Group 2} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 Group 3} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 } -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [/XML]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 This type will be translate to Pascal by {\rtlch\ltrch\dbch\hich\f4\i\b\loch\f4\i\b ws_helper} as (the private and protected parts are omitted to be short)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0\chcbpat5{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f4\fs24\lang1033\loch\f4\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 CustomerContentSearchRequest_ResponseGroupArray =} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class(TBaseSimpleTypeArrayRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 public} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 class function GetItemTypeInfo():PTypeInfo;override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 procedure SetLength(const ANewSize : Integer);override;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property Item[AIndex:Integer] : string } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 read GetItem write SetItem; default;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 CustomerContentSearchRequest = class(TBaseComplexRemotable)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 published} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property CustomerPage : positiveInteger } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 read FCustomerPage } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 write FCustomerPage stored HasCustomerPage;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property Email : string } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 read FEmail } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 write FEmail } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 stored HasEmail;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property Name : string read FName write FName stored HasName;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 property ResponseGroup :} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 CustomerContentSearchRequest_ResponseGroupArray} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 read FResponseGroup } -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 write FResponseGroup;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 end;} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 implementation} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 GetTypeRegistry().ItemByTypeInfo[} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 TypeInfo({\chcbpat5\ltrch\hich\f4\loch\f4 CustomerContentSearchRequest_ResponseGroupArray)]}} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch }{\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 .RegisterExternalPropertyName(sARRAY_STYLE,sEmbedded);} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f4\fs24\lang1033\i0\b0 (...)} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 [/code]} -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The last instruction set the array style to {\rtlch\ltrch\dbch\hich\f4\b\loch\f4\b \'93Embedded\'94} and so the SOAP formatter will serialize the array accordingly.} -\par \pard\plain \sb240\sa120\keepn\f2\fs23\i\b\f7\fs23\i\b\fs23\i\b \ltrpar\s7\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs23\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs23\lang1033\i\b\loch\f2\fs23\lang1033\i\b {\rtlch \ltrch\loch\f2\fs23\lang1033\i\b Test cases} -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The toolkit uses {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 FPCUnit} for test cases. The test project is located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 \\tests\\test_suite} folder. } -\par \pard\plain {\listtext\pard\plain \li720\ri0\lin720\rin0\fi-360\f5\fs18\f5\fs18\f5\fs18 \u10004\'3f\tab}\ilvl0 \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\ls1\aspalpha\li720\ri0\lin720\rin0\fi-360\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 The Delphi tests suite is based on Dunit and is located in the {\chcbpat4\rtlch\ltrch\dbch\hich\f3\fs20\loch\f3\fs20 \\tests\\test_suite\\delphi} folder.} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 -\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b -\par \pard\plain \sb240\sa120\keepn\f2\fs28\i\b\f7\fs28\i\b\fs28\i\b \ltrpar\s5\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\sb240\sa120\keepn\ql\rtlch\afs28\lang255\ai\ab\ltrch\dbch\af7\langfe255\hich\f2\fs28\lang1033\i\b\loch\f2\fs28\lang1033\i\b {\rtlch \ltrch\loch\f2\fs28\lang1033\i\b Author} -\par \pard\plain \ltrpar\s1\cf0\qj{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\aspalpha\rtlch\af6\afs24\lang255\ltrch\dbch\af6\langfe255\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 {\rtlch \ltrch\loch\f1\fs24\lang1033\i0\b0 Inoussa OUEDRAOGO, {\field{\*\fldinst HYPERLINK "mailto:inoussa12@gmail.com" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "mailto:inoussa12@gmail.com" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033{\field{\*\fldinst HYPERLINK "mailto:inoussa12@gmail.com" }{\fldrslt \*\cs31\cf2\ul\ulc0\rtlch\ltrch\dbch\hich\f1\fs24\lang1033\loch\f1\fs24\lang1033 inoussa12@gmail.com}}}}}}. } -\par } \ No newline at end of file diff --git a/wst/trunk/doc/WebServiceToolKit.rtf.zip b/wst/trunk/doc/WebServiceToolKit.rtf.zip new file mode 100644 index 0000000000000000000000000000000000000000..6f4319ee972f5a81fae50b56422d09822646ba93 GIT binary patch literal 647620 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%0Aa}C(dtQ+seSbMYYk&vSS3D?f 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
bwV@9y)OZDrbIGvpq;E9F_6E~7kaT)bZ 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
{91xPgY4Bcxfj}$IHTo)pk9V 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 z
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

D|Ej1 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

1M!nWU#&lhymZb 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
V=Zb@ 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

d$3P34CV2K+L+W;Z3t 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 E05OHj%m4rY literal 0 HcmV?d00001