Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

SVN move

Revision: 3
Author: ulrich
Date: 13:26:05, Donnerstag, 25. August 2011
Message:
angepasst auf mikrowebserver
  • Loading branch information...
commit 3d0f1aa176ce9fd973eb778b61705356f45f6e1d 1 parent 0130cb2
@uescher uescher authored
View
1,763 ethernet-light-control/Hexfiles/Webserver_.hex
@@ -0,0 +1,1763 @@
+:100000000C94E90F0C9406100C9406100C94061036
+:100010000C9406100C9406100C9406100C94061008
+:100020000C9406100C9406100C9406100C94C11E2F
+:100030000C9406100C9406100C9406100C940610E8
+:100040000C9406100C9406100C9406100C940610D8
+:100050000C9406100C9406100C9406100C940610C8
+:100060000C9406100C94061047657420504F4E47B0
+:100070003A2025692E25692E25692E25690D0A004D
+:1000800064686370206C656173652072656E657766
+:10009000616C206661696C65640D0A004552524FBF
+:1000A000520D0A0D0A0052656164790D0A0D0A00AD
+:1000B0000D0A0047572020202531692E2531692E51
+:1000C0002531692E2531690D0A004D41534B2025FC
+:1000D00031692E2531692E2531692E2531690D0AA8
+:1000E000000D0A49502020202531692E2531692E26
+:1000F0002531692E2531690D0A0044484350206698
+:1001000061696C0D0A00436F6D70696C696572748A
+:10011000206D6974204743432056657273696F6E82
+:1001200020342E332E330D0A00436F6D70696C69D5
+:1001300065727420616D2041756720323520323040
+:10014000313120756D2031333A31323A31390D0A6F
+:10015000000A0D53797374656D2052656164790AE4
+:100160000D00524553455420202D2072657365744F
+:100170002074686520415652202D20436F6E7472A2
+:100180006F6C6C65720D0A415250202020202D208A
+:100190006C697374207468652041525020746162E8
+:1001A0006C650D0A544350202020202D206C69736B
+:1001B000742074686520746370207461626C650DCE
+:1001C0000A495020202020202D206C6973742F6351
+:1001D00068616E67652069700D0A4E4554202020C5
+:1001E000202D206C6973742F6368616E6765206EC3
+:1001F00065746D61736B0D0A524F55544552202D35
+:10020000206C6973742F6368616E676520726F7507
+:100210007465722069700D0A4E5450202020202DE4
+:10022000206C6973742F6368616E6765204E54504B
+:100230000D0A4E5450522020202D204E5450205252
+:100240006566726573680D0A4D4143202020202D9C
+:10025000206C697374204D41432D61646472657331
+:10026000730D0A564552202020202D206C6973748E
+:1002700020656E632076657273696F6E206E756D92
+:100280006265720D0A535620202020202D207365B0
+:1002900074207661726961626C650D0A50494E473F
+:1002A0002020202D2073656E642050696E670D0A32
+:1002B00054494D452020202D206765742074696DB8
+:1002C000650D0A48454C502020202D207072696E23
+:1002D000742048656C70746578740D0A3F20202086
+:1002E0002020202D207072696E742048656C707417
+:1002F0006578740D0A002563000A0D54494D453A8E
+:10030000202532693A2532693A2532690D0A0049B9
+:100310006E68616C742064657220566172696162F6
+:100320006C655B2532695D203D202532690D0A0030
+:10033000202054696D653A2534690D0A002020504B
+:100340004F52543A253469002E253369002E253347
+:1003500069002E25336900202049503A2533690071
+:1003600025326900202054696D653A2534690D0AEB
+:10037000002E253369002E253369002E25336900B0
+:10038000202049503A253369002E253278002E2549
+:100390003278002E253278002E253278002E253234
+:1003A000780025326920204D41433A2532780045B6
+:1003B0004E4332384A36302D56657273696F6E3A45
+:1003C000202531780D0A004D79204D41433A2025F2
+:1003D00032783A2532783A2532783A2532783A25F9
+:1003E00032783A2532780D0A00526F7574657220A2
+:1003F00049503A202531692E2531692E2531692E43
+:100400002531690D0A004E45544D41534B3A202584
+:1004100031692E2531692E2531692E2531690D0A64
+:10042000004D792049503A202531692E2531692E19
+:100430002531692E2531690D0A0041424344454664
+:100440004748494A4B4C4D4E4F50515253545556C4
+:100450005758595A6162636465666768696A6B6C6C
+:100460006D6E6F707172737475767778797A3031DA
+:1004700032333435363738392B2F3D000400051A16
+:1004800006FF071F080009000AFF0B19C100C00D75
+:10049000C233CAEECB05C415C612E400E522E2F968
+:1004A000E301E038E1C87500FFFF000100140742D6
+:1004B000FFFF3C21444F43545950452068746D6CF4
+:1004C000205055424C494320222D2F2F5733432F84
+:1004D0002F4454442048544D4C20342E3031205465
+:1004E00072616E736974696F6E616C2F2F454E2255
+:1004F0002022687474703A2F2F7777772E77332EF7
+:100500006F72672F54522F68746D6C342F6C6F6F3D
+:1005100073652E647464223E0D0A3C68746D6C3EF3
+:100520003C686561643E0D0A3C6D657461206874C9
+:1005300074702D65717569763D22636F6E74656E9A
+:10054000742D747970652220636F6E74656E743DCE
+:1005500022746578742F68746D6C3B2063686172D7
+:100560007365743D49534F2D383835392D31223E4E
+:100570000D0A3C7469746C653E415652206D696E7B
+:100580006920576562736572766572203A20486FFC
+:100590006D653C2F7469746C653E0D0A3C6C696E28
+:1005A0006B2072656C3D227374796C657368656548
+:1005B000742220747970653D22746578742F63739A
+:1005C00073222020687265663D227374796C6573AE
+:1005D0002E637373223E3C2F686561643E3C626FFC
+:1005E00064793E0D0A3C68313E415652206D696E79
+:1005F0006920576562736572766572203A20486F8C
+:100600006D653C2F68313E0D0A3C64697620696453
+:100610003D226E6176223E3C6120687265663D2215
+:10062000696E6465782E68746D223E486F6D653C16
+:100630002F613E3C6120687265663D22737461746F
+:1006400075732E68746D223E5374617475733C2FFC
+:10065000613E3C2F6469763E0D0A3C6469762069F0
+:10066000643D226D61696E223E3C68323E476CFCFF
+:10067000636B77756E736368213C2F68323E3C6212
+:10068000723E0D0A3C696D67207372633D22726190
+:100690006B65742E676966222077696474683D22F1
+:1006A000393022206865696768743D22393222201A
+:1006B000616C743D22223E3C62723E3C62723E0D91
+:1006C0000A3C703E4475206861737420657320672E
+:1006D00065736368616666743A2044657220576585
+:1006E00062736572766572206CE4756674213C2FC6
+:1006F000703E3C62723E3C68723E3C62723E0D0A45
+:100700003C646976207374796C653D227769647402
+:10071000683A32303070783B6D617267696E3A20AA
+:1007200030206175746F3B223E0D0A3C646976206F
+:100730007374796C653D22666C6F61743A6C6566A2
+:10074000743B77696474683A3130307078223E0DBA
+:100750000A3C666F726D206D6574686F643D22702F
+:100760006F73742220616374696F6E3D22696E64D9
+:1007700065782E68746D223E0D0A3C696E70757442
+:10078000206E616D653D224F55542220747970654D
+:100790003D22636865636B626F78222076616C75B9
+:1007A000653D2241222025504F525441303E506F2A
+:1007B000727420412050696E20303C62723E0D0AF6
+:1007C0003C696E707574206E616D653D224F5554A5
+:1007D0002220747970653D22636865636B626F786F
+:1007E000222076616C75653D2242222025504F52B1
+:1007F0005441313E506F727420412050696E203157
+:100800003C62723E0D0A3C696E707574206E616DBB
+:10081000653D224F55542220747970653D226368EE
+:1008200065636B626F78222076616C75653D22434B
+:10083000222025504F525441323E506F7274204155
+:100840002050696E20323C62723E3C62723E0D0A5C
+:100850003C696E707574206E616D653D2253554222
+:10086000222076616C75653D2253656E64656E224B
+:1008700020747970653D227375626D6974223E0D36
+:100880000A3C2F666F726D3E3C2F6469763E0D0AFE
+:100890003C646976207374796C653D22666C6F6187
+:1008A000743A6C6566743B2077696474683A3130D9
+:1008B000307078223E0D0A3C696D67207372633D8B
+:1008C000222550494E44372220616C743D22223E3D
+:1008D00020506F727420442050696E20373C627241
+:1008E0003E3C696D67207372633D222550494E443A
+:1008F000362220616C743D22223E20506F7274209B
+:10090000442050696E20363C62723E3C696D67201F
+:100910007372633D222550494E44352220616C7428
+:100920003D22223E20506F727420442050696E2078
+:10093000353C62723E3C2F6469763E3C2F6469769A
+:100940003E0D0A3C64697620636C6173733D2263DB
+:100950006C656172223E3C2F6469763E0D0A3C62F2
+:10096000723E3C68723E3C62723E0D0A3C746162AB
+:100970006C6520626F726465723D22302220636C68
+:100980006173733D2274656D7054626C2220616CDA
+:1009900069676E3D2263656E7465722220776964B3
+:1009A00074683D2234303070783B223E0D0A3C742E
+:1009B000723E0D0A3C74683E45696E67616E673C25
+:1009C0002F74683E0D0A3C74683E42616C6B656E24
+:1009D0003C2F74683E0D0A3C74683E54656D70652A
+:1009E0007261747572205BB0435D3C2F74683E0D7C
+:1009F0000A3C2F74723E3C74723E0D0A3C74643E95
+:100A000041442D4B616E616C303C2F74643E0D0A85
+:100A10003C7464207374796C653D22746578742D20
+:100A2000616C69676E3A6C656674223E3C696D67FD
+:100A3000207372633D22696E6465782D446174652C
+:100A400069656E2F62616C6B652E67696622206135
+:100A50006C743D2222206865696768743D223130DC
+:100A6000222077696474683D222556414030302247
+:100A70003E3C2F74643E0D0A3C74643E2556414052
+:100A800030303C2F74643E0D0A3C2F74723E3C742F
+:100A9000723E0D0A3C74643E41442D4B616E616CA4
+:100AA000313C2F74643E0D0A3C7464207374796C7D
+:100AB000653D22746578742D616C69676E3A6C656A
+:100AC0006674223E3C696D67207372633D22696ED5
+:100AD0006465782D4461746569656E2F62616C6B25
+:100AE000652E6769662220616C743D22222068654C
+:100AF000696768743D223130222077696474683DEB
+:100B000022255641403031223E3C2F74643E0D0A6E
+:100B10003C74643E2556414030313C2F74643E0D98
+:100B20000A3C2F74723E3C74723E0D0A3C74643E63
+:100B300041442D4B616E616C323C2F74643E0D0A52
+:100B40003C7464207374796C653D22746578742DEF
+:100B5000616C69676E3A6C656674223E3C696D67CC
+:100B6000207372633D22696E6465782D44617465FB
+:100B700069656E2F62616C6B652E67696622206104
+:100B80006C743D2222206865696768743D223130AB
+:100B9000222077696474683D222556414030322214
+:100BA0003E3C2F74643E0D0A3C74643E2556414021
+:100BB00030323C2F74643E0D0A3C2F74723E3C74FC
+:100BC000723E0D0A3C74643E41442D4B616E616C73
+:100BD000333C2F74643E0D0A3C7464207374796C4A
+:100BE000653D22746578742D616C69676E3A6C6539
+:100BF0006674223E3C696D67207372633D22696EA4
+:100C00006465782D4461746569656E2F62616C6BF3
+:100C1000652E6769662220616C743D22222068651A
+:100C2000696768743D223130222077696474683DB9
+:100C300022255641403033223E3C2F74643E0D0A3B
+:100C40003C74643E2556414030333C2F74643E0D65
+:100C50000A3C2F74723E0D0A3C2F7461626C653E33
+:100C60000D0A3C2F6469763E3C6469762069643DD8
+:100C7000227461696C223E3C6120687265663D2287
+:100C8000687474703A2F2F7777772E756C7269635A
+:100C90006872616469672E6465223E7777772E7586
+:100CA0006C7269636872616469672E64653C2F6168
+:100CB0003E20556C72696368205261646967203216
+:100CC0003030383C2F6469763E0D0A3C2F626F64E9
+:100CD000793E3C2F68746D6C3E25454E44003C21A6
+:100CE000444F43545950452068746D6C2050554210
+:100CF0004C494320222D2F2F5733432F2F44544448
+:100D00002048544D4C20342E3031205472616E7383
+:100D10006974696F6E616C2F2F454E2220226874B2
+:100D200074703A2F2F7777772E77332E6F72672F65
+:100D300054522F68746D6C342F6C6F6F73652E6412
+:100D40007464223E0D0A3C68746D6C3E3C686561BB
+:100D5000643E0D0A3C6D65746120687474702D6585
+:100D6000717569763D22636F6E74656E742D74794A
+:100D700070652220636F6E74656E743D22746578B1
+:100D8000742F68746D6C3B20636861727365743D89
+:100D900049534F2D383835392D31223E0D0A3C74D8
+:100DA00069746C653E415652206D696E69205765C5
+:100DB00062736572766572203A205374617475733C
+:100DC0003C2F7469746C653E0D0A3C6C696E6B2037
+:100DD00072656C3D227374796C6573686565742205
+:100DE00020747970653D22746578742F6373732263
+:100DF0002020687265663D227374796C65732E637A
+:100E00007373223E3C2F686561643E3C626F647977
+:100E10003E3C68313E415652206D696E69205765EF
+:100E200062736572766572203A20537461747573CB
+:100E30003C2F68313E0D0A3C6469762069643D228E
+:100E40006E6176223E3C6120687265663D22696E65
+:100E50006465782E68746D223E486F6D653C2F6125
+:100E60003E3C6120687265663D22737461747573DF
+:100E70002E68746D223E5374617475733C2F613E0D
+:100E80003C2F6469763E0D0A3C6469762069643DB6
+:100E9000226D61696E223E0D0A436F6D70696C6947
+:100EA00065727420616D20417567203235203230C3
+:100EB000313120756D2031323A34393A31393C6262
+:100EC000723E3C62723E0D0A436F6D70696C6965DB
+:100ED0007274206D697420474343205665727369AC
+:100EE0006F6E20342E332E333C62723E3C62723E73
+:100EF0000D0A4265737563686572207365697420B5
+:100F000053746172742064657320576562736572EF
+:100F1000766572732028255641403039293C62722B
+:100F20003E3C62723E0D0A3C2F6469763E3C646929
+:100F3000762069643D227461696C223E3C612068C0
+:100F40007265663D22687474703A2F2F7777772E1A
+:100F5000756C7269636872616469672E6465223EAC
+:100F60007777772E756C7269636872616469672E32
+:100F700064653C2F613E20556C7269636820526144
+:100F800064696720323030383C2F6469763E0D0A40
+:100F90003C2F626F64793E3C2F68746D6C3E0D0A85
+:100FA00025454E4400626F64797B6D617267696E9E
+:100FB0003A20343070783B7D20626F64792C702C3D
+:100FC0006469762C68312C68322C74642C74687BCC
+:100FD000666F6E742D66616D696C793A73616E73BC
+:100FE0002D73657269663B666F6E742D73697A65E1
+:100FF0003A313170787D68317B666F6E742D73691C
+:101000007A653A323070783B636F6C6F723A77680A
+:101010006974653B206261636B67726F756E642DE6
+:10102000636F6C6F723A233936423131433B6D61E5
+:101030007267696E3A3170783B70616464696E679B
+:101040003A3570783B746578742D616C69676E3AD7
+:1010500063656E7465723B7D68327B666F6E742D5E
+:1010600073697A653A313870783B636F6C6F723AA6
+:10107000233936423131437D702C68327B6D617289
+:1010800067696E3A30707830707835707830707883
+:101090007D696D677B626F726465723A307D6872DC
+:1010A0007B636F6C6F723A73696C7665723B20621A
+:1010B00061636B67726F756E642D636F6C6F723AEC
+:1010C00073696C7665723B626F726465723A303B2D
+:1010D0006865696768743A3170787D236E61767BE4
+:1010E000666F6E742D73697A653A20313670783B7D
+:1010F000206261636B67726F756E642D636F6C6FD6
+:10110000723A73696C7665723B6D617267696E3AAB
+:101110003170783B70616464696E673A3570783B12
+:10112000666F6E742D7765696768743A626F6C6478
+:101130007D236E617620612C20237461696C2061AF
+:101140007B636F6C6F723A77686974653B2070617E
+:101150006464696E673A313070783B746578742DD9
+:101160006465636F726174696F6E3A6E6F6E657DF0
+:10117000236E617620613A686F7665722C23746104
+:10118000696C20613A686F7665727B746578742D3E
+:101190006465636F726174696F6E3A756E646572CF
+:1011A0006C696E657D237461696C7B20636F6C6F05
+:1011B000723A77686974653B206261636B67726F2E
+:1011C000756E642D636F6C6F723A73696C766572BD
+:1011D0003B746578742D616C69676E3A63656E74F3
+:1011E00065723B70616464696E673A3570787D231F
+:1011F0006D61696E7B746578742D616C69676E3A98
+:1012000063656E7465723B6D617267696E3A323008
+:1012100070787D2E636C6561727B636C6561723A78
+:101220006C6566747D2E74656D7054626C207B7481
+:1012300061626C652D6C61796F75743A6175746F5C
+:101240003B626F726465722D73706163696E673A99
+:10125000307D2E74656D7054626C2074647B74658F
+:1012600078742D616C69676E3A63656E7465723B64
+:1012700070616464696E673A3770787D2E74656D4D
+:101280007054626C2074687B6261636B67726F7507
+:101290006E642D636F6C6F723A73696C7665727DE4
+:1012A00025454E440047494638396111001100A2D6
+:1012B000070062626219AD2121E22CA5A5A564E6B2
+:1012C0006BA5F3A9D5D5D5FFFFFF21F904010000D7
+:1012D00007002C000000001100110000036078AA34
+:1012E000D6F366C9D3EABB5156127A1700302C4D9B
+:1012F000F109A8D085591308444CA46A48192A5109
+:10130000EC73BA0E2ED8AE10A30544411D8F5613B0
+:101310000D5EB2A231F478A17ACCA3D3CA9C020CA0
+:101320004F6EF777A8767D364AE8E4D38E1483B5FE
+:10133000C7439D1842F8FC7B528EE3F70A09003B35
+:1013400025454E4447494638396111001100A2072E
+:10135000005756576969697E7E7E909191B0B0B012
+:10136000C8C8C8E7E7E7FFFFFF21F904010000074D
+:10137000002C000000001100110000036F78AA5635
+:1013800045B0AC794C73706839AD190120064249FB
+:101390002C56416A431990016705034468A5F00A79
+:1013A00055D1128E47CBA503AA6A85C62DA7A339AE
+:1013B0000048CCB03482406B99A94004B00A583838
+:1013C0006615C42CBB00029FCE9C23750F2D125BAB
+:1013D0000708280A2E793BF45610767C757C271373
+:1013E000782F5C55140B372124840B09003B2545CD
+:1013F0004E4447494638396102000A00A20000A263
+:10140000A5ED848FE5667CDD4960D62144DAFE01D6
+:101410000200000000000021F90405140005002C62
+:101420000000000002000A0000030A4834231201F1
+:1014300048001D5309003B25454E4447494638396D
+:10144000615A005C00A204007979D8F6F4E1C9C9B8
+:10145000E09C98D8FFFFFFF4F6B0F9FD7CA6A48EBF
+:1014600021F90401000004002C000000005A005C77
+:10147000000003FF48BADCFE2E2C4982A5B35A2196
+:10148000B49618068D64697A8D85A65CA5A88F78B8
+:10149000CEB429BF99300C541FD7C0E00B36C465B9
+:1014A0000803C0C018E84C6EC228E9C22C10618045
+:1014B0002C2EB0937A69A04B58614D55B2CB854024
+:1014C00009837EDF9FDE6E27085FD6EC57B2FE727F
+:1014D000C2836E165620493B597C61783C15497988
+:1014E0004D7C7F80442F05655C4A0B7B4F8A996851
+:1014F000126B7E9133622E13959F8E4D59228A1B5B
+:101500009E4D7B6E66A271220195056775033AAF09
+:10151000139A04781D9769A5B45362B6B81600BB38
+:10152000599E4F3B206B3CAABCC647C70C17832073
+:1015300015CB01ABC1070790DF052D153A2087A316
+:10154000B25282A7210506A785F176B7DD1A75E8A4
+:10155000E5B693B0450A03CE14BD41B1E4A90860D5
+:10156000A05E087C4364F8785763E2B96594E8D5D7
+:101570003BD30CFF1C8886959EDCF2A1A00EAC39F3
+:10158000739C488C716524A145FA1C6AA804121545
+:10159000008FB740E6A260A59B0E434A9E3DE345FF
+:1015A000D1863E668E3426D3B8F1D28153DF1ACA73
+:1015B000BC50AE97D0431C1A350B18459F95A1FD22
+:1015C0006A4E90BA33CB017D511D3ED22A94688F6A
+:1015D0004B5B6D40007850119B9C213F8A4D380831
+:1015E00097D5ABBC4C4EE840CDDC082ADB20E06A46
+:1015F000648817CD4115C85AD8034EC001B687DAA2
+:1016000020A9C38183129546BEE8632C5480C6533B
+:101610004CCB911340D60A1E349030F0A016B85D22
+:101620009C6C5304FE6A86F9A9CED4E568D63B3596
+:10163000D41B150985B0668EE04256B2E35B92700A
+:10164000E9DDFAF76372955EA721D54495A77B2261
+:10165000B92373C91D390058CDD0300529B53DF6E1
+:10166000ECCF86254EFEB9D173852BE6C653786143
+:10167000556061FFEBB5D75E01C15572407C0F55D7
+:1016800003562F1BE08213185E6124CC1C43AD6708
+:10169000A1813D3DA59D1C48F03214019971E0A047
+:1016A0003C15CD34A277577972DA7A6779155C38B0
+:1016B000F1BD70DE6B5B0913C059273AF70337237E
+:1016C000FE445F85023674A069FE3CF5D587C87973
+:1016D00086206CEFED03CF7E12D687C67941D643C4
+:1016E0008E95375971A050145083203516F80699FD
+:1016F0006E42C454532CAEB056E56300B4A81563D3
+:10170000EAB4E5DD2DEF8D51D42C89E544965D4298
+:1017100005285C439C31560782483C33D9564D32EC
+:1017200057620AF19055085BA691859D90E830E6D6
+:10173000CA2B9C3068594FC655F4DC0D661A3064CC
+:1017400056663145A0985AC608171A251195848601
+:101750002671F59C1950E6F8C4410560B6CA80A60A
+:10176000B245C1A399750763766DF038A293DB1C6F
+:101770007BAC18FF8FF90854A4411278950BB11473
+:10178000320C1E46DAE120AF24EA37A280CAC2D862
+:1017900099B57E0AE38B74C13C6A15913D05D8DA90
+:1017A000984FB0F4A74E96B1AB8856BEED69DF678F
+:1017B000BF02104C8A866EBB26B2C5CAEA154834F1
+:1017C000667BD9B8879CF69A3554EC0170A9550E02
+:1017D000470A9E571401258D6D1A59188DCBC009E3
+:1017E000A60B1C6FD5C4A4D196815B62CCD9525292
+:1017F00085A756A26B96D2F24B4D29343AE62EAF0E
+:10180000C9CC45E60F71B201D201F5E86AE496E26F
+:10181000C4F27271A755DCCDC59E7ECACE56B810F3
+:101820006D40CE05BEF9B21334B2EB1A394D3E8D80
+:101830004FCF2DD79A239AB80CFD2ABB48C7050A6B
+:101840004766DD62D99655851D61B80B35D7E8C06E
+:101850001E1FF8CF85B8E63A25D7E7AD1AA96B6EFB
+:10186000556DF58003F3C76CDA551A5929D857AE70
+:10187000D9C84FFFBFFC952FE594435E317B39CE2D
+:101880001AD1B1553DF2C8DCE0A2E309262A681E50
+:10189000A088A7FE9DB2E352BB7CEB2073736E64FD
+:1018A000B45B32131B5C4446DBD0A1F9E25D828E4F
+:1018B000796744D3E2038AABCE220A5C6EAAE7C3FF
+:1018C000C7E7A0E8DE00B1D0E36B0E783972D0C371
+:1018D000C8C38A93120D5FC30FDE898D320237EEC3
+:1018E000F133242F819498EFD55F9556D00E47B0F1
+:1018F0007E2C5FF4B9901AAA1FABD4609E7CE9EFEE
+:1019000046476B5B9BF2671DA9F9CC7FFF930A7674
+:10191000E686A2D8F0E255015A8DA97437AFD9896D
+:10192000ED2DA3EBE0FFD0911D67D08101ADE0DD8F
+:10193000BC8E558F08864E6FCA8AE1633628B90976
+:1019400085427A1174A10CF1B6BDBBD10E4A8C1B35
+:101950001A1B38108686E55087A8B9CFA722203AEF
+:10196000BD852A48306ADDD47677441DE6AD76EA37
+:1019700063949EFF2A7689D6A5EB333B634F156BA4
+:10198000923DA8E1C904D4AB92304A021703025039
+:101990007F221CA1CA7E16AFC3EC2D759261157A09
+:1019A000D86021C9516E8C3AE18AF60E96BAB4110C
+:1019B000CB50872A5C0C75F7B96FB5267B92E8A0EF
+:1019C000B284F89314D54177C1D9541AB9B5378F79
+:1019D00094088818E9A4222AF98C002E9054031048
+:1019E0008E6BE208995A91D11D3EB4C44CC8D216F0
+:1019F000544A4E756E425FEC82172DF63105313E2A
+:101A0000C36206B668005D718698AA4B650186625E
+:101A100096DCB19224FB211B4B7AE632644EE92A14
+:101A20006E04494796591A7DCCED994770A01DA1C7
+:101A3000D380158202338EE11D6B6A36000362C8C3
+:101A4000913A99263073131064DE880780B14CE414
+:101A50008A470E625A898C2B7C4844446321DFD12B
+:101A6000C63F37999D75B8F54841F00A68803091B6
+:101A7000645471FF23255CAE9D3B0BE3BB4C3504E6
+:101A800055CE110E66BB030F8664ADDDC5B13A13AA
+:101A900035D53C66F8D1AE18AB585B39447CBCE612
+:101AA00027860254A55B98A120077994B7B49318B0
+:101AB0003662214A6B52503385A414119AA72466CA
+:101AC0007512EF0CAA4D2B5A6141FFD40D4342B35E
+:101AD000204F229BE9D0A320A80234A560256327CC
+:101AE00003914579027321DFA3862A1DFA55B14A75
+:101AF000C614810C8D5CFF10021BFD444F550DABCD
+:101B00005AB6988B8C582C04DA88C01A6111168545
+:101B1000AC68ACB39489F2A01258A41222582DC01C
+:101B20002BB3C42AD9C4CEF1A52B39067A0473BBD2
+:101B3000BD4A961B62010146B670144595691B5D4E
+:101B4000B2D627221BA15BEDF51C8ABD882C6B51F8
+:101B5000D6131CE724A0E98E8964E9D0CBE2E5B670
+:101B6000587562637BE196FE8DCDB51FFD6DB2BAEF
+:101B7000E5C4DA5BE6461D88E85F0879EB155F226D
+:101B8000E6B82B13453541F8969EC290B1CAA34BD7
+:101B90004B032B50634041109AB98875496BC6C6F8
+:101BA0009A964CE8156F5F6F75D6F6BA77A9A002C2
+:101BB0006F47EBA9D4FB9E9689060BB073FD6B941F
+:101BC000F3F697C08DDDA97D114C5EE4213801004C
+:101BD0003B25454E44485454502F312E302032304E
+:101BE0003020446F63756D656E7420666F6C6C6F2A
+:101BF00077730D0A5365727665723A204156525FCB
+:101C0000536D616C6C5F5765627365727665720DBA
+:101C10000A436F6E74656E742D547970653A207442
+:101C20006578742F706C61696E0D0A0D0A00485456
+:101C300054502F312E302032303020446F63756D78
+:101C4000656E7420666F6C6C6F77730D0A536572E6
+:101C50007665723A204156525F536D616C6C5F57E6
+:101C600065627365727665720D0A436F6E74656E98
+:101C7000742D547970653A20746578742F68746D8A
+:101C80006C0D0A0D0A00485454502F312E30203468
+:101C9000303120556E617574686F72697A65640DB4
+:101CA0000A5365727665723A204156525F536D61F0
+:101CB0006C6C5F5765627365727665720D0A575773
+:101CC000572D41757468656E7469636174653A2057
+:101CD0004261736963207265616C6D3D224E65657A
+:101CE0006450617373776F7264220D0A436F6E7470
+:101CF000656E742D547970653A20746578742F6818
+:101D0000746D6C0D0A0D0A00485454502F312E305A
+:101D10002032303020446F63756D656E7420666FBD
+:101D20006C6C6F77730D0A5365727665723A204159
+:101D300056525F536D616C6C5F5765627365727666
+:101D400065720D0A436F6E74656E742D54797065FB
+:101D50003A20696D6167652F6A7065670D0A0D0A23
+:101D600000485454502F312E302032303020446FF0
+:101D700063756D656E7420666F6C6C6F77730D0A9A
+:101D80005365727665723A204156525F536D616CAD
+:101D90006C5F5765627365727665720D0A436163A5
+:101DA00068652D436F6E74726F6C3A206D61782D8B
+:101DB0006167653D36303030303030436F6E74656A
+:101DC0006E742D547970653A20696D6167652F676F
+:101DD00069660D0A0D0A00485454502F312E3020E8
+:101DE00032303020446F63756D656E7420666F6CA1
+:101DF0006C6F77730D0A5365727665723A2041569F
+:101E0000525F536D616C6C5F576562736572766586
+:101E1000720D0A43616368652D436F6E74726F6C57
+:101E20003A206D61782D6167653D36303030303055
+:101E300030436F6E74656E742D547970653A2074FA
+:101E40006578742F6373730D0A0D0A0034303120E6
+:101E5000556E617574686F72697A656425454E4484
+:101E6000006C65646F66662E676966006C65646FFA
+:101E70006E2E676966000000636865636B656400C9
+:101E8000504F53540053746172742054656C6E65E6
+:101E900074205365727665723A0D0A002A2A204C26
+:101EA00043442044415441204745542042797465BD
+:101EB000733A202569202A2A0D0A00474554202F0D
+:101EC000676C6F62616C776561746865722E6173AF
+:101ED0006D782F476574576561746865723F436913
+:101EE00074794E616D653D5061646572626F726EAA
+:101EF00026436F756E7472794E616D653D476572EC
+:101F00006D616E7920485454502F312E310D0A489E
+:101F10006F73743A207777772E7765627365727680
+:101F2000696365782E6E65740D0A4B6565702D4189
+:101F30006C6976653A203330300D0A436F6E6E65FA
+:101F40006374696F6E3A204B6565702D416C6976DC
+:101F5000650D0A0D0A000D0A0D0A0D0A446174652B
+:101F60006E20416E666F726465726E0D0A00544396
+:101F7000502045696E7472616720676566756E648E
+:101F8000656E2028485454505F434C49454E5429AF
+:101F9000210D0A005443502045696E747261672018
+:101FA0006E6963687420676566756E64656E202867
+:101FB000485454505F434C49454E5429210D0A0062
+:101FC00041525020526571756573740A0D00256386
+:101FD000000011241FBECFEFD8E0DEBFCDBF12E05E
+:101FE000A0E0B1E0ECEAFCE602C005900D92A43658
+:101FF000B107D9F716E0A4E6B2E001C01D92A33AFA
+:10200000B107E1F70E9408100C9454360C940000BC
+:10201000AF92BF92CF92DF92EF92FF920F931F93F6
+:10202000CF93DF9386E087B91AB860E875E280E065
+:1020300090E00E94441100D081E591E0ADB7BEB7B9
+:1020400012969C938E9311970E94091289E291E057
+:10205000EDB7FEB7928381830E94091286E091E07A
+:10206000ADB7BEB712969C938E9311970E9409123A
+:1020700020E137E20F900F9048EC50E0CA01019741
+:10208000F1F721503040D1F70E94421E78940E940F
+:102090007A330E94BD32882319F40E94801F0DC03C
+:1020A00000D08AEF90E0EDB7FEB7928381830E9463
+:1020B00009120F900F900E944F1F8DB79EB70A977D
+:1020C0000FB6F8949EBF0FBE8DBFEDB7FEB7319629
+:1020D00081EE90E0ADB7BEB712969C938E931197A8
+:1020E0008091FD05828313828091FE058483158291
+:1020F0008091FF0586831782809100068087118674
+:102100000E940912EDB7FEB731968AEC90E0ADB7A8
+:10211000BEB712969C938E93119780910506828389
+:102120001382809106068483158280910706868338
+:10213000178280910806808711860E940912EDB7E8
+:10214000FEB7319683EB90E0ADB7BEB712969C9385
+:102150008E931197809101068283138280910206EB
+:1021600084831582809103068683178280910406FA
+:10217000808711860E940912EDB7FEB73A960FB616
+:10218000F894FEBF0FBEEDBF20EBA22E20E0B22ED2
+:102190009CE9C92E90E0D92E86EAE82E80E0F82E40
+:1021A00000E810E0C8E6D0E00E94D91C8091DF0270
+:1021B00080FF27C000D0ADB7BEB71296BC92AE92DA
+:1021C00011970E9409120F900F908CE693E00E94E5
+:1021D0002924882331F000D0EDB7FEB7F282E182E6
+:1021E00007C000D0ADB7BEB71296DC92CE92119761
+:1021F0000E9409120F900F908091DF028E7F8093D2
+:10220000DF020E94BD32882361F000D0EDB7FEB737
+:10221000128301830E940912E0E0F0E009940F901C
+:102220000F908091FC05882309F4BECF8DB79EB72F
+:102230000A970FB6F8949EBF0FBE8DBFEDB7FEB7DD
+:102240003196ADB7BEB71296DC93CE9311978091BD
+:10225000F705828313828091F8058483158280912B
+:10226000F905868317828091FA05808711860E947E
+:1022700009121092FC05EDB7FEB73A960FB6F89426
+:10228000FEBF0FBEEDBF90CF9B01AC0188E98093EC
+:10229000C10084E0220F331F441F551F8A95D1F7D8
+:1022A00060E072E18AE790E00E948333215020933E
+:1022B000C4008091DF028B7F8093DF020895982F06
+:1022C0008091DF0282FD06C08091C00085FFFCCFB7
+:1022D0009093C6000895CF93DF93EC0103C021963D
+:1022E0000E945F1188818823D1F7DF91CF910895F3
+:1022F0001F920F920FB60F9211241F932F933F93AB
+:102300004F935F936F937F938F939F93AF93BF93FD
+:10231000EF93FF938091DF0282FD4CC01091C600C5
+:10232000812F0E945F118091DF0280FF04C08091A5
+:10233000DF02826028C0183069F4809164029091B5
+:102340006502892B09F453C0809164029091650263
+:1023500001972BC01D30D1F4E0916402F091650229
+:10236000E559FC4F80818C3589F0E0916402F09151
+:102370006502E459FC4F10821092650210926402CB
+:102380008091DF0281608093DF0231C0809164021E
+:1023900090916502C19758F5809164029091650211
+:1023A000FC01E459FC4F10830196909365028093E1
+:1023B00064021DC020910001309101018091020151
+:1023C0009091030101972817390789F08091C60081
+:1023D000F9018193F0930101E0930001ED59F3407D
+:1023E00031F4205330403093010120930001FF91DC
+:1023F000EF91BF91AF919F918F917F916F915F917D
+:102400004F913F912F911F910F900FBE0F901F90F2
+:1024100018956F927F928F929F92AF92BF92CF92B8
+:10242000DF92EF92FF920F931F93DF93CF93CDB77D
+:10243000DEB764970FB6F894DEBF0FBECDBF8E0136
+:102440000B5D1F4FF801E190F1908F01BB243E011D
+:102450000894611C711C5BE0852E912C8C0E9D1ED6
+:1024600040E3A42E02C068018601F701849188230D
+:1024700009F489C00894E11CF11C853209F080C080
+:10248000F7010894E11CF11C2491822F90E0C09781
+:102490000A9710F0822F0BC02B871C86C4010E9464
+:1024A000D434B82EF7010894E11CF11C84918936CC
+:1024B00071F08A3628F4823661F08336A1F61DC0A9
+:1024C000833749F0883729F18F3669F620C04AE012
+:1024D00021C042E01FC032E0C32ED12CC00ED11E5D
+:1024E000F8010081118104C00F5F1F4F0E945F112E
+:1024F000F80180818823C1F7B7CF22E0C22ED12C0A
+:10250000C00ED11EF80180810E945F11ADCF48E05E
+:1025100001C040E192E0C92ED12CC00ED11EF801BD
+:1025200080819181B30150E00E94C63520E030E007
+:10253000A9014F5F5F4FF301E20FF31F80818823F2
+:1025400011F09A01F5CF8B2D90E0281739079CF4F4
+:10255000B21AF401C4018B0D911D01C0A192E817BC
+:10256000F907E1F71082C401B3010E949135C3015C
+:10257000B4010E949C35C3010E946B11BB2474CF2F
+:102580000E945F1170CF64960FB6F894DEBF0FBE45
+:10259000CDBFCF91DF911F910F91FF90EF90DF9012
+:1025A000CF90BF90AF909F908F907F906F90089545
+:1025B000282F892F922F0895EF92FF920F931F9348
+:1025C000162F0027FF24EE24292F332744275527D1
+:1025D000E20EF31E041F151F9B01AC01207030702A
+:1025E0005070232F342F452F5527E20EF31E041F62
+:1025F000151F607080709070982F872F762F662738
+:10260000E60EF71E081F191FB701C8011F910F9191
+:10261000FF90EF90089540E050E09A01220F331FA1
+:10262000240F351FD901AA0FBB1FAA0FBB1FA0562D
+:10263000BD4F1A968D919C911B97892B09F51C9281
+:1026400011961C921197F901EE0FFF1FEE0FFF1F5D
+:10265000EE55FD4F108213961C921397F901EE0F61
+:10266000FF1FEE0FFF1FEC55FD4F108215961C92B9
+:10267000159716961D921D921D921C92199709C0CE
+:102680001A968D919C911B9701971B969C938E9304
+:102690001A974F5F5F4F4530510509F0BECF08953F
+:1026A000AC0120E001C02F5FA22FB0E0FD01EE0FD2
+:1026B000FF1FEE0FFF1FEA59FD4F80819181892B8B
+:1026C00091F7253050F451834083AA0FBB1FAA0F06
+:1026D000BB1FA859BD4F6D937C93089520E001C0A6
+:1026E0002F5FA22FB0E0FD01EE0FFF1FEE0FFF1FC7
+:1026F000EA59FD4F0190F081E02D309719F0E8176D
+:10270000F90771F7253040F4AA0FBB1FAA0FBB1FB2
+:10271000AA59BD4F6D937C930895AC0120E001C090
+:102720002F5FA22FB0E0FD01EE0FFF1FEE0FFF1F86
+:10273000E658FD4F80819181892B91F7253050F427
+:1027400051834083AA0FBB1FAA0FBB1FA458BD4FC4
+:102750006D937C9308959C01EAE7F2E0808191817A
+:102760008217930711F411821082349682E0EE38BA
+:10277000F807A1F708950F931F93CF93DF9300916C
+:10278000AA031091AB0360E070E086E00830180700
+:10279000C1F4FB01EE0FFF1FE60FF71FEE0FFF1F47
+:1027A000EE0FFF1FE056FD4F268137814085518592
+:1027B0008091BA039091BB03A091BC03B091BD037B
+:1027C0001AC00830110509F5FB01EE0FFF1FE60FD7
+:1027D000F71FEE0FFF1FEE0FFF1FE056FD4F268184
+:1027E0003781408551858091B8039091B903A091BC
+:1027F000BA03B091BB03281739074A075B0729F4CE
+:1028000084E690E09387828788C06F5F7F4F653052
+:10281000710509F0BACF20E030E0A901440F551F3F
+:10282000420F531FEA01CC0FDD1FCC0FDD1FC05636
+:10283000DD4FBE016A5F7F4F8E819F81A885B9857C
+:102840000097A105B10509F062C0E6E008301E0757
+:1028500049F58091A40388838091A50389838091A1
+:10286000A603FA01EE0FFF1FEE0FFF1FEE55FD4FFF
+:1028700080838091A7038B838091A803FA01EE0FD8
+:10288000FF1FEE0FFF1FEC55FD4F80838091A903C2
+:102890008D838091BA039091BB03A091BC03B0914A
+:1028A000BD032BC008301105C1F58091A4038883B6
+:1028B0008091A50389838091A603FA01EE0FFF1F83
+:1028C000EE0FFF1FEE55FD4F80838091A7038B8392
+:1028D0008091A803FA01EE0FFF1FEE0FFF1FEC55CA
+:1028E000FD4F80838091A9038D838091B8039091DF
+:1028F000B903A091BA03B091BB03FB01808391831C
+:10290000A283B38384E690E09B878A8706C02F5F0B
+:102910003F4F2530310509F080CFDF91CF911F91D6
+:102920000F9108951F93AB01BC0120E030E0122FFE
+:10293000F901EE0FFF1FE20FF31FEE0FFF1FEE0F67
+:10294000FF1FE056FD4F86819781A085B1858417D2
+:102950009507A607B70731F02F5F3F4F25303105A8
+:1029600031F715E0812F1F910895FF920F931F9368
+:10297000182F092F20E030E0F22EF901EE0FFF1F93
+:10298000E20FF31FEE0FFF1FEE0FFF1FE056FD4F8C
+:1029900086819781A085B18584179507A607B7071B
+:1029A00031F02F5F3F4F2530310531F726C0212F01
+:1029B000302FC901DC0140E050E08F2D90E09C01F8
+:1029C000220F331F280F391F220F331F220F331FEF
+:1029D000F901E40FF51FE056FD4F80818C93FA0159
+:1029E000EF5DF94F808116968C9316974F5F5F4F7E
+:1029F00011964630510561F70FC0A1E2B6E0812F74
+:102A0000902F9C01F9019FEF90838D9186833196E1
+:102A100086E0A732B807C1F71F910F91FF90089584
+:102A2000EF92FF920F931F93CF93DF937C018B0163
+:102A3000EC0111C0888199812296F82FE0E0DF0136
+:102A4000A90FB11DCD01A0E0B0E0280F391F4A1F2A
+:102A50005B1F625070406230710560F7F801EE7FD5
+:102A6000EE0DFF1D00FF08C0908180E0A0E0B0E007
+:102A7000280F391F4A1F5B1FCA01AA27BB274070B6
+:102A80005070820F931FA41FB51F9D014427552727
+:102A9000A070B070280F391F4A1F5B1F209530951A
+:102AA000C901DF91CF911F910F91FF90EF90089591
+:102AB000AF92BF92CF92DF92EF92FF920F931F934C
+:102AC0007C015A016B018C01025F1F4F0E94B514FB
+:102AD00088E090E0F7019587848720918E023091FD
+:102AE0008F022F5F3F4F30938F0220938E0280E43E
+:102AF00090E0F8019783868380E88087348325837C
+:102B000085E4F7018687F8011182A08AB18AC28A1A
+:102B1000D38A8091FD059091FE05A091FF05B091AB
+:102B2000000684879587A687B78713861286C80113
+:102B300064E170E020E030E040E050E00E941015D9
+:102B4000F801928783871F910F91FF90EF90DF909C
+:102B5000CF90BF90AF900895AF92BF92CF92DF9287
+:102B6000EF92FF920F931F93CF93DF938C01EC01B1
+:102B7000A296BC01625F7F4FDB011C96CD90DD9079
+:102B8000ED90FC901F9740E050E0E6E1AE2EB12CB6
+:102B90004A9DF0014B9DF00D5A9DF00D1124EF510F
+:102BA000FD4F80819181A281B3818C159D05AE0579
+:102BB000BF0509F056C02481358188819981281785
+:102BC000390709F04EC088859985AA85BB8580871D
+:102BD0009187A287B3878C819D81AE81BF818487D5
+:102BE0009587A687B7878D85808B83898F3F11F066
+:102BF00083E0838BFB01F280E3808CEE9FEFE80E95
+:102C0000F91E8C8590E0807F9070959587959595BD
+:102C10008795E81AF90A00E010E086E190E0489F05
+:102C20006001499FD00C589FD00C1124A1EEB2E056
+:102C3000CA0EDB1EF60164857585868597850E9420
+:102C4000DC12E60EF71E081F191FC801B7010E940B
+:102C5000DC12D6011C966D937D938D939C931F97E8
+:102C60004FC04F5F5F4F4530510509F091CF20E0D5
+:102C700030E066E170E0269FA001279F500D369F4F
+:102C8000500D1124FA01EF51FD4F80819181A281F5
+:102C9000B3810097A105B10569F5C082D182E282B6
+:102CA000F382D80192968D919C919397958384831A
+:102CB0008A819B819783868388859985AA85BB8530
+:102CC00080879187A287B3878C819D81AE81BF81E8
+:102CD00084879587A687B7878D85808B128A118A0E
+:102CE00083E0838B148AFA01EA50FD4F80818E7F46
+:102CF000808306C02F5F3F4F2530310509F0BBCFE1
+:102D0000DF91CF911F910F91FF90EF90DF90CF90C7
+:102D1000BF90AF900895EF92FF920F931F93CF93C0
+:102D2000DF937B018C0120E030E0C6E1D0E0622F30
+:102D30002C9FF0012D9FF00D3C9FF00D1124EF51C1
+:102D4000FD4F80819181A281B3818E159F05A007DF
+:102D5000B10729F4848195818417950731F02F5F9D
+:102D60003F4F2530310519F765E0862FDF91CF9170
+:102D70001F910F91FF90EF90089520E001C02F5F09
+:102D8000A22FB0E0FD01EE0FFF1FEE0FFF1FE65870
+:102D9000FD4F0190F081E02D309789F09091C203B2
+:102DA0008091C303E817F90751F7AA0FBB1FAA0FB9
+:102DB000BB1FA458BD4FED91FC9180E0099508958B
+:102DC000CF93DF93582FC6E6D2E0E0E0F0E0282F63
+:102DD00030E086E190E0289FD001299FB00D389F18
+:102DE000B00D1124A951BD4F8D919C911197382F91
+:102DF000292F888199818217930731F03196249683
+:102E0000E630F10589F70DC0E53058F4EE0FFF1FED
+:102E1000EE0FFF1FE859FD4F0190F081E02D852F47
+:102E20000995DF91CF910895863038F5282F30E04D
+:102E300086E190E0289FD001299FB00D389FB00D0A
+:102E40001124FD01EF51FD4F108211821282138275
+:102E500015821482178216821086118612861386B6
+:102E60001486158616861786108A128A118A138A86
+:102E7000AA50BD4F8C918E7F8C930895CF92DF9294
+:102E8000EF92FF920F931F93CF93DF93EC013CEAF5
+:102E9000E32E33E0F32EC62EDD2486E190E0C89EBB
+:102EA0008001C99E100DD89E100D11240F511D4F89
+:102EB000F801868197819093C1038093C003848138
+:102EC00095819093C3038093C2031092D303109211
+:102ED000D20381E094EF9093CF038093CE0380E5FB
+:102EE0008093CC0364857585868597850E94DC1266
+:102EF0009B01AC01F80180898093CD03808981FF1B
+:102F000015C02F5F3F4F4F4F5F4F82E08093D40338
+:102F100084E08093D50381E08093D60384EF80938F
+:102F2000D70380E68093CC03C4E0D0E0CA01B901A6
+:102F30000E94DC126093C8037093C9038093CA0394
+:102F40009093CB0386E190E0C89E8001C99E100D4E
+:102F5000D89E100D11240F511D4FF80180859185C9
+:102F6000A285B3858093C4039093C503A093C60341
+:102F7000B093C703CE018896F7019283838386E0DE
+:102F80008187F80140815181628173818EE993E0EC
+:102F90000E9458151092D1031092D0037091AE0385
+:102FA0006091AF03685F7F4F8091AC0390E08F70BA
+:102FB0009070880F991F880F991F681B790B6250BA
+:102FC00070409B0140E050E06E5F7F4F88EB93E0E4
+:102FD0000E9410159093D0038093D103CE01C69622
+:102FE0006EE973E00E94B225F801108ADF91CF915B
+:102FF0001F910F91FF90EF90DF90CF9008958F92E7
+:103000009F92AF92BF92DF92EF92FF920F931F9326
+:10301000CF93DF937B018C015A01490120E030E01E
+:1030200046E150E0D22E249FE001259FD00D349F31
+:10303000D00D1124CF51DD4F88819981AA81BB81A8
+:103040000097A105B105F1F4822F0E941417E882C0
+:10305000F9820A831B83BD82AC829F828E8282EDBD
+:1030600094E0A0E0B0E088879987AA87BB8789E2CF
+:1030700099E0A0E0B0E08C879D87AE87BF878EE1A6
+:103080008B8B06C0D3942F5F3F4F2530310551F60F
+:103090002D2D30E086E190E0289FF001299FF00D72
+:1030A000389FF00D1124EF51FD4F82E0808B80E0BE
+:1030B00090E06D2D0E943E17DF91CF911F910F91EF
+:1030C000FF90EF90DF90BF90AF909F908F9008950A
+:1030D000682F282F30E086E190E0289FF001299F9B
+:1030E000F00D389FF00D1124EF51FD4F8FEF9FEF42
+:1030F000928B818B81E1808B80E090E00E943E1773
+:103100000895AF92BF92DF92EF92FF920F931F93B9
+:10311000CF93DF9320E001C02F5F022F10E0F80172
+:10312000EE0FFF1FEE0FFF1FEA59FD4F0190F081D8
+:10313000E02D309709F4CFC19091C2038091C30371
+:10314000E817F90749F74091CD03242F30E0C90172
+:1031500082719070429709F065C08EE993E00E94F9
+:10316000AC154091B8035091B9036091BA037091C6
+:10317000BB030091C0031091C103C0E0D0E0A6E101
+:10318000EA2EF12C2C2FCE9DF001CF9DF00DDE9D6F
+:10319000F00D1124EF51FD4F80819181A281B38107
+:1031A00084179507A607B70729F4848195818017AE
+:1031B000910729F02196C530D10521F78CC130E067
+:1031C00086E190E0289F8001299F100D389F100D07
+:1031D00011240F511D4F8EE1D80153968C935397B4
+:1031E0001C966D917D918D919C911F970E94DC1290
+:1031F0006F5F7F4F8F4F9F4F0E94DC12F8016487F3
+:1032000075878687978780E1808B80E090E06C2FC0
+:103210000E943E1781E090E0D80152969C938E93D5
+:10322000519759C1423009F046C08EE993E00E949F
+:10323000AC152091B8033091B9034091BA03509175
+:10324000BB03C091C003D091C10360E070E0F6E120
+:10325000EF2EF12C6E9DF0016F9DF00D7E9DF00D17
+:103260001124EF51FD4F80819181A281B38182179A
+:103270009307A407B50729F4848195818C179D07CE
+:1032800031F06F5F7F4F6530710521F724C1262F24
+:1032900030E086E190E0289FF001299FF00D389FF3
+:1032A000F00D1124EF51FD4F82E1808B80E090E022
+:1032B0000E943E1710C14091B8035091B90360912C
+:1032C000BA037091BB03E090C003F090C103C0E06B
+:1032D000D0E0E6E1AE2EB12CDC2ECA9DF001CB9DF4
+:1032E000F00DDA9DF00D1124EF51FD4F8081918199
+:1032F000A281B38184179507A607B70729F48481B3
+:1033000095818E159F0529F02196C530D10521F7AD
+:10331000DDC08EE993E00E94AC154C2F50E086E1B1
+:1033200090E0489FF001499FF00D589FF00D112447
+:10333000EF51FD4F808980FF2BC02DC08EE993E0B7
+:103340000E94AC1560915B0370915C0380915D03FA
+:1033500090915E030E94DC126F5F7F4F8F4F9F4FF3
+:103360000E94DC1260935B0370935C0380935D03A7
+:1033700090935E0380915F0380FF08C080E180939B
+:103380005F0380E090E065E00E943E1785E034C076
+:10339000808982FF34C086E190E0489FE001499F28
+:1033A000D00D589FD00D1124CF51DD4F6C857D85F8
+:1033B0008E859F850E94DC126F5F7F4F8F4F9F4FDE
+:1033C0000E94DC126C877D878E879F87888980FFAB
+:1033D00012C0000F111F000F111F08591D4FD801F7
+:1033E000ED91FC918D2D099581E1888B80E090E035
+:1033F0006D2D0E943E178D2D0E9414176CC0808980
+:1034000083FF15C0808984FF12C08189928901964B
+:10341000928B818B88E1808B000F111F000F111F91
+:1034200008591D4FD801ED91FC918C2F4DC086E1BC
+:1034300090E0489F9001499F300D589F300D112416
+:10344000F901EF51FD4F808984FF0AC0F901EA506C
+:10345000FD4F808180FD04C08081816080833BC0FE
+:1034600086E190E0489FF001499FF00D589FF00DD4
+:103470001124DF01AF51BD4F50968C91509784FFBE
+:103480002AC0EA50FD4F808180FF25C051968D9162
+:103490009C9152978F5F9F4FF1F080E150968C93F3
+:1034A000509751968D919C915297019652969C936C
+:1034B0008E935197000F111F000F111F08591D4FB8
+:1034C000D801ED91FC918D2D099505C025703070C6
+:1034D000232B09F033CFDF91CF911F910F91FF90F4
+:1034E000EF90DF90BF90AF900895EF92FF920F930F
+:1034F0001F93CF93DF93C0E0D0E006E110E093E0AC
+:10350000E92E84E1F82EC09FF001C19FF00DD09FFD
+:10351000F00D1124EF51FD4F83898823E9F4808158
+:103520009181A281B3810097A105B105D9F0E38A09
+:1035300084898F5F848B8150863050F0F08A80E0E0
+:1035400090E06C2F0E943E178C2F0E9414170AC027
+:103550008C2F0E94E01606C083898F3F19F0838963
+:103560008150838B2196C530D10569F6DF91CF91CB
+:103570001F910F91FF90EF9008958F929F92AF92BD
+:10358000BF92CF92DF92EF92FF920F931F935C0155
+:10359000F0ECCF2EF3E0DF2EECEEEE2EEFEFFE2E72
+:1035A000EC0CFD1C7093C0036093C1035093C203E5
+:1035B0004093C30308969093C4038093C503C50149
+:1035C0004C96F7019283838381E181874EED842EAF
+:1035D0004FEF942E8C0C9D1CC401B901A8010E94D0
+:1035E00058151092C7031092C603F70172816381C8
+:1035F000685F7F4F808190E08F709070880F991F77
+:10360000880F991F681B790B675F7F4F9B0140E014
+:1036100050E069507040C60108970E9410159093C1
+:10362000C6038093C703C5018A96B4010E94B225E0
+:103630001F910F91FF90EF90DF90CF90BF90AF90D0
+:103640009F908F9008956F927F928F929F92AF92EA
+:10365000BF92CF92DF92EF92FF920F931F933B01A5
+:103660004C018CEAA82E83E0B82EB4E1CB2ED12CED
+:10367000CA0CDB1C4093C003F6012183F582E4826F
+:10368000178306831382128280E094E59093AF0340
+:103690008093AE0381E08093B50382EF9FEFA80E85
+:1036A000B91EC501B401A3010E9458157091AE0363
+:1036B0006091AF038091AC0390E08F709070880FA1
+:1036C000991F880F991F681B790BC60120E030E015
+:1036D00040E050E00E941015F6019283838382E659
+:1036E00090E0B5010E94B2251F910F91FF90EF90DD
+:1036F000DF90CF90BF90AF909F908F907F906F9012
+:1037000008950F931F938091AC039091AD03805067
+:10371000914009F0C1C08091AE039091AF0308972A
+:1037200009F0BAC08091B003863009F0B5C080912D
+:10373000B103843009F0B0C02091C4033091C503B7
+:103740004091C6035091C7038091FD059091FE05FD
+:10375000A091FF05B0910006281739074A075B07BB
+:1037600009F09AC08091B2039091B303E1E08030F8
+:103770009E0709F08CC00E94BB130CEA13E00E50A8
+:1037800010404091BA035091BB036091BC0370910B
+:10379000BD03C8010E94B51488E096E0F801958742
+:1037A00084874091BA035091BB036091BC03709130
+:1037B000BD0320E030E0F901EE0FFF1FE20FF31F21
+:1037C000EE0FFF1FEE0FFF1FE056FD4F8681978122
+:1037D000A085B18584179507A607B70731F02F5F3D
+:1037E0003F4F2530310539F725C0ACEAB3E040E062
+:1037F00050E0822F90E09C01220F331F280F391FC9
+:10380000220F331F220F331FF901E40FF51FE0567B
+:10381000FD4F808152968C935297FA01EF5DF94FDC
+:10382000808118968C9318974F5F5F4F11964630A2
+:10383000510551F780E092E09093B3038093B20377
+:103840008091BA039091BB03A091BC03B091BD03DA
+:103850008093C4039093C503A093C603B093C7039A
+:103860008091FD059091FE05A091FF05B0910006A5
+:103870008093BA039093BB03A093BC03B093BD03A2
+:103880008CE390E06EE973E00E94B22505C08050A1
+:10389000924011F40E94BB131F910F910895EF9273
+:1038A000FF920F931F938091AA039091AB0326E0A0
+:1038B0008830920719F40E94811B76C0089709F09E
+:1038C00073C02091BC033091BD034091BE03509161
+:1038D000BF038091FD059091FE05A091FF05B09179
+:1038E0000006281739074A075B0709F042C00E9403
+:1038F000BB138091B5038130B9F58091C003882353
+:10390000C1F0883009F050C06091B8037091B903DC
+:103910008091BA039091BB030091C6031091C70335
+:10392000E090C403F090C50340E020E00E94231B18
+:103930003BC02091F7053091F8054091F905509171
+:10394000FA058091B8039091B903A091BA03B091A0
+:10395000BB03281739074A075B0731F58091FC053F
+:1039600081608093FC0520C08630C1F40E948118DC
+:1039700015C02F3F8FEF38078FEF48078FEF58079D
+:1039800069F08091090690910A06A0910B06B0910A
+:103990000C06281739074A075B0731F48091B503F5
+:1039A000813111F40E94BD161F910F91FF90EF908D
+:1039B00008958091DE0281FF09C00E94751A0E945D
+:1039C0000B138091DE028D7F8093DE02199B0FC066
+:1039D000089588E592E06EE973E00E94B626FC0146
+:1039E000009729F0E256FC4F11820E944F1C199B50
+:1039F000F0CF8091DE028E7F8093DE0208958F9259
+:103A00009F92AF92BF92CF92DF92EF92FF920F936D
+:103A10001F93DF93CF93CDB7DEB7AA970FB6F89475
+:103A2000DEBF0FBECDBF4B015C018E01015F1F4F9A
+:103A30008091FD059091FE05A091FF05B0910006D3
+:103A400088259925AA25BB252091050630910606D3
+:103A5000409107065091080682239323A423B5239F
+:103A60000097A105B10519F47501640108C0C09063
+:103A70000106D0900206E0900306F090040688E06C
+:103A800096E09E878D87CE010196B701A6010E9420
+:103A9000B5148091FD059091FE05A091FF05B091B0
+:103AA0000006F80186879787A08BB18BC08ED18ED8
+:103AB000E28EF38EA1E2B6E08D918087128A319674
+:103AC00026E0A732B207C1F720E031E0F8013183E8
+:103AD000208388E090E09383828386E0848384E07F
+:103AE0008583378326838AE290E0BE016F5F7F4F34
+:103AF0000E94B22510E05AC0422FF901EE0FFF1FBD
+:103B0000E20FF31FEE0FFF1FEE0FFF1FE056FD4FFA
+:103B100086819781A085B18588159905AA05BB0581
+:103B200031F02F5F3F4F2530310531F745E020E080
+:103B300030E0F901EE0FFF1FE20FF31FEE0FFF1F42
+:103B4000EE0FFF1FE056FD4F86819781A085B1855E
+:103B50008C159D05AE05BF0531F02F5F3F4F253019
+:103B6000310539F73AC0453021F5822F90E0FC014C
+:103B7000EE0FFF1FE80FF91FEE0FFF1FEE0FFF1FE5
+:103B8000E056FD4F86829782A086B18612C080E003
+:103B900090E000000196F7E280319F07D1F70E9484
+:103BA000D91C1F5F143111F480E004C020E030E024
+:103BB000A3CF81E0AA960FB6F894DEBF0FBECDBFAB
+:103BC000CF91DF911F910F91FF90EF90DF90CF90F9
+:103BD000BF90AF909F908F9008954530C1F2E9CF8C
+:103BE0008F929F92AF92BF92CF92DF92EF92FF920D
+:103BF0000F931F93DF93CF9300D000D0CDB7DEB7E4
+:103C00007C01B42EA52E962E872E00E010E06E01CA
+:103C10000894C11CD11CF999FECFC8018E0D9F1DBF
+:103C20000E94EF35F601E00FF11F80830F5F1F4FF9
+:103C30000430110581F729813A814B815C812F3F46
+:103C40008FEF38078FEF48078FEF580741F42B2D80
+:103C50003A2D492D582DC901DA019C01AD01B90158
+:103C6000CA010F900F900F900F90CF91DF911F918D
+:103C70000F91FF90EF90DF90CF90BF90AF909F900B
+:103C80008F9008950E94AC1E8EE190E04AE05AE2C7
+:103C900067E173E60E94F01D6093FD057093FE05D9
+:103CA0008093FF059093000682E290E04FEF5FEF74
+:103CB0006FEF70E00E94F01D60930506709306069A
+:103CC000809307069093080686E290E040EC58EA5D
+:103CD00060E071E00E94F01D60930106709302069F
+:103CE0008093030690930406209105063091060602
+:103CF00040910706509108068091FD059091FE05C0
+:103D0000A091FF05B091000682239323A423B5233D
+:103D10002095309540955095822B932BA42BB52B55
+:103D20008093090690930A06A0930B06B0930C06A5
+:103D30001092210682E28093220689EF8093230667
+:103D400081E08093240688E38093250688EC8093A5
+:103D500026060E942F260895E1E8F0E080818D601C
+:103D60008083109285001092840086E290E0909308
+:103D7000890080938800EFE6F0E080818260808394
+:103D800008951F920F920FB60F9211242F938F93C5
+:103D90009F93AF93BF938091060190910701019784
+:103DA0009093070180930601019631F481E090E041
+:103DB0009093070180930601809104019091050181
+:103DC00001979093050180930401019609F056C074
+:103DD00087EC90E090930501809304018091680343
+:103DE00090916903A0916A03B0916B030196A11DA4
+:103DF000B11D8093680390936903A0936A03B09305
+:103E00006B0380916603909167030196909367031B
+:103E1000809366030197815B944018F0E0E0F0E046
+:103E200009948091DE0282608093DE0280919C0280
+:103E300090919D02A0919E02B0919F020097A105D2
+:103E4000B10599F080919C0290919D02A0919E02F3
+:103E5000B0919F020197A109B10980939C029093B0
+:103E60009D02A0939E02B0939F028091E00288235E
+:103E700029F08091E00281508093E002BF91AF91E0
+:103E80009F918F912F910F900FBE0F901F901895BB
+:103E9000E0E0F0E0099408950895089508958EE112
+:103EA00090E04AE05AE267E173E60E94F01D6093F9
+:103EB000FD057093FE058093FF059093000682E256
+:103EC00090E04FEF5FEF6FEF70E00E94F01D6093A6
+:103ED000050670930606809307069093080686E20F
+:103EE00090E040EC58EA60E071E00E94F01D6093C1
+:103EF00001067093020680930306909304060895CA
+:103F0000CF93DF93CEE1D0E0F999FECFFE01E152ED
+:103F1000FA4FCE0160810E94F7352196C232D10559
+:103F200099F7C2E2D0E0F999FECFFE01ED51FA4FC8
+:103F3000CE0160810E94F7352196C632D10599F7EE
+:103F4000C6E2D0E0F999FECFFE01E552FA4FCE016C
+:103F500060810E94F7352196CA32D10599F7DF9129
+:103F6000CF9108950F931F93CF93DF938C0180918E
+:103F70000D0690910E06892BA1F0C0E0D0E0F999D2
+:103F8000FECFFE01EE0FFF1FE35FF94F60817181ED
+:103F9000CE01800F911F0E94F7352196C430D105C4
+:103FA00071F7DF91CF911F910F910895EF92FF92DA
+:103FB0001F93CF93DF93C2E6D1E096EFE92E92E014
+:103FC000F92EFE012196149100D000D0EDB7FEB776
+:103FD0003196ADB7BEB71296FC92EE92119712834E
+:103FE00013820E9409120F900F900F900F901123CF
+:103FF00041F7DF91CF911F91FF90EF9008958F923D
+:104000009F92AF92BF92CF92DF92EF92FF920F9367
+:104010001F93609168037091690380916A03909186
+:104020006B03C0906803D0906903E0906A03F0903E
+:104030006B038090680390906903A0906A03B0902E
+:104040006B032DB73EB7285030400FB6F8943EBFF3
+:104050000FBE2DBF0DB71EB70F5F1F4F29EF32E008
+:10406000EDB7FEB73283218320E13EE040E050E02F
+:104070000E948333CA01B90128E130E040E050E0FA
+:104080000E948333F80162831382C701B6012CE3D7
+:1040900030E040E050E00E948333CA01B9012CE3D4
+:1040A00030E040E050E00E948333F80164831582E1
+:1040B000C501B4012CE330E040E050E00E948333BE
+:1040C000F801668317820E9409122DB73EB7285F58
+:1040D0003F4F0FB6F8943EBF0FBE2DBF1F910F91FB
+:1040E000FF90EF90DF90CF90BF90AF909F908F9018
+:1040F0000895CF93DF93E0910D06F0910E06809125
+:104100000F0690911006AAE4B2E0EE0FFF1FEA0F2F
+:10411000FB1F9183808340910D0650910E062091E4
+:104120000D0630910E0600D000D000D0EDB7FEB7DE
+:1041300031968FE093E0CDB7DEB79A8389835383BE
+:104140004283220F331FA20FB31F8D919C91958341
+:1041500084830E9409128DB79EB706960FB6F89415
+:104160009EBF0FBE8DBFDF91CF9108952F923F92DA
+:104170004F925F926F927F928F929F92AF92BF9277
+:10418000CF92DF92EF92FF920F931F93CF93DF9323
+:10419000C0E0D0E0F6E12F2E312CE7E54E2EE3E033
+:1041A0005E2E72E5672E73E0772E6DE4862E63E057
+:1041B000962E58E4A52E53E0B52E4DE3C42E43E0D1
+:1041C000D42E30E3E32E33E0F32E00D000D0E0E62F
+:1041D000F3E0ADB7BEB71296FC93EE931197149629
+:1041E000DC93CE9313970E940912C29D8001C39D58
+:1041F000100DD29D100D11240F511D4FF80180811B
+:104200009181A281B38100D0EDB7FEB75282418285
+:104210009070A070B07083839483A583B6830E944E
+:104220000912F80180819181A281B381EDB7FEB7B7
+:1042300072826182892F90E0A0E0B0E08383948352
+:10424000A583B6830E940912F80180819181A28121
+:10425000B381EDB7FEB7928281828A2F90E0A0E011
+:10426000B0E083839483A583B6830E940912F8018A
+:1042700080819181A281B381EDB7FEB7B282A18224
+:104280008B2F9927AA27BB2783839483A583B68383
+:104290000E940912D80114962D913C9115971496FD
+:1042A0008D919C9115970F900F90EDB7FEB7D2822C
+:1042B000C182892F9927322F2227822B932B948317
+:1042C00083830E940912D80153968C91EDB7FEB7F3
+:1042D0003196ADB7BEB71296FC92EE9211978283DB
+:1042E00013820E94091221960F900F900F900F9049
+:1042F000C530D10509F069CFDF91CF911F910F91A2
+:10430000FF90EF90DF90CF90BF90AF909F908F90F5
+:104310007F906F905F904F903F902F9008952F92D5
+:104320003F924F925F926F927F928F929F92AF9245
+:10433000BF92CF92DF92EF92FF920F931F93CF9392
+:10434000DF93C0E0D0E0A9E82A2EA3E03A2EF0E8FF
+:104350004F2EF3E05F2EEBE76E2EE3E07E2E76E746
+:10436000872E73E0972E61E7A62E63E0B62E54E603
+:10437000C52E53E0D52E8E01000F111F0C0F1D1FEF
+:10438000000F111F000F111F20EAE22E22E0F22E73
+:10439000E00EF11ED7018C9100D000D000D0EDB717
+:1043A000FEB7319622EA33E0ADB7BEB712963C9322
+:1043B0002E931197D383C283848315820E9409129E
+:1043C000D70111968C910F900F90EDB7FEB73196F3
+:1043D0002DE933E0ADB7BEB712963C932E931197FB
+:1043E000828313820E940912F801EE55FD4F8081ED
+:1043F000EDB7FEB7319628E933E0ADB7BEB71296F8
+:104400003C932E931197828313820E940912D70145
+:1044100013968C91EDB7FEB7319623E933E0ADB733
+:10442000BEB712963C932E931197828313820E94FB
+:1044300009120C551D4FD8018C91EDB7FEB731967E
+:104440002EE833E0ADB7BEB712963C932E9311978A
+:10445000828313820E940912D70115968C91EDB7C1
+:10446000FEB73196ADB7BEB712963C922E92119719
+:10447000828313820E940912F70186819781A085A9
+:10448000B18500D0EDB7FEB7528241829070A07026
+:10449000B07083839483A583B6830E940912F701C9
+:1044A00086819781A085B185EDB7FEB77282618262
+:1044B000892F90E0A0E0B0E083839483A583B68346
+:1044C0000E940912F70186819781A085B185EDB719
+:1044D000FEB7928281828A2F90E0A0E0B0E08383D1
+:1044E0009483A583B6830E940912F7018681978180
+:1044F000A085B185EDB7FEB7B282A1828B2F992737
+:10450000AA27BB2783839483A583B6830E940912BD
+:10451000D7011A968D919C911B970F900F90EDB734
+:10452000FEB7D282C182948383830E9409122196AE
+:104530000F900F900F900F90C530D10509F01BCF51
+:10454000DF91CF911F910F91FF90EF90DF90CF906F
+:10455000BF90AF909F908F907F906F905F904F90A3
+:104560003F902F90089500D000D0EDB7FEB7319660
+:104570008FEA93E0ADB7BEB712969C938E931197D6
+:1045800080919402828313820E9409120F900F90EF
+:104590000F900F9008958DB79EB70E970FB6F894B1
+:1045A0009EBF0FBE8DBFEDB7FEB7319687EC93E08F
+:1045B000ADB7BEB712969C938E931197809121064A
+:1045C0008283138280912206848315828091230640
+:1045D0008683178280912406808711868091250624
+:1045E0008287138680912606848715860E94091289
+:1045F0008DB79EB70E960FB6F8949EBF0FBE8DBFB7
+:10460000089586E290E00E94B21F86E290E040ECBE
+:1046100058EA60E071E00E94F01D6093010670931B
+:10462000020680930306909304068DB79EB70A97FF
+:104630000FB6F8949EBF0FBE8DBFEDB7FEB7319693
+:1046400089EE93E0ADB7BEB712969C938E93119707
+:1046500080910106828313828091020684831582F1
+:1046600080910306868317828091040680871186D5
+:104670000E9409128DB79EB70A960FB6F8949EBF96
+:104680000FBE8DBF089582E290E00E94B21F82E2C9
+:1046900090E04FEF5FEF6FEF70E00E94F01D6093CE
+:1046A00005067093060680930706909308068DB75B
+:1046B0009EB70A970FB6F8949EBF0FBE8DBFEDB799
+:1046C000FEB7319686E094E0ADB7BEB712969C93E4
+:1046D0008E9311978091050682831382809106063E
+:1046E000848315828091070686831782809108064D
+:1046F000808711860E9409128DB79EB70A960FB661
+:10470000F8949EBF0FBE8DBF08958EE190E00E9489
+:10471000B21F8EE190E04AE05AE267E173E60E9440
+:10472000F01D6093FD057093FE058093FF05909347
+:1047300000068DB79EB70A970FB6F8949EBF0FBEBE
+:104740008DBFEDB7FEB7319681E294E0ADB7BEB74D
+:1047500012969C938E9311978091FD05828313820C
+:104760008091FE05848315828091FF0586831782E0
+:1047700080910006808711860E9409128DB79EB72E
+:104780000A960FB6F8949EBF0FBE8DBF0895AF92E4
+:10479000BF92CF92DF92EF92FF920F931F9380917F
+:1047A0000D0690910E06892B09F44AC0A0900D06C3
+:1047B000B0900E0660910F067091100620911106C0
+:1047C00030911206E0901306F090140680E090E01D
+:1047D000982F872F762F662740E050E0A9013327D6
+:1047E0002227620F731F841F951FCC24DD246A0DBE
+:1047F0007B1D8C1D9D1D00E010E01E2D0027FF2459
+:10480000EE246E0D7F1D801F911F6093F70570933E
+:10481000F8058093F9059093FA050E94FF1C6091BA
+:10482000F7057091F8058091F9059091FA0548E037
+:1048300020E001E010E0B1E0EB2EF12C0E94231B00
+:104840001F910F91FF90EF90DF90CF90BF90AF90AE
+:104850000895CF92DF92EF92FF920F931F93DF9311
+:10486000CF9300D0CDB7DEB79A838983CE0101966E
+:1048700068E071E00E94AE356C0110E00FC01F5F70
+:10488000E12FF0E0EE0FFF1FEE0FFF1FE15BFE4F89
+:1048900080819181892B11F480E03AC0E12EFF24C0
+:1048A000F701EE0FFF1FEE0FFF1FE15BFE4F808150
+:1048B0009181B6010E943435892B09F700E010E0A0
+:1048C0006E010894C11CD11CC6016AE071E00E940F
+:1048D000AE3560E070E040E050E00E94A533F801A2
+:1048E000EE0FFF1FE35FF94F718360830F5F1F4F70
+:1048F0000A30110549F7EE0CFF1CEE0CFF1C81E598
+:1049000091E0E80EF91ED701ED91FC91099581E047
+:104910000F900F90CF91DF911F910F91FF90EF902B
+:10492000DF90CF900895CF93DF93EC01DB0134C08B
+:1049300086958695FD018193888183708295807F1D
+:1049400011968C9311979981992321F4DF01119687
+:1049500042E026C092959F70890F11968C93119713
+:1049600089818F70880F880F12968C9312979A8185
+:10497000992319F4139641E013C092959695969554
+:104980009370890F12968C9312978A818F73139666
+:104990008C931397149623968881882349F640E0D8
+:1049A0001C92EB0108C0E881F0E0EF73F070E65C68
+:1049B000FB4FE491E993CA17DB07A9F7FD01842FA8
+:1049C0009DE302C0919381508823E1F7A40FB11DAC
+:1049D0001C92DF91CF9108952A988F71806A8EBDC5
+:1049E0000DB407FEFDCF6EBD0DB407FEFDCF2A9AB4
+:1049F00008952A988F7180688EBD0DB407FEFDCF93
+:104A00006EBD0DB407FEFDCF2A9A0895FF920F9355
+:104A10001F93CF93DF93182F9FE1F92EF82289E19E
+:104A20008F15D0F0C12FD0E0C076D07085E0D5953D
+:104A3000C7958A95E1F70C2F80919702C81761F00E
+:104A40008FE163E00E94EC24CC2321F08FE16C2FF6
+:104A50000E94F924009397022A98FEBC0DB407FE29
+:104A6000FDCF1EBC0DB407FEFDCF17FF04C01EBC5A
+:104A70000DB407FEFDCF8EB52A9ADF91CF911F911D
+:104A80000F91FF900895FF920F931F93CF93DF93A1
+:104A9000F62E182F1F711A31D0F4C82FD0E0C0762F
+:104AA000D07025E0D595C7952A95E1F70C2F809118
+:104AB0009702C81761F08FE163E00E94EC24CC23D9
+:104AC00021F08FE16C2F0E94F924009397022A981D
+:104AD00010641EBD0DB407FEFDCFFEBC0DB407FE75
+:104AE000FDCF2A9ADF91CF911F910F91FF900895EA
+:104AF0000F931F93982F162F072F84ED692F0E9475
+:104B0000432586ED612F0E94432587ED602F0E948B
+:104B100043258AE090E001972FEF8F3F920729F01D
+:104B20000000000000000000F6CF8AEE0E9406257B
+:104B300080FDFBCF1F910F910895FC012A988AE315
+:104B40008EBD0DB407FEFDCF08C01EBC0DB407FE20
+:104B5000FDCF8EB581936150704061157105A9F745
+:104B60002A9A0895CF92DF92EF92FF920F931F93AC
+:104B7000DF93CF930F92CDB7DEB77C016B01198223
+:104B800004E610E011C08FE10E94062583FF12C0E9
+:104B900088EE93E001972FEF8F3F920729F00000F6
+:104BA000000000000000F6CF015010408FEF0F3FD3
+:104BB000180749F78FE10E94062583FF08C08FE19F
+:104BC00060E80E94F9248FE160E80E94EC2482E012
+:104BD00060E00E94432583E06AE10E94432586E06D
+:104BE0006E2D0E94432597012050364E87E0632F9B
+:104BF0000E9443252A988AE78EBD0DB407FEFDCF9B
+:104C000089818EBD0DB407FEFDCF2A9A2A988AE7C6
+:104C10008EBD0DB407FEFDCF0CC0F60180818EBDA8
+:104C20000DB407FEFDCF0894E108F1080894C11CFB
+:104C3000D11CE114F10489F72A9A8CE168E00E9402
+:104C4000EC248FE168E00E94F9240F90CF91DF916E
+:104C50001F910F91FF90EF90DF90CF9008950F93E9
+:104C60001F93CF93DF93229A2A9A84B1886284B9E2
+:104C70002D9A2498229A80E58CBD81E08DBD80E13B
+:104C800097E201972FEF8F3F920729F00000000075
+:104C900000000000F6CF2A988FEF8EBD0DB407FEFE
+:104CA000FDCF2A9A88EE93E00197EFEF8F3F9E07A2
+:104CB00029F00000000000000000F6CF8DE10E9406
+:104CC000062580FFFBCF82E70E9406258093940291
+:104CD0001092210682E28093220689EF80932306B8
+:104CE00081E08093240688E38093250688EC8093F6
+:104CF0002606C0E0D0E0CE01FE01E458FB4F24912F
+:104D0000229683589B4FFC0164912F3F11F46F3F13
+:104D100021F0822F0E944325EECFC458DB4FFE01C5
+:104D200084912196FE01949121978F3F11F49F3F2A
+:104D300061F0192F00E02296FE01649170E0602B73
+:104D4000712B0E9478252196EACF1092960210923C
+:104D500095028BE160EC0E9443258FE164E00E94A4
+:104D6000F924DF91CF911F910F910895CF92DF9297
+:104D7000EF92FF920F931F93DF93CF9300D000D059
+:104D800000D0CDB7DEB77C016B0189E30E94062518
+:104D9000882319F400E010E071C0609195027091D1
+:104DA000960280E00E944325209195023091960260
+:104DB00081E0632F0E944325CE01019666E070E0FA
+:104DC0000E949D25898190E09093960280939502A0
+:104DD00020919502309196029A8180E0822B932B4C
+:104DE00090939602809395028B81082F10E09C810E
+:104DF00080E0082B192B8D81282F30E09E8180E0E8
+:104E0000282B392B27FF05C037FD03C0E016F1061C
+:104E100010F40E942F2604501040E016F10608F40A
+:104E20008701C601B8010E949D258091950290914D
+:104E30009602019780509A41A8F480919502909132
+:104E40009602609195027091960261508CE00E94EA
+:104E500043252091950230919602215030408DE0FB
+:104E6000632F06C08CE06FEF0E9443258DE069E15F
+:104E70000E9443258EE160E40E94F924C801269631
+:104E80000FB6F894DEBF0FBECDBFCF91DF911F915B
+:104E90000F91FF90EF90DF90CF90089590E02DE07C
+:104EA00030E0A901849F9001859F300D949F300DC3
+:104EB0001124EDE4F6E0DF01A20FB31F8C91807E98
+:104EC00082608C933897E20FF31F13821282118253
+:104ED00010828C918F7D8C9387E296E095838483FA
+:104EE00088E292E0928781878DE292E094878387BF
+:104EF0008EE592E09783868308952F923F924F929A
+:104F00005F926F927F928F929F92AF92BF92CF9259
+:104F1000DF92EF92FF920F931F93DF93CF93CDB762
+:104F2000DEB72A970FB6F894DEBF0FBECDBF382E7E
+:104F3000682E77248DE090E0689E9001699E300D88
+:104F4000789E300D1124F901E35BF94F808180FDDB
+:104F500007C0F901EB5BF94F8CE49EE193838283F8
+:104F600086E190E0689EF001699EF00D789EF00D5C
+:104F70001124EF51FD4F8089882379F48DE090E072
+:104F8000689EF001699EF00D789EF00D1124EB5B98
+:104F9000F94F80819181938382838DE090E0689EB8
+:104FA000F001699EF00D789EF00D1124EB5BF94F36
+:104FB0008281938191838083EE24FF2442E0C42E7A
+:104FC000D12CCE0EDF1E5E010894A11CB11C31E075
+:104FD000432E512C2AE0222EF60100811181B801C6
+:104FE0006F5F7F4F71836083F801849194ED892E08
+:104FF00093E0992E8E0C9F1CF4018083853209F07A
+:10500000F7C08FE891E043E050E00E940A35892B19
+:1050100081F50C5F1F4FF80184910F5F1F4FF8015E
+:1050200024912051829DC0011124280FE22FF0E02D
+:10503000EE0FFF1FE65BFD4F80819181B5014AE0D5
+:1050400050E00E94C635C5016AE070E00E94A335B9
+:10505000082F10E0C401B501A8010E9422350150BB
+:105060001040E00EF11EF60180819181059691833A
+:105070008083F6010081118183E991E0B80144E069
+:1050800050E00E940A35892B09F045C00B5F1F4F85
+:10509000F8018491805301501040F8016491633409
+:1050A00031F0643469F06234C9F425B10AC028B122
+:1050B000F20102C0EE0FFF1F8A95E2F7CF0108C090
+:1050C0002BB1A20102C0440F551F8A95E2F7CA0115
+:1050D000282321F0C50168E77EE103C0C50166E72A
+:1050E0007EE10E940335C5016AE070E00E94A335AD
+:1050F000082F10E0C7018C529C4FB501A8010E94F7
+:10510000223501501040E00EF11EF60180819181A0
+:10511000069691838083F6010081118188E991E0F0
+:10512000B80143E050E00E940A35892B09F045C0E0
+:105130000C5F1F4FF8018491805301501040F8011B
+:105140006491633431F0643469F06234C9F423B19A
+:105150000AC026B1F20102C0EE0FFF1F8A95E2F7E6
+:10516000CF0108C029B1A20102C0440F551F8A9582
+:10517000E2F7CA01282321F0C5016CE67EE103C0F5
+:10518000C50161E67EE10E940335C5016AE070E079
+:105190000E94A335082F10E0C7018C529C4FB50127
+:1051A000A8010E94223501501040E00EF11EF601C8
+:1051B00080819181059691838083F6016081718160
+:1051C0008CE991E043E050E00E940A35892B81F49C
+:1051D00086E190E0689EF001699EF00D789EF00DEA
+:1051E0001124EF51FD4F8DEF9FEF928B818B09C002
+:1051F0000894E11CF11CFCE8EF16F1E0FF0608F44E
+:10520000EBCE86E190E0689EF001699EF00D789EFD
+:10521000F00D1124EF51FD4F88E1808BC701632D04
+:105220000E943E172A960FB6F894DEBF0FBECDBF80
+:10523000CF91DF911F910F91FF90EF90DF90CF9072
+:10524000BF90AF909F908F907F906F905F904F90A6
+:105250003F902F9008954F925F926F927F929F920E
+:10526000AF92BF92CF92DF92EF92FF920F931F9374
+:10527000CF93DF93982E8091CC03082F10E0007F0E
+:1052800010701595079515950795C80180549C4F8A
+:1052900060E87EE10E946C35892B81F0292D30E099
+:1052A0008DE090E0289FF001299FF00D389FF00DD0
+:1052B0001124E35BF94F808180628083C92CDD2457
+:1052C0008DE090E0C89EA001C99E500DD89E500D63
+:1052D0001124DA01AB5BB94F36E0A32EB12CAA0E34
+:1052E000BB1E1696ED91FC9117978081882309F4D7
+:1052F0005BC022E2E22EF12CE00EF11E8091AF03A2
+:10530000282F30E02E5D3F4F9091AE0380E0280FB4
+:10531000391F201B310BB70162567C4FEA01C35B7A
+:10532000D94F149697E2692E96E0792EA5018EE565
+:10533000A82E82E0B82E35C0888180FD17C0FB0101
+:105340008081ED91FC91119791911196FC93EE93D0
+:10535000891719F011967C926E92ED91FC9111973C
+:105360008081882319F4888181608883FB01808192
+:10537000FA0140805180F20191912F01FA0151828E
+:105380004082891711F0B182A0826F5F7F4FFA01CE
+:1053900080819181FC018081882331F00894E11C97
+:1053A000F11CE216F30640F28DE090E0C89EB001D9
+:1053B000C99E700DD89E700D1124FB01E35BF94F5F
+:1053C000E081E0FF73C0E5FF71C0F2E2EF2EF12C47
+:1053D000E00EF11E8091AF03282F30E02E5D3F4F8D
+:1053E0009091AE0380E0280F391F201B310BA701DD
+:1053F00042565C4FCB018B5B994FDC011996E8E27A
+:10540000AE2EE2E0BE2EEC012B968DE2682E82E0FD
+:10541000782E48C0FA019081ED91FC91119781910D
+:105420001196FC93EE93981719F01196BC92AE92D8
+:10543000ED91FC91119780818823C1F4FA0181815B
+:10544000823441F0833451F0813469F480919802C0
+:105450008F5F07C0809198028E5F03C08091980291
+:105460008C5F809398021196BC92AE92E881F9818C
+:105470008191F983E883981711F0798268824F5FF0
+:105480005F4FE881F9818081882349F4FB01E35B68
+:10549000F94F80818F7D80831092980207C0089415
+:1054A000E11CF11CE216F30608F4B4CF8DE090E0A5
+:1054B000C89EF001C99EF00DD89EF00D1124EB5B43
+:1054C000F94F82819381892B09F0CFC0F801B796FB
+:1054D0008091AF03282F30E02E5D3F4F9091AE03B7
+:1054E00080E0280F391F201B310BDF01A256BC4F73
+:1054F00008C08D918D3021F4E256FC4F108204C01B
+:105500003196E217F307A8F38DE090E0C89EF00112
+:10551000C99EF00DD89EF00D1124EB5BF94F13825C
+:1055200012828091CC03C82FD0E0C07FD070D59577
+:10553000C795D595C795C054DC4FFF2487C0CE01D1
+:10554000B8010E944735892B09F47FC0C80160EA81
+:1055500071E00E944735892B79F08DE090E0C89E7C
+:10556000F001C99EF00DD89EF00D1124E35BF94FB8
+:105570008081817F88604FC0C80165EA71E00E9428
+:105580004735892B79F08DE090E0C89EF001C99EE7
+:10559000F00DD89EF00D1124E35BF94F8081817FDF
+:1055A0008A6039C0C8016AEA71E00E944735892BD8
+:1055B00079F08DE090E0C89EF001C99EF00DD89E74
+:1055C000F00D1124E35BF94F8081817F826023C05D
+:1055D000C8016FEA71E00E944735892B79F08DE0B0
+:1055E00090E0C89EF001C99EF00DD89EF00D1124E8
+:1055F000E35BF94F8081817F86600DC08DE090E094
+:10560000C89EF001C99EF00DD89EF00D1124E35BF9
+:10561000F94F8081817F80838DE090E0C89EF0010A
+:10562000C99EF00DD89EF00D1124EB5BF94FAA0C2A
+:10563000BB1CAA0CBB1C8AE092E0A80EB91ED501C7
+:105640008D919C919383828310C0F394AF2CBB24E3
+:10565000F501EE0FFF1FEE0FFF1FE85FFD4F00810A
+:1056600011810115110509F06ACF8DE090E0C89E07
+:105670009001C99E300DD89E300D1124D901AB5B2D
+:10568000B94F1696ED91FC9117978081882331F4DC
+:10569000F901E35BF94FE081E5FF1BC086E190E093
+:1056A000C89E8001C99E100DD89E100D11240F5167
+:1056B0001D4F80E1F801808B80E090E0692D0E9411
+:1056C0003E1781E090E0D80152969C938E935197BB
+:1056D000F4C0E0FD31C086E190E0C89EE001C99EC3
+:1056E000D00DD89ED00D1124CF51DD4F888983FF76
+:1056F00023C08CE49EE113969C938E931297809125
+:10570000CC0390E0807F90709595879595958795CF
+:1057100080549C4F66E87CE141E850E00E94FA34F6
+:1057200088E1888B81E890E0692D0E943E1782E035
+:1057300090E09A8B898BC1C08DE090E0C89EF0010B
+:10574000C99EF00DD89EF00D1124DF01AB5BB94F5F
+:1057500012968D919C911397892BA9F480915C02EC
+:1057600090915D02019690935D0280935C0282EBC2
+:1057700094E013969C938E931297E35BF94F80818C
+:10578000817F8260808386E190E0C89EE001C99EAF
+:10579000D00DD89ED00D1124CF51DD4F82E090E086
+:1057A0009A8B898B8DE090E0C89EF001C99EF00D28
+:1057B000D89EF00D1124E35BF94F808186958770A8
+:1057C00090E08330910509F460C08430910534F491
+:1057D000009759F0019709F070C015C08430910509
+:1057E00041F1059709F069C03AC08091CC0390E07F
+:1057F000807F9070959587959595879580549C4F5F
+:1058000065ED7BE123C08091CC0390E0807F9070B8
+:10581000959587959595879580549C4F6EE27CE190
+:1058200047E550E00E94FA3488E1888B87E590E0F4
+:1058300041C08091CC0390E0807F907095958795D2
+:105840009595879580549C4F68E07DE148E550E050
+:105850000E94FA3488E1888B88E590E02BC0809123
+:10586000CC0390E0807F907095958795959587956E
+:1058700080549C4F61E67DE145E750E00E94FA3498
+:1058800088E1888B85E790E015C08091CC0390E09B
+:10589000807F9070959587959595879580549C4FBE
+:1058A00067ED7DE144E750E00E94FA3488E1888B9F
+:1058B00084E790E0692D0E943E17DF91CF911F9100
+:1058C0000F91FF90EF90DF90CF90BF90AF909F909F
+:1058D0007F906F905F904F9008951F93CF93DF93C9
+:1058E000182FC82FD0E086E190E0C89FF001C99F33
+:1058F000F00DD89FF00D1124EF51FD4F808980FDF0
+:105900003EC081899289019719F4812F0E944E2708
+:1059100086E190E0C89FF001C99FF00DD89FF00D7F
+:105920001124EF51FD4F81899289039720F4812F33
+:105930000E942B2924C081899289039748F081898C
+:1059400092898E5F9F4F20F4812F0E947D2717C080
+:1059500086E190E0C89FF001C99FF00DD89FF00D3F
+:105960001124EF51FD4F818992898E5F9F4F38F04E
+:105970008EEF9FEF928B818B812F0E946818DF91B1
+:10598000CF911F91089584EB91E067E276E00E9449
+:10599000932480E590E06DE67CE20E945013089528
+:1059A000FF920F931F93CF93DF93C0910001D0918B
+:1059B00001018091DC029091DD02C817D90709F43A
+:1059C00069C060E070E026E130E0F62E629FF001F1
+:1059D000639FF00D729FF00D1124EF51FD4F8681F2
+:1059E00097818050974109F046C08091650380FD02
+:1059F00051C08091650381608093650380910201AD
+:105A0000909103019093DD028093DC0240E050E02E
+:105A100015C0FA01E256FC4FD9018D9186ABB093C7
+:105A2000DD02A093DC02AD59B34031F42053304085
+:105A30003093DD022093DC024F5F5F4F2091DC0248
+:105A40003091DD02C217D30721F786E190E0689F0D
+:105A50008001699F100D789F100D11240F511D4F6B
+:105A600088E1F801808BCA016F2D0E943E1783E008
+:105A7000F801838B0FC06F5F7F4F6530710509F0B0
+:105A8000A4CF8091DF0282FF05C08091DF028B7F6F
+:105A90008093DF02DF91CF911F910F91FF900895C6
+:105AA000FF920F931F93F82EA82FB0E086E190E0AD
+:105AB000A89FF001A99FF00DB89FF00D1124EF51A0
+:105AC000FD4F808980FF06C08091DF028B7F80932D
+:105AD000DF02B6C081899289892B21F08189928960
+:105AE000019759F586E190E0A89F8001A99F100DCC
+:105AF000B89F100D11240F511D4F81E090E0F80167
+:105B0000928B818B84ED93E065E87EE146E150E085
+:105B10000E94FA3486E190E06F2D0E943E1780913A
+:105B2000DF0284608093DF02809165038E7F809323
+:105B300065038FEFF801838B83C081899289029777
+:105B400008F443C0808983FF40C082E090E0928BDC
+:105B5000818B2091CC0330E0207F307035952795E4
+:105B600035952795B9016E5D7F4F8091AF03482F22
+:105B700050E04E5D5F4F9091AE0380E0480F591F9B
+:105B8000421B530BFB01E256FC4F09C08091C00041
+:105B900085FFFCCF81918093C6006F5F7F4F6417B4
+:105BA0007507A4F386E190E0A89FF001A99FF00D8E
+:105BB000B89FF00D1124EF51FD4F80E1808B80E004
+:105BC00090E06F2D0E943E173BC086E190E0A89FB9
+:105BD000F001A99FF00DB89FF00D1124EF51FD4F7A
+:105BE000818992890297B8F0808984FF14C08091DE
+:105BF000650380FF10C08FEF838B8091DC02909152
+:105C0000DD029093030180930201809165038E7FF2
+:105C10008093650315C086E190E0A89FF001A99FDD
+:105C2000F00DB89FF00D1124EF51FD4F80898823AE
+:105C300039F4809165038E7F809365030E94D02C98
+:105C40001F910F91FF90089587E190E060E57DE25C
+:105C50000E945013089500D000D08CE99EE1EDB76A
+:105C6000FEB7928381832091AF0330E02C51304006
+:105C70009091AE0380E0280F391F348323830E9464
+:105C800009120F900F900F900F90089589E591E001
+:105C90006BE27EE20E948D130895DF92EF92FF92F5
+:105CA0000F931F93CF93DF938091990290919A0263
+:105CB000029778F08091990290919A02449748F463
+:105CC0008091990290919A02019690939A02809302
+:105CD00099028091990290919A02892B09F092C0C1
+:105CE00000D080EC9FE1EDB7FEB7928381830E94E4
+:105CF00009120F900F9082E399E066E47FE20E9420
+:105D0000501361ED72EA8AEB9CE30E94FF1C88232A
+:105D100009F472C080E090E0A0E0B0E000000196DD
+:105D2000A11DB11D8038F4E89F07FEE1AF07F0E048
+:105D3000BF07A1F761ED72EA8AEB9CE340E050E512
+:105D400029E032E30E94FF1785E0E82EF12C012DB7
+:105D5000112DDD24C6E1D0E022C061ED72EA8AEBAC
+:105D60009CE340E050E50E948B162FE1D21661F4CF
+:105D700000D084E99FE1EDB7FEB7928381830E9452
+:105D800009120F900F907AC0E82EFF2400E010E077
+:105D9000F5E0EF16F1040105110570F0D394EC9EC7
+:105DA000F001ED9EF00DFC9EF00D1124EF51FD4F22
+:105DB00081899289019789F600D08EE69FE1EDB73F
+:105DC000FEB7928381830E94091286E190E0E89EEB
+:105DD000F001E99EF00DF89EF00D1124EA50FD4F00
+:105DE00080818160808382E090E090939A0280932A
+:105DF00099020F900F9006C081E090E090939A0274
+:105E0000809399028091990290919A020B97B0F138
+:105E10008091990290919A02449780F500D086E58E
+:105E20009FE1EDB7FEB7928381830E9409120F9024
+:105E30000F9061ED72EA8AEB9CE340E050E50E942E
+:105E40008B16D82EE82EFF2484ED93E06BEB7EE1D9
+:105E50004AE950E00E94FA3486E190E0E89EF001C1
+:105E6000E99EF00DF89EF00D1124EF51FD4F88E1F1
+:105E7000808B8AE990E06D2D0E943E17DF91CF91D3
+:105E80001F910F91FF90EF90DF900895BF92CF92F6
+:105E9000DF92EF92FF920F931F93CF93DF93B82E71
+:105EA0008091CC03C82FD0E0C07FD070D595C79526
+:105EB000D595C795A2966EE9E62E63E0F62EEC0E18
+:105EC000FD1E5EECC52E5FE1D52E17C000D000D0C0
+:105ED000EDB7FEB73196ADB7BEB71296DC92CE9253
+:105EE0001197D7018D917D01828313820E9409123F
+:105EF00021960F900F900F900F902091AF0330E0FC
+:105F00002E5D3F4F1091AE0300E0200F311F8091B6
+:105F1000CC0390E0807F90709595879595958795B7
+:105F2000281B390BC217D3078CF22B2D30E086E1EA
+:105F300090E0289FF001299FF00D389FF00D11246B
+:105F4000EF51FD4F8FEF838B80E1808B80E090E0FD
+:105F50006B2D0E943E17DF91CF911F910F91FF9003
+:105F6000EF90DF90CF90BF900895CF93DF93DC0147
+:105F70004D91FB014193EC018981EB0189831196DD
+:105F80008C911197818312968C918283DF91CF91AE
+:105F900008952F923F924F925F926F927F928F92CD
+:105FA0009F92AF92BF92CF92DF92EF92FF920F93A8
+:105FB0001F93DF93CF93CDB7DEB768970FB6F894F2
+:105FC000DEBF0FBECDBF8C01788F6F8B5C874B8798
+:105FD000CB010E969A878987DB011296B887AF832B
+:105FE000F6E02F2E312CFB01260E371E3A96FE834B
+:105FF000ED83CB0142969C838B83DB015696BA835B
+:10600000A98360E070E0EF89F88D7396FE87ED87D5
+:10601000E4E14E2E512C8F89988D480E591E4796DB
+:10602000988B8F8758E1652E712CAF89B88D6A0ED9
+:106030007B1E1F96BA8BA98B40E1842E912CEF8991
+:10604000F88D8E0E9F1E3396FC8BEB8B34E0A32EC7
+:10605000B12C8F89988DA80EB91E27E0C22ED12CA5
+:10606000C80ED91EAC01485F5F4F0B969E8B8D8B7F
+:106070008CE0E82EF12CAF89B88DEA0EFB1EF801FA
+:10608000E60FF71FE081E33309F4A9C0E43358F4C5
+:10609000E130E1F0E13008F4D0C0E33091F1E630D6
+:1060A00009F004C14FC0E63309F4DFC0E73338F428
+:1060B000E43309F4AFC0E53309F0F8C0C1C0E336FA
+:1060C00009F4F1C0EF3F09F0F1C0FBC0CB0101962C
+:1060D000F801E80FF91FE0810196E43009F0DFC014
+:1060E0009801280F391FF9018191A985BA858C93F0
+:1060F000D90111968C91A989BA898C938181D40197
+:106100001AC0CB010196F801E80FF91FE081019652
+:10611000E43009F0C4C09801280F391FF9018191BA
+:10612000AF81B8858C93D90111968C91AB89BC89CC
+:106130008C938181D5018C93828111968C936A5FB7
+:106140007F4FBFC0CB010196F801E80FF91F2081F6
+:106150002430B1F49C012F5F3F4F200F311FD90134
+:106160008D91F1018083F9018181F601808311967F
+:106170008C911197FA01808312968C918183DFCFE5
+:10618000FC013196283049F598012E0F3F1FF90187
+:106190008191D1018C93D90111968C91D6018C9368
+:1061A0008181DA018C93828111968C936A5F7F4F93
+:1061B0009801260F371FF9018191AD81BE818C9323
+:1061C000D90111968C91AD89BE898C938181D701BB
+:1061D0008C93828111968C9366C0BF0170C0CB01F5
+:1061E0000196F801E80FF91FE0810196E43009F00B
+:1061F00056C09801280F391FF9018191AB81BC81EC
+:106200008C93D90111968C91AD85BE858C9381813B
+:10621000D20191CFCB010196F801E80FF91FE0817F
+:106220009C012F5F3F4FE130F1F4F801E20FF31FC3
+:106230008081EF89F88D8183B9016F5F7F4F41C005
+:10624000CB010196F801E80FF91FE0819C012F5F57
+:106250003F4FE13041F4F801E20FF31F8081AF8935
+:10626000B88D8C93E9CFB9011BC0CB010196F80121
+:10627000E80FF91FE0810196E43089F49801280FB6
+:10628000391FF9018191A981BA818C93D9011196A5
+:106290008C91AF85B8898C938181D3014CCFBC019F
+:1062A0006E0F711D0EC06C5F7F4F0BC0CB0101964E
+:1062B000F801E80FF91F2081BC016F5F7F4F620F6B
+:1062C000711DF801E60FF71F80818F3F31F0EB85DC
+:1062D000FC856E177F0708F4D2CE68960FB6F89447
+:1062E000DEBF0FBECDBFCF91DF911F910F91FF9009
+:1062F000EF90DF90CF90BF90AF909F908F907F9066
+:106300006F905F904F903F902F900895CF93DF93C1
+:106310008091AE039091AF030E94D81289559240AC
+:1063200008F067C0C7E8D6E0199286E0C13AD807FE
+:10633000D9F78091CC03883C09F05BC08091CD03F4
+:10634000883309F056C08091CE03813009F051C0E6
+:106350008091CF03893F09F04CC08091AE039091AA
+:10636000AF030E94D812AC014850514084EB94E036
+:10637000BE016A5170400E94C92F80918806823008
+:10638000A9F0833051F08130D1F484E394E0BE0170
+:106390006A51704040E850E010C084E394E0BE01D0
+:1063A0006A51704040E850E00E94C92F84EF93E0AA
+:1063B000BE016A51704040E450E00E94C92F209114
+:1063C00087062530A1F0263091F0223091F480919B
+:1063D000D8039091D903A091DA03B091DB038093A5
+:1063E000FD059093FE05A093FF05B0930006209352
+:1063F0008606DF91CF9108950F931F93782FE8ECD5
+:10640000F3E0119285E0EC3EF807D9F731E03093E4
+:10641000C8033093C90366E06093CA0358EC5093F5
+:10642000CC0348E34093CD033093CE0329EF209370
+:10643000CF0380E890E09093D3038093D20310922F
+:10644000E40382E28093E5032093E6033093E703BD
+:106450004093E8035093E90393E69093B40482E8F1
+:106460008093B50483E58093B6049093B70485E3E5
+:106470008093B8043093B9047093BA0487E380938F
+:10648000BB0483E08093BC043093BD048093BE04BE
+:106490006093BF0482E38093C00494E09093C104AE
+:1064A0008091FD058093C2048091FE058093C30412
+:1064B0008091FF058093C404809100068093C504F9
+:1064C000A6ECB4E0713019F07330E9F403C07093B6
+:1064D000860619C086E38093C6049093C704809112
+:1064E0009D068093C80480919E068093C904809184
+:1064F0009F068093CA048091A0068093CB04ACECE5
+:10650000B4E090938606FD018CE0819388E01196BB
+:106510008C93DF0111968DE481839D012F5F3F4FA6
+:1065200099E611969C93F90131968EE6D901119660
+:106530008C93DF0111969183FD0131968DE21196C6
+:106540008C93DF01119681E48183FD01319686E50C
+:1065500011968C9382E581838FEF828384E292E0AF
+:1065600064E470E043E450E00FEF1FEF2FEF3FEFE4
+:106570000E94BD1A1F910F910895FF920F931F93D0
+:1065800080918606883081F480919C0290919D02D2
+:10659000A0919E02B0919F0288559240A040B040C9
+:1065A00018F483E08093860610E005E0F8E0FF2E03
+:1065B00007C0143028F087E08093860681E096C0FB
+:1065C00080918606833011F1843028F4813089F07F
+:1065D0008230B8F408C0853049F18530E8F0863063
+:1065E00009F07CC079C081E00E94FC310093E00298
+:1065F00075C08091E002882309F070C01092860671
+:1066000013C083E08093860610E068C00093E00228
+:1066100083E00E94FC3162C08091E002882309F08F
+:106620005DC083E0809386061F5F58C02091990665
+:1066300030E040E050E0522F44273327222780915A
+:106640009A0690E0A0E0B0E0DC0199278827282B8B
+:10665000392B4A2B5B2B80919C0690E0A0E0B0E0A8
+:10666000282B392B4A2B5B2B80919B0690E0A0E0D6
+:10667000B0E0BA2FA92F982F8827282B392B4A2B27
+:106680005B2B20939C0230939D0240939E0250937B
+:106690009F028091950690919606A0919706B091E1
+:1066A00098068093050690930606A0930706B0937C
+:1066B00008068091890690918A06A0918B06B09178
+:1066C0008C068093010690930206A0930306B09374
+:1066D0000406F092860602C0109286060E94D91C1B
+:1066E00080918606883009F064CF80E01F910F9179
+:1066F000FF90089584E490E066E871E30E948D13B2
+:10670000109286060895A1E21A2EAA1BBB1BFD015A
+:106710000DC0AA1FBB1FEE1FFF1FA217B307E40780
+:10672000F50720F0A21BB30BE40BF50B661F771FD8
+:10673000881F991F1A9469F76095709580959095B8
+:106740009B01AC01BD01CF0108952F923F925F9252
+:106750006F927F928F929F92AF92BF92CF92DF9271
+:10676000EF92FF920F931F93CF93DF938C011B0146
+:10677000EA016115710519F0FB019183808320976F
+:1067800049F0CE010297839728F020E030E040E006
+:1067900050E0F6C0F801A1908F018A2D90E00E9490
+:1067A000F234892BB9F7FDE2AF1631F4F801A1906C
+:1067B0008F015524539407C0FBE2AF1619F4F8017A
+:1067C000A1908F015524209719F0C031D105C1F453
+:1067D000F0E3AF1679F4F8018081883711F088353D
+:1067E00049F4F801A1800E5F1F4FF2E05F2AC0E17B
+:1067F000D0E006C0209721F480E3A816E9F427C072
+:10680000C830D10531F1C930D10524F4C230D105E9
+:1068100031F50CC0CA30D10589F0C031D105F9F489
+:10682000C12CD12CE12CB8E0FB2E28C0C12CD12CDE
+:10683000E12CA0E4FA2E22C0CAE0D0E0FCECCF2E7E
+:10684000FCECDF2EFCECEF2EFCE0FF2E17C0C8E0C6
+:10685000D0E0C12CD12CE12CE0E1FE2E0FC09E0136
+:10686000442737FD4095542F60E070E080E090E8C9
+:106870000E948333C901DA016C017D0120E030E020
+:1068800040E050E060E03E01882477FC8094982C42
+:1068900070EDB72EBA0CE9E0EB1570F48A2D815437
+:1068A0008A3118F499ECB92E06C08A2D81568A31A6
+:1068B00050F589EAB82EBA0C8B2D90E08C179D0705
+:1068C00014F56F3FE1F0C216D306E406F506B0F00A
+:1068D000CA01B901A40193010E9421369B01AC01B8
+:1068E0002B0D311D411D511D2130F0E03F07F0E01F
+:1068F0004F07F0E85F0710F461E001C06FEFF801A7
+:10690000A1908F01C5CF2114310481F0662331F0AD
+:1069100001501040F1011183008308C051FE1AC0DC
+:1069200002501040F1011183008314C067FF12C0B0
+:1069300050FC05C02FEF3FEF4FEF5FE704C020E0B2
+:1069400030E040E050E882E290E09093A20680932D
+:10695000A10616C050FE08C050954095309521956F
+:106960003F4F4F4F5F4F0CC057FF0AC082E290E08D
+:106970009093A2068093A1062FEF3FEF4FEF5FE7C2
+:10698000B901CA01DF91CF911F910F91FF90EF9054
+:10699000DF90CF90BF90AF909F908F907F906F903F
+:1069A0005F903F902F900895FC0188279927E894E5
+:1069B00021912032E9F3293010F02E30C8F32B3228
+:1069C00041F02D3239F4689404C00E94E735820FFB
+:1069D000911D219120532A30C0F31EF4909581958A
+:1069E0009F4F0895911111C1803219F0895085503F
+:1069F000D0F70895FB01DC0102C005900D924150D3
+:106A00005040D8F70895FB01DC0105900D9200205D
+:106A1000E1F70895FB01DC014150504088F08D9171
+:106A200081341CF08B350CF4805E659161341CF070
+:106A30006B350CF4605E861B611171F3990B089540
+:106A4000881BFCCF6817790768F4FB01DC01E40FB1
+:106A5000F51FA40FB51F02C002900E924150504086
+:106A6000D8F708950C940836FB01DC018D91813430
+:106A70001CF08B350CF4805E619161341CF06B3539
+:106A80000CF4605E861B611189F3990B0895FB017C
+:106A900051915523B1F0BF01DC01052E4D914423E6
+:106AA00069F010D0D9F7CD010190002049F04D9147
+:106AB000411108D0C9F3FB014111EECF81E090E014
+:106AC00001970895402539F0403229F440294B5769
+:106AD000465E08F018940895FB0155915523B1F0D6
+:106AE000BF01DC01052E4D91442369F010D0D9F788
+:106AF000CD010590002049F04D91411108D0C9F316
+:106B0000FB014111EECF81E090E00197089540250F
+:106B100039F0403229F440294B57465E08F018946A
+:106B20000895FB01DC010D900020E9F71197019019
+:106B30000D920020E1F70895FB01DC0101900D9218
+:106B40000020E1F70895FC016150704001900110B0
+:106B5000D8F7809590958E0F9F1F0895FC01A08116
+:106B6000B181AD01109681F03D91FB0101900316BA
+:106B70000110E1F7C9F7002011F4D00102C01E9204
+:106B80001196FC01A083B183CA010895FB019F0106
+:106B9000E8944230C4F04532B4F44A3029F497FB0B
+:106BA0001EF4909581959F4F642F77270E94403661
+:106BB000805D8A330CF0895D8193CB010097A1F74A
+:106BC00016F45DE251931082C9010C9411367AE0FB
+:106BD000979F902D879F802D910D11240895F999ED
+:106BE000FECF92BD81BDF89A992780B50895262FD2
+:106BF000F999FECF1FBA92BD81BD20BD0FB6F894A2
+:106C0000FA9AF99A0FBE0196089599278827089550
+:106C1000FB01DC0102C001900D9241505040D8F7B9
+:106C20000895DC01FC01672F71917723E1F732971A
+:106C300004C07C916D9370836291AE17BF07C8F357
+:106C40000895629FD001739FF001829FE00DF11DB6
+:106C5000649FE00DF11D929FF00D839FF00D749FD6
+:106C6000F00D659FF00D9927729FB00DE11DF91F82
+:106C7000639FB00DE11DF91FBD01CF0111240895DF
+:106C8000AA1BBB1B51E107C0AA1FBB1FA617B70752
+:106C900010F0A61BB70B881F991F5A95A9F780956E
+:0C6CA0009095BC01CD010895F894FFCF41
+:106CAC006C036C03C800020020002E2C20005245FF
+:106CBC005345540041525000544350004950004E2B
+:106CCC00455400524F55544552004E5450004D41BE
+:106CDC0043005645520053560054494D45004E54FE
+:106CEC0050520050494E470048454C50003F000E52
+:106CFC0001481F14018F211801B6201C0185231F88
+:106D0C00014323230101232A014C1F2E01CB2232E4
+:106D1C0001B322360179203901FF1F3E014D1F437B
+:106D2C0001C7234801D61F4D01D61F000000005695
+:106D3C00414000504F52540050494E00454E4400C3
+:106D4C002E6A7067002E676966002E68746D002EBF
+:106D5C006373730061646D696E3A756C69310069B7
+:106D6C006E6465782E68746D007374617475732E1F
+:106D7C0068746D007374796C65732E637373007231
+:106D8C00616B65742E6769660062616C6B652E675A
+:106D9C006966006C65646F6E2E676966006C65646D
+:106DAC006F66662E67696600BF01B204C901DE0C0E
+:106DBC00D401A50FDF013B14E901F213F301A51275
+:106DCC00FD014413000000004F55543D0053554243
+:106DDC003D004E6F2054696D652E2E2E20202020F4
+:106DEC00202020202020202020000A0032001E001D
+:106DFC0000000000000000000000000000000D0A70
+:046E0C000D0A00006B
+:00000001FF
View
21 ethernet-light-control/config.h
@@ -48,14 +48,15 @@
#define IP(a,b,c,d) ((unsigned long)(d)<<24)+((unsigned long)(c)<<16)+((unsigned long)(b)<<8)+a
//IP des Webservers und des Routers
- #define MYIP IP(192,168,0,99)
+ //#define MYIP IP(192,168,0,99)
+ #define MYIP IP(10,42,23,99)
#define ROUTER_IP IP(192,168,0,1)
//Netzwerkmaske
#define NETMASK IP(255,255,255,0)
- //DHCP-Server
- #define USE_DHCP 0 //1 = DHCP Client on
+ //DHCP-Server
+ #define USE_DHCP 1 //1 = DHCP Client on
//DNS-Server
#define USE_DNS 0 //1 = DNS Client on
@@ -63,7 +64,7 @@
//IP des NTP-Servers z.B. Server 1.de.pool.ntp.org
- #define USE_NTP 1 //1 = NTP Client on
+ #define USE_NTP 0 //1 = NTP Client on
#define NTP_IP IP(77,37,6,59)
//Broadcast-Adresse für WOL
@@ -73,15 +74,15 @@
//MAC Adresse des Webservers
#define MYMAC1 0x00
- #define MYMAC2 0x20
- #define MYMAC3 0x18
- #define MYMAC4 0xB1
- #define MYMAC5 0x15
- #define MYMAC6 0x6F
+ #define MYMAC2 0x22
+ #define MYMAC3 0xF9
+ #define MYMAC4 0x01
+ #define MYMAC5 0x38
+ #define MYMAC6 0xc8
//Taktfrequenz
//#define F_CPU 20000000UL
- #define F_CPU 16000000UL
+ #define F_CPU 8000000UL
//#define F_CPU 14745600UL
//#define F_CPU 11059200UL
View
6 ethernet-light-control/httpd.c
@@ -265,7 +265,7 @@ void httpd_header_check (unsigned char index)
if(*http_entry[index].post_ready_ptr == 0)
{
http_entry[index].post = 0;
- PORTA = PORT_tmp;
+ //PORTA = PORT_tmp;
PORT_tmp = 0;
break;
//Submit gefunden
@@ -506,7 +506,7 @@ void httpd_data_send (unsigned char index)
switch(pgm_read_byte(http_entry[index].new_page_pointer+4))
{
case 'A':
- b = (PORTA & (1<<pin));
+ //b = (PORTA & (1<<pin));
break;
case 'B':
b = (PORTB & (1<<pin));
@@ -542,7 +542,7 @@ void httpd_data_send (unsigned char index)
switch(pgm_read_byte(http_entry[index].new_page_pointer+3))
{
case 'A':
- b = (PINA & (1<<pin));
+ //b = (PINA & (1<<pin));
break;
case 'B':
b = (PINB & (1<<pin));
View
30 ethernet-light-control/main.c
@@ -43,7 +43,7 @@
#include "camera/servo.h"
#include "sendmail.h"
#include <avr/eeprom.h>
-
+#include <util/delay.h>
#include "dhcpc.h"
#include "dnsc.h"
@@ -53,12 +53,11 @@ int main(void)
{
//Konfiguration der Ausgänge bzw. Eingänge
//definition erfolgt in der config.h
- DDRA = OUTA;
+ //DDRA = OUTA;
DDRC = OUTC;
DDRD = OUTD;
- unsigned long a;
- #if USE_SERVO
+ #if USE_SERVO
servo_init ();
#endif //USE_SERVO
@@ -72,12 +71,16 @@ int main(void)
usart_write("Compiliert am "__DATE__" um "__TIME__"\r\n");
usart_write("Compiliert mit GCC Version "__VERSION__"\r\n");
- for(a=0;a<1000000;a++){asm("nop");};
-
+ _delay_ms(1000);
+
//Applikationen starten
stack_init();
- httpd_init();
- telnetd_init();
+ #if USE_HTTPD
+ httpd_init();
+ #endif
+ #if USE_TELNETD
+ telnetd_init();
+ #endif
//Spielerrei mit einem LCD
#if USE_SER_LCD
@@ -88,8 +91,11 @@ int main(void)
lcd_print(0,0,"System Ready");
#endif
//Ethernetcard Interrupt enable
+#if defined(__AVR_ATmega328P__)
+ //ETH_INT_ENABLE;
+#else
ETH_INT_ENABLE;
-
+#endif
//Globale Interrupts einschalten
sei();
@@ -229,8 +235,10 @@ int main(void)
#endif //USE_DHCP
//USART Daten für Telnetanwendung?
- telnetd_send_data();
-
+ #if USE_TELNETD
+ telnetd_send_data();
+ #endif
+
if(ping.result)
{
usart_write("Get PONG: %i.%i.%i.%i\r\n",ping.ip1[0],ping.ip1[1],ping.ip1[2],ping.ip1[3]);
View
10 ethernet-light-control/makefile
@@ -31,7 +31,8 @@
# MCU name
-MCU = atmega32
+#MCU = atmega32
+MCU = atmega328p
#MCU = atmega644
@@ -170,12 +171,12 @@ LDFLAGS += -lm
#
#AVRDUDE_PROGRAMMER = AVR910
-AVRDUDE_PROGRAMMER = stk200
+AVRDUDE_PROGRAMMER = stk500v2
#AVRDUDE_PROGRAMMER = USBasp
#AVRDUDE_PORT = usb # programmer connected to USB port
#AVRDUDE_PORT = com1 # programmer connected to serial device
-AVRDUDE_PORT = lpt1 # programmer connected to parallel port
+AVRDUDE_PORT = com3 # programmer connected to parallel port
AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex $(FUSE_BITS)
#AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep
@@ -228,7 +229,8 @@ REMOVE = rm -f
COPY = cp
HEXSIZE = $(SIZE) --target=$(FORMAT) $(TARGET).hex
-ELFSIZE = $(SIZE) -A $(TARGET).elf
+#ELFSIZE = $(SIZE) -A $(TARGET).elf
+ELFSIZE = $(SIZE) -C --mcu=$(MCU) $(TARGET).elf
View
2  ethernet-light-control/networkcard/enc28j60.c
@@ -284,7 +284,7 @@ static unsigned int enc_read_phyreg( unsigned char phyreg )
}
#endif
-static void enc_write_phyreg( unsigned char phyreg, unsigned int value )
+void enc_write_phyreg( unsigned char phyreg, unsigned int value )
{
enc_write_reg( ENC_REG_MIREGADR, phyreg );
enc_write_reg( ENC_REG_MIWRL, LO8(value) );
View
21 ethernet-light-control/networkcard/enc28j60.h
@@ -34,6 +34,20 @@
atmega <-> enc connection pins, ports, interrupt
*************************************************************/
+#if defined (__AVR_ATmega328P__)
+ #define SPI_DDR DDRB
+ #define SPI_PORT PORTB
+ #define SPI_SCK 5
+ #define SPI_MISO 4
+ #define SPI_MOSI 3
+ #define SPI_SS 2
+
+ #define ENC_DDR DDRB
+ #define ENC_PORT PORTB
+ #define ENC_PIN PINB
+ #define ENC_CS 2 //4 für Pollin NET I/O Board
+ #define ENC_INT 1
+#else
#define SPI_DDR DDRB
#define SPI_PORT PORTB
#define SPI_SCK 7
@@ -46,13 +60,18 @@
#define ENC_PIN PINB
#define ENC_CS 3 //4 für Pollin NET I/O Board
#define ENC_INT 2
-
+#endif
#define enc_select() ENC_PORT &= ~(1<<ENC_CS)
#define enc_deselect() ENC_PORT |= (1<<ENC_CS)
#define ETH_INTERRUPT INT2_vect
#define ETH_INT_ACTIVE (!(ENC_PIN & (1<<ENC_INT)))
+ #if defined (__AVR_ATmega328P__)
+ #define ETH_INT_ENABLE
+ #define ETH_INT_DISABLE
+ #endif
+
#if defined (__AVR_ATmega32__)
#define ETH_INT_ENABLE GICR |= (1<<INT2)
#define ETH_INT_DISABLE GICR &= ~(1<<INT2)
View
13 ethernet-light-control/stack.c
@@ -57,6 +57,7 @@ UDP_PORT_ITEM UDP_PORT_TABLE[MAX_APP_ENTRY] = // Port-Tabelle
unsigned char myip[4];
unsigned char netmask[4];
unsigned char router_ip[4];
+unsigned char broadcast_ip[4];
unsigned int IP_id_counter = 0;
unsigned char eth_buffer[MTU_SIZE+1];
@@ -98,6 +99,9 @@ void stack_init (void)
(*((unsigned long*)&dns_server_ip[0])) = get_eeprom_value(DNS_IP_EEPROM_STORE,DNS_IP);
#endif
+ //Broadcast-Adresse berechnen
+ (*((unsigned long*)&broadcast_ip[0])) = (((*((unsigned long*)&myip[0])) & (*((unsigned long*)&netmask[0]))) | (~(*((unsigned long*)&netmask[0]))));
+
//MAC Adresse setzen
mymac[0] = MYMAC1;
mymac[1] = MYMAC2;
@@ -271,12 +275,15 @@ void kill_udp_app (unsigned int port)
//----------------------------------------------------------------------------
//Interrupt von der Netzwerkkarte
+#if defined(__AVR_ATmega328P__)
+#else
ISR (ETH_INTERRUPT)
{
eth.data_present = 1;
stack_watchdog = 0;
ETH_INT_DISABLE;
}
+#endif
//----------------------------------------------------------------------------
//ETH get data
@@ -288,7 +295,11 @@ void eth_get_data (void)
arp_timer_call();
eth.timer = 0;
}
+#if defined(__AVR_ATmega328P__)
+ if(ETH_INT_ACTIVE)
+#else
if(eth.data_present)
+#endif
{
#if USE_ENC28J60
while(ETH_INT_ACTIVE)
@@ -390,7 +401,7 @@ void check_packet (void)
}
}
else
- if (ip->IP_Destaddr == (unsigned long)0xffffffff ) // if broadcast
+ if (ip->IP_Destaddr == (unsigned long)0xffffffff || ip->IP_Destaddr == *((unsigned long*)&broadcast_ip[0]) ) // if broadcast
{
if( ip->IP_Proto == PROT_UDP ) udp_socket_process();
}
View
8 ethernet-light-control/stack.h
@@ -61,9 +61,17 @@ UDP_PORT_ITEM UDP_PORT_TABLE[MAX_APP_ENTRY];
extern unsigned char myip[4];
extern unsigned char netmask[4];
extern unsigned char router_ip[4];
+extern unsigned char broadcast_ip[4];
extern unsigned int IP_id_counter;
+#if defined (__AVR_ATmega328P__)
+ #define MAX_TCP_ENTRY 5
+ #define MAX_UDP_ENTRY 5
+ #define MAX_ARP_ENTRY 5
+ #define MTU_SIZE 600
+#endif
+
#if defined (__AVR_ATmega32__)
#define MAX_TCP_ENTRY 5
#define MAX_UDP_ENTRY 5
View
50 ethernet-light-control/timer.c
@@ -63,10 +63,17 @@ void timer_init (void)
TIMSK = (1<<OCIE2);
#endif
#else
- TCCR1B |= (1<<WGM12) | (1<<CS10 | 0<<CS11 | 1<<CS12);
+ #if defined (__AVR_ATmega328P__)
+ TCCR1B |= (1<<WGM12) | (1<<CS10 | 0<<CS11 | 1<<CS12); //1024
TCNT1 = 0;
- OCR1A = (F_CPU / 1024) - 1;
+ OCR1A = ((F_CPU / 1024) / 200) - 1;
+ TIMSK1 |= (1 << OCIE1A);
+ #else
+ TCCR1B |= (1<<WGM12) | (1<<CS10 | 0<<CS11 | 1<<CS12); //1024
+ TCNT1 = 0;
+ OCR1A = ((F_CPU / 1024) / 200) - 1;
TIMSK |= (1 << OCIE1A);
+ #endif
#endif
return;
};
@@ -83,18 +90,31 @@ return;
ISR (TIMER1_COMPA_vect)
#endif
{
- //tick 1 second
- time++;
- if((stack_watchdog++) > WTT) //emergency reset of the stack
- {
- RESET();
+
+ static uint16_t prescaler_10ms = 2;
+ if(!prescaler_10ms--)
+ {
+ prescaler_10ms = 1;
+ }
+
+ static uint16_t prescaler_s = 200;
+ if(!prescaler_s--)
+ {
+ prescaler_s = 199;
+
+ //tick 1 second
+ time++;
+ if((stack_watchdog++) > WTT) //emergency reset of the stack
+ {
+ RESET();
+ }
+ eth.timer = 1;
+ #if USE_NTP
+ ntp_timer--;
+ #endif //USE_NTP
+ #if USE_DHCP
+ if ( dhcp_lease > 0 ) dhcp_lease--;
+ if ( gp_timer > 0 ) gp_timer--;
+ #endif //USE_DHCP
}
- eth.timer = 1;
- #if USE_NTP
- ntp_timer--;
- #endif //USE_NTP
- #if USE_DHCP
- if ( dhcp_lease > 0 ) dhcp_lease--;
- if ( gp_timer > 0 ) gp_timer--;
- #endif //USE_DHCP
}
View
15 ethernet-light-control/usart.h
@@ -56,7 +56,19 @@
#define USART_RX USART0_RX_vect
#endif
- #if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__)
+ #if defined (__AVR_ATmega328P__)
+ #define USR UCSR0A
+ #define UCR UCSR0B
+ #define UDR UDR0
+ #define UBRR UBRR0L
+ #define TXEN TXEN0
+ #define RXEN RXEN0
+ #define RXCIE RXCIE0
+ #define UDRE UDRE0
+ #define FE FE0
+ #endif
+
+ #if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__)
#define USR UCSR0A
#define UCR UCSR0B
#define UBRR UBRR0L
@@ -99,6 +111,7 @@
void usart_write_P (const char *Buffer,...);
#define usart_write(format, args...) usart_write_P(PSTR(format) , ## args)
+ //#define usart_write(...)
//----------------------------------------------------------------------------
Please sign in to comment.
Something went wrong with that request. Please try again.