Aa/ A@D ```   Pp  pXX,XXV@SFI!"@FݺFݺFݺFݺX̀̀̀ff@  d Footnote TableFootnote**.\t.\t/ - :;,.!?  d~** dTOCHeading1Heading2BabbisBengtCorbaEklund LinkpingMnesiaNETSimNEsNEs,NiclasOrberTillmanUIs Xagorarakisbasic_create_MOetsftpgengshttpicintranet jinterfacemmldbnetsimdbpman superservertelnettss   EquationVariablesB ?<56667!7:9u?>???A?w@;#@7A&BiE <$lastpagenum><$daynum> <$monthname> <$year>"<$daynum>/<$monthnum>/<$shortyear>:<$daynum> <$monthname> <$year> <$hour>:<$minute00> <$ampm>"<$daynum>/<$monthnum>/<$shortyear><$daynum> <$monthname> <$year>"<$daynum>/<$monthnum>/<$shortyear> <$fullfilename> <$filename> <$paratext[Title]> <$paratext[Heading1]> <$curpagenum> <$marker1> <$marker2> (Continued)+ (Sheet <$tblsheetnum> of <$tblsheetcount>)Heading & Page <$paratext> on page<$pagenum>Pagepage<$pagenum>See Heading & Page%See <$paratext> on page<$pagenum>. Table All7Table<$paranumonly>, <$paratext>, on page<$pagenum>Table Number & Page'Table<$paranumonly> on page<$pagenum>&HTMLHeadings++A--A//1133557\Aہ99ہ;;==JJzz~~ 00*9w 5}5 5 5 5 5 5555555555555555<<55555555555555555555555555555555555=I=K55555566666 6 6 66=}=66666==6!6#6%6'6)6+6-6/61636567696;6=6?6A6C6E6G6I6K6M6O6Q6S6U6W6Y6[6]6_6a6c6e6g6i6k6m6o6q6s6u6w6y6{6}66666666 6 6 6666666666666 6 6 6 6666666666666666666666666666666666666 7 7 7777 7 7777777777 7# 7% 7' 7) 7+7-7/71737577797< 7> 7@ 7B7D7F7H7J7L7N7P7R7T7V7X7Z7\7^7`7b7d7f7h7j7l7n7p7q9y 9{ 9}999999999999999999>V>X>Z??? ??  ?#?& ?+ ?B?F?cu?\ ?du?eu?fu?gB B ?mu?n ?su?tu?uq?vq?wu?xq?yu?zq?{q?|q?}q?~q?q?q? ?u?u?q?q?q?q?€q?Àq?Āq?ŀq?ƀq?ǀ ?р"?ـ"?߀"@"@ "@"@"@2 @7@V@Xq@Yq@\u@]q@^q@_q@`q@au@b @zu@{q@~q@u@q@q@u@q@q@u@q@ A; A= uA>uA?uA@uAAqABqACqAFqAGuAH AMuARuASuATqAUqAVqA]uAXuA^qA_ AduAeqAfuAiqAjqA A ÀuÀqA΀qAπqAЀqAԀuAՀqA؀ A݀uAހqA߀qAqAuAqAqAqAqAA AuAuAuAuAuAuAuBAqA BuBqBuBqBqBqBqB qBqB+qB,qBBuBqBqBq_ISFq5+ISFq18ISFq FݺfURqFݺfURFݺFݺFootnote FݺqF@qFݺqF@FݺyFݺy Single LineFݺ^jӎ,XqFootnoteuu*XX-W+  dN }WXX?5=?WXX?W,  d }XX5>@XX W-  d P:Heading1 }XXH5?AXXH W.  dH* }XX65@BXX6 W/  dN }*XX-5AC*XX- W0  dN }WXX?5BDWXX? W1  d }XX5CEXX W2  d P:Heading2 }XXH5DFXXH W3  dH* }XX65EGXX6 W4  dN }*XX-5FH*XX- W5  dN }WXX?5GIWXX? W6  d }XX5HJXX W7  dP:HeadingRunIn }XXH5IKXXH W8  dH* }XX65JLXX6 W9  dN }*XX-5KM*XX- W:  dN }WXX?5LNWXX? W;  d }XX,5MOXX, W<  d P:Indented }XXH,5NPXXH,, ?  dP =d Parent = UL Q>d Depth = 0 }XX6,5OQXX6, W@  dN }*XX-,5PR*XX-, WA  dN }WXX?,5QSWXX?, WB  d }X4X5RTX4X WC  dP:Mapping Table Cell }X4XH5SUX4XH WD  dP }X4X66TVX4X6 WE  dN }*X4X-6UW*X4X- WF  dN }WX4X?6VXWX4X? WG  d }XDX6WYXDXWH  dP:Mapping Table Title }XDXH6XZXDXHWI  dP }XDX66 Y[XDX6WJ  dN }*XDX-6 Z\*XDX-WK  dN }WXDX?6[]WXDX?WL  d }XTX,6\^XTX,WM  d P:Numbered }XTXH,6]_XTXH,,P  dLI Nd Parent = OL QOd Depth = 0 }XTX6,6^`XTX6,WQ  dN }*XTX-,6_a*XTX-,WR  dN }WXTX?,6`bWXTX?,WS  d }XX,6acXX,WT  d P:Numbered1 }XXH,6bdXXH,,W  dLI Ud Parent = OL QVd Depth = 0 }XX6,6"ceXX6,WX  dN }*XX-,6$df*XX-,WY  dN }WXX?,6&egWXX?,WZ  d }XX6(fhXXW[  dP:TableFootnote }XXH6*giXXHW\  dP }XX66,hjXX6W]  dN }*XX-6.ik*XX-W^  dN }WXX?60jlWXX?W_  d }XX62kmXXW`  d P:TableTitle }XXH64lnXXHWa  dH* }XX666moXX6Wb  dN }*XX-68np*XX-Wc  dN }WXX?6:oqWXX?Wd  d }XX6<prXXWe  dP:Title }XXH6>qsXXHWf  dH* }XX66@rtXX6Wg  dN }*XX-6Bsu*XX-Wh  dN }WXX?6DtWXX?Wi  d }XZX6F wXZX Wj  d C:Emphasis }XZXH6H vxXZXH Wk  dEM }XZX66J wyXZX6 Wl  dN }*XZX-6L xz*XZX- Wm  dN }WXZX?6N y{WXZX? Wn  d }XjX6P z|XjX Wo  dC:EquationVariables }XjXH6R {}XjXH Wp  dEM }XjX66T |~XjX6 Wq  dN }*XjX-6V }*XjX- Wr  dN }WXjX?6X ~WXjX? Ws  d }XzX6Z XzX Wt  dX:Heading & Page }XzXH6\ XzXH Wu  dHeading }XzX66^ XzX6 Wv  dN }*XzX-6` *XzX- Ww  dN }WXzX?6b WXzX? Wx  d }XX6d XX Wy  dX:Page }XXH6f XXH Wz  dHeading }XX66h XX6 W{  dN }*XX-6j  *XX- W|  dN }WXX?6l  WXX? W}  d }XX6n XX W~  dX:See Heading & Page }XXH6p XXH W  d See Also }XX66r XX6 W  dN }*XX-6t *XX- W  dN }WXX?6v WXX? W  d }XX6x XX W  d X:Table All }XXH6z XXH W  d Table All }XX66| XX6 W  dN }*XX-6~ *XX- W  dN }WXX?6 WXX? W  d }XX6 XX W  dX:Table Number & Page }XXH6 XXH   $Table PDNumber }XX66 XX6 W  dN }*XX-6 *XX- W  dN }WXX?6 WXX? W  d }XXل 6 XXل  W dHTML Options Table }fXل 6 fXل  W e } ߊXل 6 ߊXل  W e }XXqb6 XXqb W  dControl }fX~$$6 fX~$$ W  dValue } ߊXH6  ߊXH W  d Comments }XXqb6  XXqb W  d Image Format }fX~$$6 !fX~$$ W  d0001IMAGGIF GIF } ߊXH6 " ߊXH W  d }XXqb6 !#XXqb   $Copy Files Imported PD by Reference }fX~$$6 "$fX~$$ W  dN } ߊXH6 #% ߊXH W  d }X,Xqb6 $&X,Xqb W  dExport Encoding }f,X~$$6 %'f,X~$$ W  d ISO-8859-1 } ߊ,XH6 &' ߊ,XH W  d }XRXل 6 ),XRXل   W dSystem Macros }XRXل 6 XRXل   W e }XRXل 6 XRXل   W e }TXRXل 6 TXRXل   W e }XbXh6 (-XbXh !W  d Macro Name }XbXh6 ,.XbXh !W!  d Replace With }XbXh6 -/XbXh !W"  dHead }TXbXB6 .0TXbXB !W#  d Comments }XrXh,6 /1XrXh, "W$  d StartOfDoc }XrXh,6 02XrXh, "W%  d }XrXh,6 13XrXh,, "&  $ ��<$defaulttitle></P��DTITLE> }TXrXB,��6� 24��TXrXB, �"W'  ��d }XXh��6� 35��XXh �#�W(  ��d EndOfDoc }XXh��6� 46��XXh �#W)  ��d }XXh��6� 57��XXh �#W*  ��d }TXXB��6� 68��TXXB �#W+  ��d }XXh,��6� 79��XXh, �$�W,  ��dStartOfSubDoc }XXh,��6� 8:��XXh, �$W-  ��d }XXh,��6� 9;��XXh,, �$.  ��$<TITLE> ��<$defaulttitle></P��DTITLE> }TXXB,��6� :���TXXB, �$W/  ��d }XXh��6�!�=��XXh"�%�W0  ��d EndOfSubDoc }XXh��6�!<>��XXh"�%W1  ��d }XXh��6�!=?��XXh"�%W2  ��d }TXXB��6�!>@��TXXB"�%W3  ��d }XLXh,��6�!?A��XLXh,"�&�W4  ��dStartOfFirstSubDoc }XLXh,��6�!@B��XLXh,"�&W5  ��d }XLXh,��6�!AC��XLXh,,"�&6  ��$<TITLE> ��<$defaulttitle></P��DTITLE> }TXLXB,��6�!BD��TXLXB,"�&W7  ��d }XxXh��6�!CE��XxXh"�'�W8  ��dEndOfFirstSubDoc }XxXh��6�!DF��XxXh"�'W9  ��d }XxXh��6�!EG��XxXh"�'W:  ��d }TXxXB��6�!FH��TXxXB"�'W;  ��d }XXh,��6�!GI��XXh,"�(�W<  ��dStartOfLastSubDoc }XXh,��6�!HJ��XXh,"�(W=  ��d }XXh,��6�!IK��XXh,,"�(>  ��$<TITLE> ��<$defaulttitle></P��DTITLE> }TXXB,��6�!JL��TXXB,"�(W?  ��d }XXh��6�!KM��XXh"�)�W@  ��dEndOfLastSubDoc }XXh��6�!LN��XXh"�)WA  ��d }XXh��6�!MO��XXh"�)WB  ��d }TXXB��6�!NP��TXXB"�)WC  ��d }XXل ��6�!OS��XXل "�*�WD ��dCross-Reference Macros }XXل ��6�!����XXل "�*WE ��e }<XXل ��7�!����<XXل "�*WF ��e }XX����7�!PT��XX��"�+�WG  ��d Macro Name }XX����7�!SU��XX��"�+WH  ��d Replace With }<XX?��7�!TV��<XX?"�+WI  ��d Comments }XX����7 �!UW��XX��"�,�WJ  ��dHeading }XX����7 �!VX��XX��"�,WK  ��d <$paratext> }<XX?��7 �!WY��<XX?"�,WL  ��d }XX����7�!XZ��XX��"�-�WM  ��d See Also }XX����7�!Y[��XX��"�-WN  ��dSee <$paratext>. }<XX?��7�!Z\��<XX?"�-WO  ��d }X X����7�![]��X X��"�.�WP  ��d Table All }X X����7�!\^��X X��"�.Q  ��$Table <$paranumonly>, P��D <$paratext> }<X X?��7�!]_��<X X?"�.WR  ��d }X(X����7�!^`��X(X��"�/�WS  ��d Table Number }X(X����7�!_a��X(X��"�/WT  ��dTable <$paranumonly> }<X(X?��7�!`b��<X(X?"�/WU  ��d }X>Xل ��7"�!af��X>Xل "�0�WV ��dGeneral Macros }X>Xل ��7$�!����X>Xل "�0WW ��e }X>Xل ��7&�!����X>Xل "�0WX ��e }TX>Xل ��7(�!����TX>Xل "�0WY ��e }XNXh��7*�!bg��XNXh"�1�WZ  ��d Macro Name }XNXh��7,�!fh��XNXh"�1W[  ��d Replace With }XNXh��7.�!gi��XNXh"�1W\  ��dHead }TXNX9��70�!hj��TXNX9"�1W]  ��d Comments }X^Xh��72�!ik��X^Xh"�2�W^  ��d }X^Xh��74�!jl��X^Xh"�2W_  ��d }X^Xh��76�!km��X^Xh"�2W`  ��d }TX^X9��78�!ln��TX^X9"�2Wa  ��d }XtXل ��7;�!mq��XtXل "�3�Wb ��dCharacter Macros }dXtXل ��7=�!����dXtXل "�3Wc ��e }XtXل ��7?�!����XtXل "�3Wd ��e }XXH��7A�!nr��XXH"�4�We  ��d Character }dXX����7C�!qs��dXX��"�4Wf  ��d Replace With }XX?��7E�!rt��XX?"�4Wg  ��d Comments }XXH��7G�!su��XXH"�5�Wh  ��d }dXX����7I�!tv��dXX��"�5Wi  ��d¢ }XX?��7K�!uw��XX?"�5Wj  ��d }XXH��7M�!vx��XXH"�6�Wk  ��d }dXX����7O�!wy��dXX��"�6Wl  ��d© }XX?��7Q�!xz��XX?"�6Wm  ��d }XXH��7S�!y{��XXH"�7�Wn  ��d }dXX����7U�!z|��dXX��"�7Wo  ��d® }XX?��7W�!{}��XX?"�7Wp  ��d }XXH��7Y�!|~��XXH"�8�Wq  ��d }dXX����7[�!}��dXX��"�8Wr  ��d° }XX?��7]�!~���XX?"�8Ws  ��d }XLXH��7_�$���XLXH%�9�Wt  ��d }dXLX����7a�$���dXLX��%�9Wu  ��d-- }XLX?��7c�$��XLX?%�9Wv  ��d }X\XH��7e�$��X\XH%�:�Ww  ��d }dX\X����7g�$��dX\X��%�:Wx  ��d- }X\X?��7i�$��X\X?%�:Wy  ��d }XlXH��7k�$��XlXH%�;�Wz  ��d }dXlX����7m�$��dXlX��%�;W{  ��d... }XlX?��7o�$���XlX?%�;W|  ��d ��SFI��7t�������� ������� XXلŊ��7u� ����XXلŊ�������v; �v{� "%'(,048<@DHLPSVY\_bfjnqtwz}���XXلŊ��7w� ����XXلŊ,X# ���,X�,XU ���}XXل ��9v����XXل �<�W ��dHeadings Table }XXل ��9x�����XXل �<W~ ��e }XXل ��9z�����XXل �<W ��e }XXl��9|� ��XXl�=�W�  ��dHeading Level }XXu��9~���XXu�=W  ��dParagraph Format }XXH��9���XXH�=W  ��d Comments }XLXl��9���XLXl�>�W  ��d1 }XLXu��9���XLXu�>W ��dTitle }XLXH��9���XLXH�>W  ��d }XbXl��9���XbXl�?�W  ��d2 }XbXu��9���XbXu�?W UTUT��d Heading1 }XbXH��9���XbXH�?W  ��d }XtXl��9���XtXl�@�W  ��d3 }XtXu��9���XtXu�@W  ��d Heading2 }XtXH��9���XtXH�@W  ��d }XXl��9���XXl�A�W  ��d4 }XXu��9���XXu�AW ��d HeadingRunIn }XXH��9���XXH�AW  ��d }XXl��9���XXl�B�W  ��d4 }XXu��9� ��XXu�BW  ��d TableTitle }XXH��9����XXH�BW  ��d ��SFI��9��������##������� XXلŊ��9�!����XXلŊ�������<#�<@DHLPSVY\_bfjnqtwz}���XXلŊ��9�!����XXلŊ,X &""���,X�,XU �����SFI��;��������&& ������� XXلŊ��;�$����XXلŊP�������&�����XXلŊ��;�$����XXلŊ,X#�%%���,X�,XU ���}X<Xqb��>U� '(��X<Xqb �C�W  ��dCSS Export Encoding }f<X~$$��>W� ')��f<X~$$ �CW  ��d ISO-8859-1 } ߊ<XH��>Y� ((�� ߊ<XH �CW  ��d FݺFݺ¼(Hŋ��?�����FݺFݺ¼(Hŋ ��������+����G��e FݺFݺ¼(Hŋ��?�3���FݺFݺ¼(HŋX��**���,X�,XU ��� FݺFݺ¼(Hŋ��?�����FݺFݺ¼(Hŋ ��������-����W���` FݺFݺ¼(Hŋ��?�/9��FݺFݺ¼(HŋX��,,���,X�,XU ��� Fݺ),¼(H ��?�����Fݺ),¼(H ��������/����W���` Fݺ),¼(H ��?�1-��Fݺ),¼(H X��..���,X�,XU ��� Fݺn¼(H ��?�����Fݺn¼(H ��������1����W���` Fݺn¼(H ��?��/��Fݺn¼(H X��00���,X�,XU ��� Fݺ),¼(H ��?�����Fݺ),¼(H ��������3����G��e Fݺ),¼(H ��?!�5+��Fݺ),¼(H X��22���,X�,XU ��� Fݺn¼(H ��?"�����Fݺn¼(H ��������5����G��e Fݺn¼(H ��?$��3��Fݺn¼(H X��44���,X�,XU ��� FݺFݺ¼(Hŋ��?%�����FݺFݺ¼(Hŋ|��� ��� ����7����+���  7���� ����NETSim - 6 years with Erlang b+���� ���� ���� ����Bengt Tillman ����ERA Linkping ���� ����bengt.tillman@era.ericsson.se ���@2http://www.lmera.ericsson.se/tss/ (Ericsson only) FݺFݺ¼(Hŋ��?'�����FݺFݺ¼(HŋX�A66 ���,X�,XU ���DU`� գ��?G� =���DU`� գFH$wň��?)�-;��FH$wň��:: ���,X�,XU ��� FH$wň��?*�����FH$wň��������9����WUTUT���`Ericsson Radio Systems AB ϲYUY��?:� 9=��ϲYUY��<< ���,X�,XU ��� ϲYUY��?;�����ϲYUY��������;����'���,D16D �h R(���L(D 16D ) _$x*��?D� ;8��_$x*,X��>> ���,X�,XU ��� _$x*��?E�����_$x* ��������=����W���` 2000-09-20 ��ISF��?V��������AA �������� FݺFݺ¼(Hŋ��?W�?����FݺFݺ¼(Hŋ��������A����!+���`NETSim - six years with Erlang %'���`  *T���`*NETSim - a Network Element Test Simulator (���`What is NETSim? "���`8Technical challenges and their solution with Erlang/OTP #���`=Administrative challenges and their solution with Erlang/OTP A$���`Summary FݺFݺ¼(Hŋ��?Y�?����FݺFݺ¼(HŋX7D@@ ���,X�,XU �����ISF��?]��������DD �������� FݺFݺ¼(Hŋ��?^�B����FݺFݺ¼(Hŋ����EEE��D����W'+�� h#NETSim in a telephone networkD FݺFݺ¼(Hŋ��?`�B����FݺFݺ¼(HŋXAHCC ���,X�,XU ���Fݺdݺ³f��Bj�B�����.2Ip�C������ISF��?o��������HH �������� FݺFݺ¼(Hŋ��?p�F����FݺFݺ¼(Hŋ��������H����)+���`NETSim **��� GNETSim simulates the operations and maintenance (O&M) functions of netN���@1work elements (exchanges) in a telephone network +o���` Customers: ,'��� ?Developers and testers of Operation Support Systems (OSS) and ���@!Network Management Systems (NMS) -���`"Trainers of OSS and NMS operators .*Ϫ���`Installations: /'窣��� 6Ericsson development, test and education departments ���@all over the world 0*���`Scope: 1'4���`CMany different O&M protocols (MTP, IIOP, ftp, X29, MIP, telnet...) 2G���`&Many different types of simulated NEs 3���`5Many different versions of each type of simulated NE 4���`;Many different O&M functions (MML commands, Corba methods) 5���` Many simultaneous simulated NEs 7���`Many simultaneous users A6���`Heavy O&M traffic FݺFݺ¼(Hŋ��?r�F����FݺFݺ¼(HŋXDsGG ���,X�,XU ���֍ wՅ*��Bk�E�JP�J�֍ wՅ*b}M#Ӫ͙���Bl�EILPI��b}M#Ӫ͙�,X��KK ���,X�,XU ��� b}M#Ӫ͙���Bm�E����b}M#Ӫ͙���������J����W&,���`IP or X.25 network MjUUo��Bn�EJMO�M�MjUUo MIy32��Bo�ELNOL��MIy32MIMI�,Telephone networkb"Y*ij��Bp�EMO��b"Y*ij�MjU��Bq�ENP��MjULM֍ wՄ*��Br�EOQ��֍ wՄ*IJ RbF"tUY��Bs� EPR��RbF"tUY�aw"RbF)bFpw)w =tUY��Bt� EQS��=tUY�l=U7oUM: ^SM7tUY��Bu� ERT��^SM7tUY�SM7^jj bU!-tUY��Bv� ESU��bU!-tUY�w!-bU9 w9" M tUY��Bw� ETV�� M tUY�"TM R˭"WRb PbktUY��Bx�EUW��PbktUY�_wPbk*Bnw* `"atUY��By�EVX�� `"atUY�"P`"a wb#"Sww b M'tUY��Bz�EWY��b M'tUY�(w M'b#7w#  3F"tUY��B{�EXZ�� 3F"tUY�"F" 3]bI""]w 7\M4tUY��B|�EY[��7\M4tUY�M8\M47sM;sdF&ݼ ��B}�EZ\��dF&ݼ �M#&dFF"n"|J*df��B~�E[]��"n"|J*df�M%"|"nDw"FzJ*��B�E\^��w"FzJ*��"F"Fw,M3M'vUi��B�E]_��M'vUi�M'Zc7wӀ*s��B�E^`��c7wӀ*s�c7wdFF~"FF*zL��B�E_a��~"FF*zL�~"FFM?b"FF^+iH��B�E`b��FF^+iH�FF TN"N"{U_� ��B�Eac��N"{U_� �N"{%""iUt*��B�Ebd��iUt*�i"2 _"F+Fգ�M��B�Ece��_"F+Fգ�M�_"F+FiAX"h*UW��B�Edf��AX"h*UW�AewX"U%M2��B�Eeg��U%M2�)MX%M2UJ8 zuuΤ7e���B�Efh��{"`f{"M0{"M0�.Telephone traffic -t&f��B�Egi�� -t&fJJ�. Simulated NE wa ?f��B�Ehj��wa ?fwnwn�.Real Network Element (NE) /M/ (jf��B�Eik��/M/ (jf/M//M/�. OSS or NMS`wA �~��B�Ejl��`wA �~�`wA `ww ewU`ff��B�Ekm��ewU`ffewbMewbM�. O&M traffic: ewg`Jf��B�Eln��ewg`JfewtMewtM�.- Commands and responses ewy` f��B�Emo��ewy` fewMewM�.- Corba method calls ew` 1f��B�Enp��ew` 1fewMewM�.- Alarms and notifications ew`f��B�Eo���ew`fewMewM�.- Files��ISF��?��������ss �������� FݺFݺ¼(Hŋ��?�q����FݺFݺ¼(Hŋ+� ��� ����s����8+���`&Tech. challenge 1 - Product structure 9*���`)Different products for different markets ;'T���`GSM <g���`PDC (Pacific Digital Cellular) =���`UMTS >���`General AXE simulation !?��� User developed products ���@ :*ժ���`(Many functions in more than one product @'���`General AXE simulation A����`General Corba functions B���`User interfaces AC���`NETSim information model FݺFݺ¼(Hŋ��?�q����FݺFݺ¼(HŋXHvrr ���,X�,XU �����ISF��?��������vv�������� FݺFݺ¼(Hŋ��?�t����FݺFݺ¼(Hŋ<� ���www��v����WD+�� h+Tech. challenge 1 - Product structureD  FݺFݺ¼(Hŋ��?�t����FݺFݺ¼(HŋXs"uu ���,X�,XU ���Fݺdݺ´<L<��?�t�����&Ixx]�u ����N"9kYI>m��?�w�z{�z�N"9kYI>m� Rk@uQmήm��?�w����Rk@uQmήmĪ��������z����E/��� General p����Corba ���@ function Rk@uQmήm��?� wx{{x��Rk@uQmήmĎ,X��yy���,X�,XU ���N"9kYI>m��?�wz}��N"9kYI>mǁxzOtRIVen\{>��@#�w��Z;}2_ gbF"F̓\IVGJښi7)GpZGXX*:lI{[hbOtRVN[Y^( 88]ځ2fF"FN"YI>m��?�w{~��~�N"YI>m�RkEQmήm��?� w}��}��RkEQmήmĎ,X�����,X�,XU ��� RkEQmήm��?�w����RkEQmήmĪ��������~����F/��� Common p����AXE ���@ functions N"YI>m��?�w~��N"YI>mǁ}~N"IYI>m��?�w���N"IYI>m�RkQmήm��?� w��RkQmήmĎ,X�����,X�,XU ��� RkQmήm��?�w����RkQmήmĪ������������G/��� UIs and p���� information ���@model N"IYI>m��?�w��N"IYI>mǂl kYI>m��@�w��l kYI>m�2>Qmήm��@� w��2>QmήmĎ,X�����,X�,XU ��� 2>Qmήm��@�w����2>QmήmĪ������������H/��� GSM p���� specific ���@ functions l kYI>m��@�w ��l kYI>mǂl FYI>m��@�w � �l FYI>m�2kQmήm��@� w ��2kQmήmĎ,X�� ���,X�,XU ��� 2kQmήm��@ �w����2kQmήmĪ�������� ����I/��� PDC p���� specific ���@ functions l FYI>m��@ �w ��l FYI>mǂ k YI>m��@ �w ��k YI>m�"Qmήm��@� w  ��"QmήmĎ,X�����,X�,XU ��� "Qmήm��@�w����"QmήmĪ������������J/��� UMTS p���� specific ���@ functions k YI>m��@�w��k YI>mǂ l ,�YI>m��@�w��l ,�YI>m�23ٔQmήm��@� w��23ٔQmήmĎ,X�����,X�,XU ��� 23ٔQmήm��@�w����23ٔQmήmĪ������������K/��� User p���� developed ���@ functions l ,�YI>m��@�w|��l ,�YI>mǂ%"@w~b��@%�w|��01_5zk돐n>vdkYmm4ՠGeGNs =L�GB޴-ymFn%"@XFMRM5wiwzFF KB8i!x_)��@&�w��eT  ,S\*6-~yb2ZMe9jwN*EtæN\u D/"nMQGB8FGJ % K#.erU^'!t^؊8av١.3P."FaSz��@'�w��}ȆdvʠwHw޻t= F]1Uy?x8xg"vV݈$%(% b"*;>qMD!pkN5 M,zBMpJˉ'2>a7 !Smi.۪wIܢJ"c �"/�f��@(�w���"/�f�w�w�-� LmFf��@)�w��LmFfL"ZL"Z�/,NETSim exploits �qdynamic linking�o in L˹ f��@,�w��L˹ fL"ZL"Z�/!order to be able to ship the same LOf��@-�w��LOfL"ZL"Z�/programs in many different LBX f��@.�w��LBX fLL"ZLL"Z�/ combinations. L�f��@/�w��L�fLG"ZLG"Z�/� L\f��@0�w��L\fLf"ZLf"Z�/NETSim does not use the Li˹ f��@1�wS��Li˹ fLs"ZLs"Z�/*Erlang/OTP �qapplication�o concept. ��ISF��@3��������""�������� FݺFݺ¼(Hŋ��@4� ����FݺFݺ¼(HŋøD� ���###��"����L+���`$Tech. challenge 2 - Many commands M'��� 9NETSim shall simulate many different commands in many PE�� H9different versions of many different types of NEs,D FݺFݺ¼(Hŋ��@6� ����FݺFݺ¼(HŋXv3!! ���,X�,XU ���FݺݸºxF��@:� �����U0.�!����K ��@=�#0&��K  Z"`4*#6��@C�#')��Z"`4*#6Z"`M!Z"`M!�'SAAII�rI-IIIVTH��@?�#$'��VTHkk��@A�#&%��kk T%z^'��@Q�#+,��T%z^'̐TgTg�'Base Station Controller (BSC) w:#6��@H�#%*��w:#6wM'wM'�' NTCOP�rI Q%ے#6��@N�#)+��Q%ے#6\\�' NTCOP�rII twPJBʒ#6��@P�#*(��twPJBʒ#6tw!7tw!7�' NTCOP�rIII B]zՔr��@R�#(-��B]zՔrB]JB]J�'R6 wûP*r��@S�#,.��wûP*rwFwF�'R7 w1%r��@T�#-���w1%rw<w<�'R8 w̎*^�:��@U�#����w̎*^�:� ��� ����0����N���` V*���`Example of commands O'���`#AXE commands (CACLP, SAAII, NTCOP) PR���` Corba methods (basic_create_MO) Q*t��`2Solution: One Erlang �smodule�j per command R'��� Unique module names: 0����- ntcop_bscr6.erl ����- ntcop_bscr7.erl ���@- ntcop_bscr8.erl S���`(~ 1100 modules (Erlang/OTP runtime 738) !T��� "Search database per NE type which ���@maps command to Erlang module AU���`(Structured modules would have been nice w̎*^�:��@W� #�$��w̎*^�:,X��//���,X�,XU �����ISF��@c��������33�������� FݺFݺ¼(Hŋ��@d�1����FݺFݺ¼(Hŋ��������3����W+���`Tech. challenge 3 - Many NEs X*���`'Many NEs must be active simultaneously Z'T���`?System test - 300 to 600 simulated NEs - > 4000 in the future Yg���`LFunction test - a number of testers (10) have one network each (10-50 NEs) [*���`Other requirements ]'��� HEach NE shall have its own database where the following functions shall 0����+be possible independently and at any time: ����&- save database (10 - 30,000 records) ����- restore database ���@(- copy database to another simulated NE \���`:Load distribution over several computers must be possible ^*"���`*Solution: NETSim database implementation: _4:�� 8ets�g tables with a wrapper around (mmldb, netsimdb) 'M���@)[{{Table, Key}, [{Tag, Value}, ...]}...] `4��`-Mnesia�g too rigid - we have looked at it a*���`3Solution: NETSim load distribution implementation: Sb4��`'Distributed Erlang�g, see next page FݺFݺ¼(Hŋ��@f�1����FݺFݺ¼(HŋX"622 ���,X�,XU �����ISF��@��������66�������� E3G¼(Hŋ��@�4����E3G¼(Hŋ����777��6 ����Wc+�� h"Tech. challenge 3 - Many NEsD E3G¼(Hŋ��@�4����E3G¼(HŋX355 ���,X�,XU ���E3e½f��@�4�����0*݂9�5����LNMSUcJ*��@�7=>��LNMSUcJ*yԹ �(��@�7�:��yԹ �(�yԹ ya R���@�79;��R�RR�+� A V���@�7:<��A V�A )A )�+� a&@Of��@�7;=��a&@Ofa&#a&#�/ Local area a&׋f��@�7<8��a&׋fa&#a&#�/network7Y���@�78?A�?�7Y�� V���@�7>@A>@�V�lMlM�+� 7^Wf��@�7?AA?��7^Wf7h"h7h"h�/SS7V֛��@�7@C��7V֛>@bM i���@�7ST��bM i��bM ibM "L"SUcJ*��@�7AD��L"SUcJ*L"pSUcJ*��@�7CE��L"pSUcJ*cM&SUcJ*��@�7DF��cM&SUcJ*c"jSUcJ*��@�7EG��c"jSUcJ*bSUcJ*��@�7FH��bSUcJ*b2i+C��@�7GIJ�I�b2\LVb2i+C��Zx0i+C��@�7HJJH��b2\LVx0i+CZZb2iLVC��@�7IK��b2iLVCHIb2\+B��@�7JLM�L�b2\LVb2\+B��Zx0\+B��@�7KMMK��b2\LVx0\+B�Zb2\LVB��@�7LN��b2\LVBKLb2h+C��@� 7MOP�O�b2vѭLVb2h+C��Zx0h+C��@� 7NPPN��b2vѭLVx0h+CZZb2hLVC��@�!7OQ��b2hLVCNOav_+D��@� 7PRS�R�aim֭LVav_+D��Zxv_+D��@� 7QSSQ��aim֭LVxv_+DZZav_LVD��@�!7RB��av_LVDQRMm>�*��@�7BU��Mm>�*�Mm>M eMET6f��@�7TV��eMET6fnn�/Common rMSf��@�7UX��rMSf{{�/disk"��@�7bd��"`b���@�7VY[�Y��� :���@�7XZ[XZ� :� "w "w�+� KT8f��@�7Y[[Y��KT8f̪�/CL:��@�7Z\��:XZ7՛���@�7[]_�]�7՛�� ���@�7\^_\^��M-M-�+� 7 T8f��@�7]__]��7 T8f7"7"�/CL7��@�7^`��7\^%ڛ���@�7_aW�a�%ڛ�� "���@�7`bW`b� "� 8M2 8M2�+� )ƌf��@�7aWWa��)ƌf3M13M1�/SN��A$�7��N� "n���@�7Weg�e� "n�� bf���@�7dfgdf�bf�bfwbfw�+� f"Dƌf��@�7egge��f"Dƌffwfw�/S 퉛��@�7fh�� 퉛dfwɛ���@�7gik�i�wɛ�� fB���@�7hjkhj�fB�f!f!�+� bfwƌf��@�7ikki��bfwƌfbf bf �/SB䛀��@�7jl��B䛀hj M���@�7kmo�m� M�� `6���@�7lnoln�`6�`΢s`΢s�+� b`Lƌf��@�7moom��b`Lƌfb`ɢrb`ɢr�/S 6��@�7np�� 6ln7M���A��7oqs�q�7M��  ���A�7prspr�  � O] O]�+� ALۈƌf��A�7qssq�� ALۈƌf J\ J\�/S7 ��A�7rt��7 pr7CZ���A�7suw�u�7CZ�� @mu���A�7tvwtv�@mu�UU�+� G0ƌf��A�7uwwu�� G0ƌf P P�/S7@mu��A�7vx��7@mutvv"a���A �7wy{�y�v"a�� H r|���A �7xz{xz�H r|�H wH w�+� Jz"7ƌf��A �7y{{y��Jz"7ƌfJwJw�/Sr|��A �7z|��r|xz7ƛ���A�7{}�}�7ƛ�� ���A�7|~|~��MM�+� ƌf��A�7}}�� ƌf M M�/S7ᛀ��A�7~��7ᛀ|~N؛���A�7c��N؛�� 7���A�7�c��7�7+M07+M0�+� bOf��A �7cc��bOfbO'"bO'"�/UIgs����A4�7��gs���gsxs@bNԛ���A�7��@bNԛ�� H���A�7�H�H(M,H(M,�+� K7ƌf��A�7��K7ƌfK7#M+K7#M+�/S@bN��A�7���@bND˛���A&�7c � �D˛�� M ���A'�7  �M �M M#M M#�+� L7f��A(�7 ��L7fL7"xL7"x�/UID曀��A)�7 ��D曀 7]`���A+�7 � �7]`�� Zm{���A,�7  � Zm{� o o�+� bwf��A-�7  ��bwfk k �/UI7Zm{��A.�7��7Zm{ Jw"c���A0�7��Jw"c�� 7s~���A1�7�7s~�7w7w�+� bK{f��A2�7��bK{fbKMbKM�/UIJs~��A3�7��Js~zwZUY���A5�7��zwZUY��zwZZg Lt���A6�7��g Lt��g Lw"eLz@����A7�7��z@���zz$L����A8�7��z$L���z$L $Lg8 @����A9�7��g8 @���g8 x8 [թU��A:�7����[թUZ������������d5��`Erlang nodes�l in NETSim e*��� 2SS - superserver - administers licenses and keeps E���@)track of all other nodes (fixed point) ff��� 4CL - client - administers the networks of simulated x���@NEs for one user g��� 2UI - user interface - graphical (Java) or command ���@line interface h̪��� %S - server - executes simulated NEs. ު���@Limitations to consider: i'��� %Number of ets tables per Erlang node  ���@=> max ~ 256 NEs per server !j��� -Number of unix file descriptors per unix pro���@cess k���`Memory size of computers l��`3One Erlang ORB (�tOrber�g) per NETSim server m*w��� 1Very dynamic environment - nodes come and go all P���@ the time [թU��A<�7��[թU,X�����,X�,XU ��� w19V��AD�7��w19V̪w=ww=w�'UNIX "VA%H\��AE�7���"VA%H\̘"VL"VL�'computer��ISF��AI���������������� FݺFݺ¼(Hŋ��AJ�����FݺFݺ¼(HŋQ� ��� ���� ����n+��� &Challenge 4 - Technological frontline 7���@ o*_���`:First Erlang (R2?) in NETSim had no ets, no behaviours... p���`+Until 1998 Erlang grew and NETSim followed q�� ZWith new GUI (Java) 1997: Erlang - Java coupling through �sjinterface�j and �sic ��@Q(first through �sOrber�j) - unfortunately �sgs�j is not good enough. vԪ���`=With UMTS (3rd gen mobile systems) NETSim is pushing Erlang: r'쪥��`Corba - �tOrber s��`Corba - �tCosNotifications t���`.Many R7 changes caused by NETSim requirements u*4���`8Very good cooperation with and support from Erlang/OTP: Sw'L���`%Niclas Eklund and Babbis Xagorarakis FݺFݺ¼(Hŋ��AL�����FݺFݺ¼(HŋX6" ���,X�,XU �����ISF��A`��������""�������� FݺFݺ¼(Hŋ��Aa� ����FݺFݺ¼(Hŋ� ��� ����" ����x+��� Tech. challenge 5 - parallelism 7���@ y*_���`Requirements: z'w���`$Many NEs executing at the same time |���`)Several parallel command sessions per NE %���`Many UIs open at the same time {*���` Solution: }'ת��`0Erlang �tprocesses�g for commands and NEs S&4ꪤ��`)Distributed Erlang�g for parallel UIs FݺFݺ¼(Hŋ��Ac� ����FݺFݺ¼(HŋX%!! ���,X�,XU �����ISF��A��������%%�������� FݺFݺ¼(Hŋ��A�#����FݺFݺ¼(Hŋ� ���&&&��% ����W~+�� h6Adm. challenge - Lead times and freq. deliveriesD FݺFݺ¼(Hŋ��A�#����FݺFݺ¼(HŋX")$$ ���,X�,XU ���Fݺdݺº��A�#�����34*_�$������ISF��A��������))�������� FݺFݺ¼(Hŋ��A�'����FݺFݺ¼(HŋQ��������) ����+���`Adm. challenge 1 - Lead times �*���`=Solution: The outstanding productivity in Erlang/OTP due to 'T���`)loading of code into an executing system g���`5behaviours (both faster coding and repeated loading) ���`its high level !��� This gives ����1==> real short turn-around times (a few seconds) ����0==> development in a real NETSim installation ����@==> incremental development: write 3 lines and then test them ����9==> development, basic test and integration test at once ����9==> time is spent on making functions - not on debugging ���@<==> compact source code - easy to read and easy to maintain *!���`&Solution: Erlang/OTP is easy to learn '9��� ;we have had many persons writing commands over the years PL���@'and no one has known Erlang in advance FݺFݺ¼(Hŋ��A�'����FݺFݺ¼(HŋX%R(( ���,X�,XU ���w�_��A�&�+��w�_�"wXM +ղ���A�&*-��XM +ղ��XM Px M U��A�&./��U̕UMUM�'TG2M+ղ���A�&+.��M+ղ��MP"U9w+ղ���A�&-,��U9w+ղ��U9wQx9w 2��A�&,0��2̭MM�'OSS development "Y#G=i��A�&/1��"Y#G=i̬"Y/M4"Y/M4�'NETSim developmentwM�*��A�&02��wM�*�wMww %M-dr��A�&14��%M-dr%M-"t%M-"t�' Function test 2YՎ��A�&45��2YՎMM�' System testw�*��A�&23��w�*�w̢w "Yz}��A�&37��"Yz}̬"Y"Y�'NE development Pʽ��A�&78��Pʽ �'Real NE availableyM�*��A�&56��yM�*�yMyPw M,!�y��A�&6:�� M,!�y� M,8w M,! ,.=Dr��A�&GH��,.=Dr,.I",.I"�'Frequent*M+!�y��A�&8;��*M+!�y�*M+8w*M+!4M*!�y��A�&:<��4M*!�y�4M*8w4M*!>M)!�y��A�&;=��>M)!�y�>M)8w>M)!HM(!�y��A�&<>��HM(!�y�HM(8wHM(!RM'!�y��A�&=?��RM'!�y�RM'8wRM'!\M&!�y��A�&>@��\M&!�y�\M&8w\M&!fM%!�y��A�&?A��fM%!�y�fM%8wfM%!pM$!�y��A�&@B��pM$!�y�pM$8wpM$!zM#!�y��A�&AC��zM#!�y�zM#8wzM#!M"!�y��A�&BD��M"!�y�M"8wM"!4w�y��A�&CE��4w�y�48"4wSw�y��A�&DF��Sw�y�S8"Sw [rw�y��A�&EG�� [rw�y� [r8" [rw-"w�y��A�&F9��-"w�y�-"8"-"w ,.MI��A�&9I��,.MI,.Y",.Y"�' deliveries MM<Kg��A�&HJ��MM<KgMMHM8MMHM8�'Some עNzI��A�&IK��עNzIעYעY�' deliveriesA �y��A�&JM��A �y�A w��ISF��A��������RR��������M@A �y��A�&KN��M@A �y�M@A M@wwA �y��A�&MO��wA �y�wA wwRA �y��A�&NP��RA �y�RA Rw-TA �y��A�&O_��-TA �y�-TA -Tw FݺFݺ¼(Hŋ��A�L����FݺFݺ¼(Hŋ|��������R����+���`'Adm. challenge 2 - Frequent deliveries '���` *T���` Problem:  'l���`/Incremental deliveries so test can start early  ���`Frequent changes  ���`.Often parallel support to different customers  *���`.Solution (all implemented as Erlang programs)  '̪���`/Daily build (also used as part of system test) 1ߪ��� EAdministration tool (about 32 different windows implemented in about ���@three weeks using gs) ���`Automatic test records a��� This gives: ����5==> The status of the source code known at all times ����1==> Anyone can do configuration management tasks ����'==> Beta delivery with 24 hours notice ����'==> Alpha delivery with 3 hours notice ���@7==> Patch delivery with returning mail (seldom needed) FݺFݺ¼(Hŋ��A�L����FݺFݺ¼(HŋX)YQQ ���,X�,XU ��� M4 ��A�wT��M4 ̡MM!MM!�'Product "VGs?u��A�wSU��"VGs?u̘"VS""VS"�'Function Blockw'2���A�wTV��w'2��wO9'2awM!UY���A�wU]��awM!UY��awM!x!��ISF��A��������Y^�������� FݺFݺ¼(Hŋ��A�W����FݺFݺ¼(Hŋr� ��� ����Y����+��� 'Adm. challenge 2 - Frequent deliveries 7���@Daily build process *_���`$Build all function blocks (2 hours) ���`'Install function blocks of one product ��� NPerform black-box testing of all functions directly available to the customer ���@-(without programming). (1 - 2 hours/product) Ԫ��`8Install test programs (�sdynamic linking�j again) ��� MPerform black-box testing of application programmer interfaces and white-box 0����Ntesting of internal interfaces (NOTE: the product we deliver to our customers ���@@is NOT contaminated with test programs). (1 - 2 hours/product). :���`%Go back and install the next product ��� KFor all products tested generate a test record (which is automatically pubPm���@lished on the intranet) FݺFݺ¼(Hŋ��A�W�^��FݺFݺ¼(HŋXR\XX ���,X�,XU �����ISF��A��������\\�������� FݺFݺ¼(Hŋ��A�Z����FݺFݺ¼(Hŋ��������\����+���`Summary *��� MWithout the following properties of Erlang/OTP it would have been impossible 0N���Ato develop and maintain NETSim with the small team we have been ���@(2 - 15 persons): 'x��`)so easy to learn - and still so powerful #���`Jso fast to develop in because of loading of code into an executing system  ��`?so flexible because it allows distribution and dynamic linking "���`2so powerful because of its light-weight processes *Ӫ��`<Some other nice features which have saved us a lot of time: '몢���`behaviours, ets $��`?the tools tv, pman and debugger => debugging at customer sites ���`9ASN.1, SNMP, Orber - so far no 3rd party products needed '*3��`)My personal experiences in programming: !'K���`EI programmed assembler, Forth and Pascal 1966 - 1990 and enjoyed it *^��`&I learned C++ in 1990 and disliked it !(��� DIn 1993 I thought about working with project management and system ���@%design rather than to program in C++ a)��� BSince 1993 I have worked with system design and produced more pro��@5grams than ever - in Erlang - and I still enjoy it. FݺFݺ¼(Hŋ��B�Z����FݺFݺ¼(HŋXY�[[ ���,X�,XU ��� "FYES��B.�wV���"FYES̓"F"F"F"F�* Solution:SL]������B>�WY���]��v��u}��SL]KPyXew��M,!�y��B9�&P���M,!�y�M,8wM,!��ISF������Left�ISF������Right�ISF����� Reference�ISF��� �����SFI���HTML�SFI� ���Headings�SFI� ��HTML�SFI� !��HTML�SFI�$��HTML�ISF� ?�����ISF� B�����ISF� F�����ISF� q�����ISF� t�����ISF� �����ISF�1�����ISF�4�����ISF ������ISF � �����ISF �#�����ISF �'�����ISF �L�����ISF�W�����ISF��Z������ �������@��@��������������������� ��������������������������^$���¼(H���Header������. ������@��@��������������������� �������������������������� �Mapping Table Title������. ������@��@��������������������� �������������������������� �Body������. ������@��@��������������������� ������������������������� �Mapping Table Cell������. ������@��@��������������������� �������������������������� �Mapping Table Cell������. ����f�@���������T��������� ���������������� ���������� HeadingRunIn�����Body. bb���@��@������������������������������������� ���������'U �� qb�� u�� &�� l�� ň�� Text������. qbU X���@��@������������������������������������� ���������qb�� Asterix->���Zapf12q\t�. ������@��@����������������������������������������������,� Boxtextbig������. &������@��@��������������������� ��������������������������^$���¼(H���Footer������. ��� �@��@����������U��������������������������� ���������b�� Header.Y�����Text. ������@��@��������������������� ��������������������������� �Mapping Table Title������. ������@��@��������������������� ��������������������������� �Mapping Table Cell������. ������@��@������������������������������������� ����������� �Mapping Table Cell������. ,X����f�@������������������� �������������������������,X�� Bulleted����\t�������@��@������������������������������������� ���������'U �� qb�� u�� &�� l�� ň�� Text������. �����f�@������������������� ��������������������������CellBody������������f�@����������������� �������������������������� CellHeading�������������@��@������������������������������������� ����������� �Mapping Table Cell������. ������@��@��������������������� ���������������� ����������� �Mapping Table Cell������. @@��f�@����������@����������� �������������������������@�� Body�����Body. �����f�@����������������� �������������������������� CellHeading�������U bX�@��@������������������������������������� ���������)U �� \ ?�� J�� Asterix���Zapfu\t�. ���f�@���������T�������������������������� ����������Heading1�����Body���� f�@���������T���������� ���������������� ����������Heading2�����Body��������@��@������������������� ��������������������������� ��� >�� +�� (Master page) $1������. ,X,X���f�@������������������� �������������������������,X�� Indented�������,X����f�@������������������ �������������������������,X�� Numbered����<n+>.\t��,X����f�@��������E���������� �������������������������,X�� Numbered1����<n=1>.\tNumbered�X,X,X��f�@������������������� �������������������������X�� TableFootnote���������� ��@��@����������D�����������������������������������+qb�� &�� ň�� Head1�����Text. �����f�@��������T���������� ���������������� ���������� TableTitle����T:Table <n+>: ��������@��@��������������������� ���������������� ���������/�Boxtext������. �������@��@������������������� �������������������������4�� dP�� (Master Page) $2������. @��f�@��������HI�������������������������� ���������@�� 1Heading����H:<n+>\t1Body. u� ��@��@�������������������� ���������������� ���������&�� ŋ�� 1HeadingLOP������. xu� ��@��@�������������������� ���������������� ���������x�� ŋ��. 1HeadingTOC������. @��f�@��������HQ����������� ���������������� ���������@�� 2Heading����H:<n>< >< >< >.<n+>\t1Body. @~x���@��@�������������������� �������������������������@~�� ŋ��. 2HeadingTOC������. @�� f�@��������HQ����������� ���������������� ���������@�� 3Heading����H:<n>< >< >< >.<n>.<n+>\tBody. ۯ[@~����@��@���������$����������� �������������������������ۯ[�� ŋ��. 3HeadingTOC������. ňl����@��@�������������������� �������������������������ň�� ��. 4HeadingTOC������. @��f�@��������FI��������������������������� ���������jL�� Appendix����F:Appendix <n+>\tBody. u� ��@��@�������������������� ���������������� ���������ň�� ŋ��. AppendixTOC������. U bX�@��@������������������������������������ ���������U �� \ ?�� J�� Asterix���Zapfu\t�. qbU X���@��@������������������������������������ ���������qb�� Asterix->���Zapf12q\t�. @@��f�@���������@����������� �������������������������@�� Body�����Body. ������@��@���������������������������������������������� Boxtextbig������. �����f�@����������������������������������������������CellBody������. uu��@��@��������F�������������������������� ���������U �� qb�� u�� &�� l�� ň�� Contents���� F:Contents�. ��� �f�@��������E���������� ��������������������������Equation��� Helv-10-BoldE:(<n+>)�. ������f�@��������H����������� ������������������������� �� Example�� Table RuleTimes-10-italic-Bold#H:Example <n>-< >< ><n+>< >< >< >\t�. �����@��@���������E�������������������������� ���������qb�� &�� ň�� Exercise���� Exercise - Text. ������f�@��������H����������� �������������������������۶�� Figure���Times-10-italic-Bold"H:Figure <n>-<n+>< >< >< >< >< >\t�. ����f�@�������������������� ��������������������������Footnote������. ��� ��@��@���������D�����������������������������������qb�� &�� ň�� Head1�����Text. ��� ��@��@���������D��������������������������� ���������qb�� &�� ň�� Head2�����Text. ��� ��@��@���������D�������������������������� ���������qb�� &�� ň�� Head3�����Text. jLjL�� �@��@�������������������� ��������������������������Ind 3,5������. c6kFݺ���@��@��������AA���������� �������������������������c6k�� list alfa +��� Helv-10-Bold A:<a+>.\tlist alfa (alfa others). c6kFݺ���@��@��������AA���������� �������������������������c6k�� list alfa first��� Helv-10-Bold A:<a=1>.\tlist alfa (alfa others). c6kFݺ���@��@������������������� �������������������������c6k�� list bullet���zapfD-6\t�. c6k@���@��@��������NA���������� �������������������������c6k�� list num +��� Helv-10-Bold N:<n+>.\tlist num (numeric others). c6k@���@��@��������NA���������� �������������������������c6k�� list num1��� Helv-10-Bold N:<n=1>.\tlist num (numeric others). c6kFݺ���@��@������������������� �������������������������c6k�� list square-empty���zapfD-10p\t�. c6kFݺ���@��@������������������� �������������������������c6k�� list square-filled���zapfD-10n\t�. U b���@��@��������Ae��������������������������� ���������U �� List_(1)���� A:<n=1>)\t List_(1+). U b���@��@��������AE��������������������������� ���������U �� qb�� u�� &�� List_(1+)���� A:<n+1>)\t List_(1+). a+@��@��@�������� ���������� �������������������������a+�� Reference����[<n+>]\t�. @@�f�@���������P����������� ���������������� ���������@�� Subheading�����Body. &@��f�@���������@����������� �������������������������&�� Tab 6.0�����1BodyT. l@��f�@���������@����������� �������������������������l�� Tab 7.0�����1BodyT. �����f�@��������T����������� ���������������� ���������� TableTitle����T:Table <n+>: �. bb���@��@������������������������������������ ���������U �� qb�� u�� &�� l�� ň�� Text������. �����@��@������������������������������������ ���������qb�� &�� ň�� TextCentre������. �����@��@����������������������������������� ���������qb�� &�� ň�� TextHead������. jL5���@��@������������������������������������ ���������jL�� &�� ň�� TextTabBig������. 55� ��@��@���������D��������������������������� ������������ Title�����Text. ������@��@�������������������� ���������������� ����������Boxtext������. �/� �������%��������������������[���� ��������� �������)���� �������� �������ڝ������������ �������[���� ��������� �������ڝ�������������� �������\S��� ���������Zapf12(�������[���� ��������� �������ڝ�����������������������)����� ������������������)����� ����������� �������)����� �������������� ����������� ��������Bold ���3���������� �������Bold10 ���3���������� �������Bold12 ���3���������� �������BoldProgramcode������������� � ��������Button������������� ���������Command ���3��������� ��������command ���3�����������������Emphasis��������������� ��������EquationVariables������������� � ��������Field ���3�����������������Helv-10 ���3�����������������Helv-12���3�����������������Helv-14���3���������� ������� Helv-14-Bold������������ � �������� IndexPageNum ���3�����������������Italic��� ������������ ��������Menu ���3�����������������PrgcodeHighlight������������ � �������� PrgcodeItalic ���3��������� �������� Programcode���"����������� ������� Undelined������������� ���������Window���3��������� ��������Zapf ���3��������� ��������Zapf12 ���3��������� ��������zapfD-10 ������������������������ Helv-12-Bold�������[���� ����������������[���� ����������������\S��� ���������Zapf�������[���� ����������������yc>��������������������yc>������������� �������yc>��������������������[���� ��������� �������[���� ��������� �������[���� ������� Undelined�������[���� ���������������[���� ������� Undelined�������[���� ������� Undelined�������yc>����������� Undelined����������������������������������������������������������������������Zd�����������d��������d����Zd������Zd����Zd�����Zd�����Zd�����Zd�����Zd����Zd�����Zd����Zd����Zd����Zd����Zd� ����Zd����Zd�����Zd�����Zd�����Zd�����Zd���������d����������d��������d����������d������Thin����Medium����Double����Thick�@���� Very Thin�������������������� ��!��������Fݺ��Fݺ��Fݺ��Fݺ��Fݺ�Format A� ����!�������Fݺ��Fݺ��Fݺ��Fݺ��Fݺ�Format B��������������H� Mapping Table���z��>����������������H����6����-����?����7 N��C������qb����~$$����H����z�� ���� )������h����h����h����B����_�� N��*/������������������?����q�� ��02������h����h����h����9������ p��3;������H����������?����)�� W��<B������l����u����H�����C�XXل �������������������XXz��������������������� ��XNXz������������!��"��#��$�%�XlXz������������&���'��(��)��*��X|Xz��,����������+���,��-��.��/��XXz������������0���1��2��3��4��XXz������������5���6��7��8��9��XXz������ ������:���;��<��=��>��XXz������ ������? ���@ ��A ��B ��C ��XXz������ ������D ���E ��F ��G ��H ��XXz������ ������I ���J ��K ��L ��M ��XXz��,���� ������N ���O ��P ��Q ��R ��X4Xz������ ������S ���T ��U ��V ��W ��XDXz������ ������X���Y��Z��[��\��XTXz��,����������]���^��_��`��a��XXz��,����������b���c��d��e��f��XXz������������g���h��i��j��k��XXz������������l���m��n��o��p��XXz������������q���r��s��t��u��XZXz������ ������v���w��x��y��z��XjXz������ ������{���|��}��~����XzXz������ ������������������XXz������ ��������������� ��XXz������ ������ ��� �� �� ����XXz������ �����������������XXz������� ����������������XXل ����� ������������XX7���� ��������������XX7���� ��������� ��!��XX7���� ������"���#��$��X,X7����C ������%���&��'��XRXل �����! �������( ���) �* �+ �XbXz������ " �������,!���-!��.!��/!��XrXz��,����!# ������0"���1"��2"��3"��XXz������"$ ������4#���5#��6#��7#��XXz��,����#% ������8$���9$��:$��;$��XXz������$&"�����<%���=%��>%��?%��XLXz��,����%'"������@&���A&��B&��C&��XxXz������&("������D'���E'��F'��G'��XXz��,����')"������H(���I(��J(��K(��XXz������(�"�����L)���M)��N)��O)��XXل �����+"�������P*���Q*�R*�XX_������*,"�������S+���T+��U+��XX_������+-"������V,���W,��X,��XX_������,."������Y-���Z-��[-��X X_������-/"������\.���].��^.��X(X_������.�"������_/���`/��a/��X>Xل �����1"�������b0���c0�d0�e0�XNXq������02"�������f1���g1��h1��i1��X^Xq������1�"������j2���k2��l2��m2��XtXل �����4"�������n3���o3�p3�XX������35"�������q4���r4��s4��XX������46"������t5���u5��v5��XX������57"������w6���x6��y6��XX������68"������z7���{7��|7��XX������79"������}8���~8��8��XLX������8:%������9���9��9��X\X������9;%������:���:��:��XlX������:�%�����;���;��;��XXل �����=������� <��� <�<�XX)������<>�������=���=��=��XLX)������=?������>���>��>��XbX)������>@������?���?��?��XtX)������?A������@���@��@��XX)������@B������A���A��A��XX)������A�������B���B�� B��X<X7����� ������'C���(C��)C�����Comment���� ��� �?=� �?@������d� �Black�������T!�White����dd���A�Red���dd�����Green���d�d��� �Blue���d�����Cyan�����d���Magenta����d���� �Yellow������Header/Footer $1Header/Footer $1Header/Footer $2Header/Footer $2IndexIndexCommentCommentSubjectSubjectAuthorAuthorGlossaryGlossaryEquationEquation Hypertext Hypertext  Cross-Ref Cross-Ref Conditional TextConditional TextPositionFMPrivatePositionFMPrivateRangeEndFMPrivateRangeEndFMPrivate HTML Macro HTML Macro����� � Times-Roman� FrameRoman�� Times-Bold� FrameRoman��Helvetica-Bold� FrameRoman�� Helvetica� FrameRoman��NewCenturySchlbk-Roman� FrameRoman�� Times-Italic� FrameRoman�� ZapfDingbats� FrameRoman�� Courier-Bold� FrameRoman���� FrameRoman��Courier� FrameRoman���� FrameRoman���� FrameRoman�CourierTimes HelveticaNewCenturySchlbk ZapfDingbats RegularRegular BoldRegularObliqueItalic�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������r9PEIzh`Y s#Ȧ`ȝ<:9˲hM`|N'iǧ73 f{.`Lj>GάaH V0l3RKZ'bXP(0j/pKGί0?t}�5C[#Ҋ'cwi.^cTw"'Эg FU`0@�d(U$6w,mt55*n1\&Bq3&Ǩq:`K9\fUlt|1IN v����