Init code: 0x60806040523461024b576124ad803803806100198161024f565b928339810160408282031261024b5781516001600160a01b0392838216929183900361024b576020818101516001600160401b039283821161024b570192601f9080828601121561024b57845184811161023757601f19956100808285018816860161024f565b9282845285838301011161024b57815f92868093018386015e83010152805193841161023757600254926001938481811c9116801561022d575b82821014610219578381116101d5575b50809285116001146101735750839450908392915f94610168575b50501b915f199060031b1c1916176002555b801561015057600480546001600160a01b0319908116909155600380549182168317905560405192167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a361223890816102758239f35b604051631e4fbdf760e01b81525f6004820152602490fd5b015192505f806100e5565b92948490811660025f52845f20945f905b888383106101bb57505050106101a3575b505050811b016002556100f7565b01515f1960f88460031b161c191690555f8080610195565b858701518855909601959485019487935090810190610184565b60025f52815f208480880160051c820192848910610210575b0160051c019085905b8281106102055750506100ca565b5f81550185906101f7565b925081926101ee565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100ba565b634e487b7160e01b5f52604160045260245ffd5b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176102375760405256fe60806040526004361015610011575f80fd5b5f3560e01c8062fdd58e1461014357806301ffc9a71461013e5780630e89341c14610139578063156e29f6146101345780632eb2c2d61461012f5780632fde38261461012a5780634cd412d5146101255780634e1273f414610120578063715018a61461011b57806379ba5097146101165780638da5cb5b14610111578063a0bcfc7f1461010c578063a22cb46514610107578063e30c397814610102578063e985e9c5146100fd578063ef7ac0e5146100f8578063f242432a146100f3578063f2fde38b146100ee5763fdea8e0b146100e9575f80fd5b61149e565b6113f2565b61126a565b6111a6565b611110565b6110bf565b610f94565b610dcf565b610d7e565b610ca3565b610bfe565b610b25565b610a9e565b61096a565b6107a7565b6104de565b610398565b610251565b6101b3565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361016b57565b5f80fd5b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361016b57565b359073ffffffffffffffffffffffffffffffffffffffff8216820361016b57565b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602061021e6101ef610148565b6024355f525f835260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54604051908152f35b7fffffffff0000000000000000000000000000000000000000000000000000000081160361016b57565b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760207fffffffff000000000000000000000000000000000000000000000000000000006004356102af81610227565b167fd9b67a26000000000000000000000000000000000000000000000000000000008114908115610317575b81156102ed575b506040519015158152f35b7f01ffc9a7000000000000000000000000000000000000000000000000000000009150145f6102e2565b7f0e89341c00000000000000000000000000000000000000000000000000000000811491506102db565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b906020610395928181520190610341565b90565b3461016b576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760405190815f6002546103da816116b5565b8084529060019081811690811561049f5750600114610442575b505061040292500382610663565b8051156104315761042161042d9161041b600435611755565b90611548565b60405191829182610384565b0390f35b5061042d61043d611524565b610421565b9093915060025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace935f915b81831061048757505061040293508201015f806103f4565b8554878401850152948501948694509183019161046f565b90506104029593507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f806103f4565b3461016b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57610515610148565b6024359073ffffffffffffffffffffffffffffffffffffffff90816005541633036105eb57600283116105c1576040519161054f83610642565b5f83528116156105915761058961058f93604435909160405192600184526020840152604083019160018352606084015260808301604052565b91611951565b005b60246040517f57f447ce0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60046040517fdfa1a408000000000000000000000000000000000000000000000000000000008152fd5b60046040517f92ed0e81000000000000000000000000000000000000000000000000000000008152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6020810190811067ffffffffffffffff82111761065e57604052565b610615565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761065e57604052565b67ffffffffffffffff811161065e5760051b60200190565b9080601f8301121561016b5760209082356106d6816106a4565b936106e46040519586610663565b81855260208086019260051b82010192831161016b57602001905b82821061070d575050505090565b813581529083019083016106ff565b67ffffffffffffffff811161065e57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926107628261071c565b916107706040519384610663565b82948184528183011161016b578281602093845f960137010152565b9080601f8301121561016b5781602061039593359101610756565b3461016b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576107de610148565b6107e661016f565b906044359167ffffffffffffffff9081841161016b5761080b600494369086016106bc565b9060643583811161016b5761082390369087016106bc565b9260843590811161016b5761083b903690870161078c565b9373ffffffffffffffffffffffffffffffffffffffff80821690338214158061092c575b6108d9578316156108a957156108795761058f9550611b01565b6024865f604051917f01a83514000000000000000000000000000000000000000000000000000000008352820152fd5b6024875f604051917f57f447ce000000000000000000000000000000000000000000000000000000008352820152fd5b604080517fe237d92200000000000000000000000000000000000000000000000000000000815233818b0190815273ffffffffffffffffffffffffffffffffffffffff8616602082015290918291010390fd5b50815f52600160205260ff6109623360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54161561085f565b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576109a1610148565b6109a96118c3565b60055473ffffffffffffffffffffffffffffffffffffffff80831692919081168315610a7457838114610a4a576040805173ffffffffffffffffffffffffffffffffffffffff92831681529390911660208401527fffffffffffffffffffffffff0000000000000000000000000000000000000000927f42e6b4d0f422db8acba71d0435d0dd4e46fadb4a2d99683b66eded85126fb2859190a11617600555005b60046040517f2620eb3a000000000000000000000000000000000000000000000000000000008152fd5b60046040517fd92e233d000000000000000000000000000000000000000000000000000000008152fd5b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602060ff60055460a01c166040519015158152f35b9081518082526020808093019301915f5b828110610b00575050505090565b835185529381019392810192600101610af2565b906020610395928181520190610ae1565b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760043567ffffffffffffffff80821161016b573660238301121561016b578160040135610b80816106a4565b92610b8e6040519485610663565b8184526020916024602086019160051b8301019136831161016b57602401905b828210610be7578560243586811161016b5761042d91610bd5610bdb9236906004016106bc565b906115d9565b60405191829182610b14565b838091610bf384610192565b815201910190610bae565b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57610c346118c3565b5f73ffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffff00000000000000000000000000000000000000008060045416600455600354908116600355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760045473ffffffffffffffffffffffffffffffffffffffff3381831603610d4e577fffffffffffffffffffffffff00000000000000000000000000000000000000008092166004556003549133908316176003553391167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b60246040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152fd5b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602073ffffffffffffffffffffffffffffffffffffffff60035416604051908152f35b3461016b576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5767ffffffffffffffff60043581811161016b573660238201121561016b57610e31903690602481600401359101610756565b91610e3a6118c3565b825191821161065e57610e5782610e526002546116b5565b6118e4565b602090601f8311600114610eb557508190610ea5935f92610eaa575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c19161790565b600255005b015190505f80610e73565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0831693610f0560025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace90565b925f905b868210610f5e5750508360019510610f27575b505050811b01600255005b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690555f8080610f1c565b80600185968294968601518155019501930190610f09565b60243590811515820361016b57565b60043590811515820361016b57565b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57610fcb610148565b610fd3610f76565b73ffffffffffffffffffffffffffffffffffffffff821691821561108f5761102490335f52600160205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff831515161790557f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c316040518061108a339482919091602081019215159052565b0390a3005b60246040517fced3e1000000000000000000000000000000000000000000000000000000000081525f6004820152fd5b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602073ffffffffffffffffffffffffffffffffffffffff60045416604051908152f35b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602060ff61119a61114e610148565b73ffffffffffffffffffffffffffffffffffffffff61116b61016f565b91165f526001845260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54166040519015158152f35b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576111dd610f85565b6111e56118c3565b6005549015158060ff8360a01c16151514610a4a5774ff00000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff917fa410c62368e64b86d7722fd28e698d03bd00719ba95a861b50ceb65efdc6ca446020604051838152a160a01b169116176005555f80f35b3461016b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576112a1610148565b6112a961016f565b60843567ffffffffffffffff811161016b576112c990369060040161078c565b9073ffffffffffffffffffffffffffffffffffffffff8084169033821415806113b4575b6113675782161561059157156113375761058f9261132f6064356044359160405192600184526020840152604083019160018352606084015260808301604052565b929091611b01565b60246040517f01a835140000000000000000000000000000000000000000000000000000000081525f6004820152fd5b6040517fe237d92200000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff86166024820152604490fd5b50815f52600160205260ff6113ea3360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5416156112ed565b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57611429610148565b6114316118c3565b73ffffffffffffffffffffffffffffffffffffffff80911690817fffffffffffffffffffffffff00000000000000000000000000000000000000006004541617600455600354167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227005f80a3005b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602073ffffffffffffffffffffffffffffffffffffffff60055416604051908152f35b611520915f525f60205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5490565b6040519061153182610642565b5f8252565b805191908290602001825e015f815290565b6115969061156a61156494936040519586936020850190611536565b90611536565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101845283610663565b565b80518210156115ac5760209160051b010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b9190918051835180820361167a57505080519061160e6115f8836106a4565b926116066040519485610663565b8084526106a4565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0602092013660208501375f5b8151811015611672578061166160019260051b85808287010151918a010151906114ef565b61166b8287611598565b520161163c565b509193505050565b6040517f5b05999100000000000000000000000000000000000000000000000000000000815260048101919091526024810191909152604490fd5b90600182811c921680156116fc575b60208310146116cf57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f16916116c4565b906117108261071c565b61171d6040519182610663565b8281527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe061174b829461071c565b0190602036910137565b805f917a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000808210156118b5575b506d04ee2d6d415b85acef8100000000808310156118a6575b50662386f26fc1000080831015611897575b506305f5e10080831015611888575b5061271080831015611879575b506064821015611869575b600a8092101561185f575b6001908160216117ec60018701611706565b95860101905b6117fe575b5050505090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff849101917f30313233343536373839616263646566000000000000000000000000000000008282061a83530491821561185a579190826117f2565b6117f7565b91600101916117da565b91906064600291049101916117cf565b6004919392049101915f6117c4565b6008919392049101915f6117b7565b6010919392049101915f6117a8565b6020919392049101915f611796565b60409350810491505f61177d565b73ffffffffffffffffffffffffffffffffffffffff600354163303610d4e57565b601f81116118f0575050565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace906020601f840160051c83019310611947575b601f0160051c01905b81811061193c575050565b5f8155600101611931565b9091508190611928565b90805183519081810361167a5750505f5b81518110156119f3578060019160051b84602080838701015192880101519173ffffffffffffffffffffffffffffffffffffffff82166119a6575b50505001611962565b6119e9916119be6119e1925f525f60205260405f2090565b9073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b918254611d4e565b90555f848161199d565b50805191939291600103611aae5760208181015183820151604080519283529282015273ffffffffffffffffffffffffffffffffffffffff8616915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291a45b73ffffffffffffffffffffffffffffffffffffffff8416611a78575b50505050565b8051600103611a9f5790602080611a96959301519101519133612164565b5f808080611a72565b611aa99333611e89565b611a96565b6040515f73ffffffffffffffffffffffffffffffffffffffff8616917f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb339180611af9888883611d88565b0390a4611a56565b9473ffffffffffffffffffffffffffffffffffffffff808716958615159593949192908680611d3e575b611d1457825185519081810361167a5750505f5b8351811015611c3c578060051b9088886020808589010151948a01015191611b98575b600193888216611b76575b50505001611b3f565b611b8e916119be6119e1925f525f60205260405f2090565b90555f8881611b6d565b509091611bb08c6119be835f525f60205260405f2090565b54828110611bdf5782918d611bd7600196958d9403916119be845f525f60205260405f2090565b559350611b62565b6040517f03dee4c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8e16600482015260248101919091526044810183905260648101829052608490fd5b509550969391909560018751145f14611cd557602087810151858201516040805192835292820152838516929133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629190a45b8116611c9e575b5050505050565b8451600103611cc457602080611cba96015192015192336121b2565b5f80808080611c97565b611cd09491923361200c565b611cba565b60405190828416917f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb339180611d0c898d83611d88565b0390a4611c90565b60046040517f3d693ada000000000000000000000000000000000000000000000000000000008152fd5b5060ff60055460a01c1615611b2b565b91908201809211611d5b57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b9091611d9f61039593604084526040840190610ae1565b916020818403910152610ae1565b9081602091031261016b575161039581610227565b92611dfe610395959373ffffffffffffffffffffffffffffffffffffffff611e0c941686525f602087015260a0604087015260a0860190610ae1565b908482036060860152610ae1565b916080818403910152610341565b93906103959593611dfe91611e0c9473ffffffffffffffffffffffffffffffffffffffff809216885216602087015260a0604087015260a0860190610ae1565b3d15611e84573d90611e6b8261071c565b91611e796040519384610663565b82523d5f602084013e565b606090565b9293919093843b611e9b575050505050565b602091611ed760405194859384937fbc197c81000000000000000000000000000000000000000000000000000000009889865260048601611dc2565b03815f73ffffffffffffffffffffffffffffffffffffffff88165af15f9181611fdb575b50611f605782611f09611e5a565b8051919082611f59576040517f57f447ce00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602490fd5b9050602001fd5b7fffffffff000000000000000000000000000000000000000000000000000000001603611f9257505f80808080611c97565b6040517f57f447ce00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602490fd5b611ffe91925060203d602011612005575b611ff68183610663565b810190611dad565b905f611efb565b503d611fec565b939290949194853b612021575b505050505050565b61205d60209360405195869485947fbc197c8100000000000000000000000000000000000000000000000000000000998a875260048701611e1a565b03815f73ffffffffffffffffffffffffffffffffffffffff88165af15f91816120c2575b5061208f5782611f09611e5a565b7fffffffff000000000000000000000000000000000000000000000000000000001603611f9257505f8080808080612019565b6120dc91925060203d60201161200557611ff68183610663565b905f612081565b909260a09273ffffffffffffffffffffffffffffffffffffffff61039596951683525f6020840152604083015260608201528160808201520190610341565b919261039595949160a09473ffffffffffffffffffffffffffffffffffffffff8092168552166020840152604083015260608201528160808201520190610341565b9293919093843b612176575050505050565b602091611ed760405194859384937ff23a6e610000000000000000000000000000000000000000000000000000000098898652600486016120e3565b939290949194853b6121c657505050505050565b61205d60209360405195869485947ff23a6e6100000000000000000000000000000000000000000000000000000000998a87526004870161212256fea2646970667358221220b28df53e25afef3c55b99ff84763bceaa4d19c57d147ed3db8a640ecd89020e564736f6c634300081900330000000000000000000000003b764564639032f61fda5360727577a4cbce75cb00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000043697066733a2f2f6261667962656961366a33797775656f73726c6b61723235776d733276636964737576346d79617a35633269733633766c336c62766a696b3578792f0000000000000000000000000000000000000000000000000000000000
New contract code: 0x60806040526004361015610011575f80fd5b5f3560e01c8062fdd58e1461014357806301ffc9a71461013e5780630e89341c14610139578063156e29f6146101345780632eb2c2d61461012f5780632fde38261461012a5780634cd412d5146101255780634e1273f414610120578063715018a61461011b57806379ba5097146101165780638da5cb5b14610111578063a0bcfc7f1461010c578063a22cb46514610107578063e30c397814610102578063e985e9c5146100fd578063ef7ac0e5146100f8578063f242432a146100f3578063f2fde38b146100ee5763fdea8e0b146100e9575f80fd5b61149e565b6113f2565b61126a565b6111a6565b611110565b6110bf565b610f94565b610dcf565b610d7e565b610ca3565b610bfe565b610b25565b610a9e565b61096a565b6107a7565b6104de565b610398565b610251565b6101b3565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361016b57565b5f80fd5b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361016b57565b359073ffffffffffffffffffffffffffffffffffffffff8216820361016b57565b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602061021e6101ef610148565b6024355f525f835260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54604051908152f35b7fffffffff0000000000000000000000000000000000000000000000000000000081160361016b57565b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760207fffffffff000000000000000000000000000000000000000000000000000000006004356102af81610227565b167fd9b67a26000000000000000000000000000000000000000000000000000000008114908115610317575b81156102ed575b506040519015158152f35b7f01ffc9a7000000000000000000000000000000000000000000000000000000009150145f6102e2565b7f0e89341c00000000000000000000000000000000000000000000000000000000811491506102db565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602080948051918291828752018686015e5f8582860101520116010190565b906020610395928181520190610341565b90565b3461016b576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760405190815f6002546103da816116b5565b8084529060019081811690811561049f5750600114610442575b505061040292500382610663565b8051156104315761042161042d9161041b600435611755565b90611548565b60405191829182610384565b0390f35b5061042d61043d611524565b610421565b9093915060025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace935f915b81831061048757505061040293508201015f806103f4565b8554878401850152948501948694509183019161046f565b90506104029593507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b8201015f806103f4565b3461016b5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57610515610148565b6024359073ffffffffffffffffffffffffffffffffffffffff90816005541633036105eb57600283116105c1576040519161054f83610642565b5f83528116156105915761058961058f93604435909160405192600184526020840152604083019160018352606084015260808301604052565b91611951565b005b60246040517f57f447ce0000000000000000000000000000000000000000000000000000000081525f6004820152fd5b60046040517fdfa1a408000000000000000000000000000000000000000000000000000000008152fd5b60046040517f92ed0e81000000000000000000000000000000000000000000000000000000008152fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6020810190811067ffffffffffffffff82111761065e57604052565b610615565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761065e57604052565b67ffffffffffffffff811161065e5760051b60200190565b9080601f8301121561016b5760209082356106d6816106a4565b936106e46040519586610663565b81855260208086019260051b82010192831161016b57602001905b82821061070d575050505090565b813581529083019083016106ff565b67ffffffffffffffff811161065e57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926107628261071c565b916107706040519384610663565b82948184528183011161016b578281602093845f960137010152565b9080601f8301121561016b5781602061039593359101610756565b3461016b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576107de610148565b6107e661016f565b906044359167ffffffffffffffff9081841161016b5761080b600494369086016106bc565b9060643583811161016b5761082390369087016106bc565b9260843590811161016b5761083b903690870161078c565b9373ffffffffffffffffffffffffffffffffffffffff80821690338214158061092c575b6108d9578316156108a957156108795761058f9550611b01565b6024865f604051917f01a83514000000000000000000000000000000000000000000000000000000008352820152fd5b6024875f604051917f57f447ce000000000000000000000000000000000000000000000000000000008352820152fd5b604080517fe237d92200000000000000000000000000000000000000000000000000000000815233818b0190815273ffffffffffffffffffffffffffffffffffffffff8616602082015290918291010390fd5b50815f52600160205260ff6109623360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54161561085f565b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576109a1610148565b6109a96118c3565b60055473ffffffffffffffffffffffffffffffffffffffff80831692919081168315610a7457838114610a4a576040805173ffffffffffffffffffffffffffffffffffffffff92831681529390911660208401527fffffffffffffffffffffffff0000000000000000000000000000000000000000927f42e6b4d0f422db8acba71d0435d0dd4e46fadb4a2d99683b66eded85126fb2859190a11617600555005b60046040517f2620eb3a000000000000000000000000000000000000000000000000000000008152fd5b60046040517fd92e233d000000000000000000000000000000000000000000000000000000008152fd5b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602060ff60055460a01c166040519015158152f35b9081518082526020808093019301915f5b828110610b00575050505090565b835185529381019392810192600101610af2565b906020610395928181520190610ae1565b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760043567ffffffffffffffff80821161016b573660238301121561016b578160040135610b80816106a4565b92610b8e6040519485610663565b8184526020916024602086019160051b8301019136831161016b57602401905b828210610be7578560243586811161016b5761042d91610bd5610bdb9236906004016106bc565b906115d9565b60405191829182610b14565b838091610bf384610192565b815201910190610bae565b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57610c346118c3565b5f73ffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffff00000000000000000000000000000000000000008060045416600455600354908116600355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5760045473ffffffffffffffffffffffffffffffffffffffff3381831603610d4e577fffffffffffffffffffffffff00000000000000000000000000000000000000008092166004556003549133908316176003553391167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3005b60246040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152fd5b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602073ffffffffffffffffffffffffffffffffffffffff60035416604051908152f35b3461016b576020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b5767ffffffffffffffff60043581811161016b573660238201121561016b57610e31903690602481600401359101610756565b91610e3a6118c3565b825191821161065e57610e5782610e526002546116b5565b6118e4565b602090601f8311600114610eb557508190610ea5935f92610eaa575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c19161790565b600255005b015190505f80610e73565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0831693610f0560025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace90565b925f905b868210610f5e5750508360019510610f27575b505050811b01600255005b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690555f8080610f1c565b80600185968294968601518155019501930190610f09565b60243590811515820361016b57565b60043590811515820361016b57565b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57610fcb610148565b610fd3610f76565b73ffffffffffffffffffffffffffffffffffffffff821691821561108f5761102490335f52600160205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0081541660ff831515161790557f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c316040518061108a339482919091602081019215159052565b0390a3005b60246040517fced3e1000000000000000000000000000000000000000000000000000000000081525f6004820152fd5b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602073ffffffffffffffffffffffffffffffffffffffff60045416604051908152f35b3461016b5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602060ff61119a61114e610148565b73ffffffffffffffffffffffffffffffffffffffff61116b61016f565b91165f526001845260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b54166040519015158152f35b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576111dd610f85565b6111e56118c3565b6005549015158060ff8360a01c16151514610a4a5774ff00000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff917fa410c62368e64b86d7722fd28e698d03bd00719ba95a861b50ceb65efdc6ca446020604051838152a160a01b169116176005555f80f35b3461016b5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b576112a1610148565b6112a961016f565b60843567ffffffffffffffff811161016b576112c990369060040161078c565b9073ffffffffffffffffffffffffffffffffffffffff8084169033821415806113b4575b6113675782161561059157156113375761058f9261132f6064356044359160405192600184526020840152604083019160018352606084015260808301604052565b929091611b01565b60246040517f01a835140000000000000000000000000000000000000000000000000000000081525f6004820152fd5b6040517fe237d92200000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff86166024820152604490fd5b50815f52600160205260ff6113ea3360405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5416156112ed565b3461016b5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57611429610148565b6114316118c3565b73ffffffffffffffffffffffffffffffffffffffff80911690817fffffffffffffffffffffffff00000000000000000000000000000000000000006004541617600455600354167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227005f80a3005b3461016b575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261016b57602073ffffffffffffffffffffffffffffffffffffffff60055416604051908152f35b611520915f525f60205260405f209073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b5490565b6040519061153182610642565b5f8252565b805191908290602001825e015f815290565b6115969061156a61156494936040519586936020850190611536565b90611536565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101845283610663565b565b80518210156115ac5760209160051b010190565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b9190918051835180820361167a57505080519061160e6115f8836106a4565b926116066040519485610663565b8084526106a4565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0602092013660208501375f5b8151811015611672578061166160019260051b85808287010151918a010151906114ef565b61166b8287611598565b520161163c565b509193505050565b6040517f5b05999100000000000000000000000000000000000000000000000000000000815260048101919091526024810191909152604490fd5b90600182811c921680156116fc575b60208310146116cf57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b91607f16916116c4565b906117108261071c565b61171d6040519182610663565b8281527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe061174b829461071c565b0190602036910137565b805f917a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000808210156118b5575b506d04ee2d6d415b85acef8100000000808310156118a6575b50662386f26fc1000080831015611897575b506305f5e10080831015611888575b5061271080831015611879575b506064821015611869575b600a8092101561185f575b6001908160216117ec60018701611706565b95860101905b6117fe575b5050505090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff849101917f30313233343536373839616263646566000000000000000000000000000000008282061a83530491821561185a579190826117f2565b6117f7565b91600101916117da565b91906064600291049101916117cf565b6004919392049101915f6117c4565b6008919392049101915f6117b7565b6010919392049101915f6117a8565b6020919392049101915f611796565b60409350810491505f61177d565b73ffffffffffffffffffffffffffffffffffffffff600354163303610d4e57565b601f81116118f0575050565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace906020601f840160051c83019310611947575b601f0160051c01905b81811061193c575050565b5f8155600101611931565b9091508190611928565b90805183519081810361167a5750505f5b81518110156119f3578060019160051b84602080838701015192880101519173ffffffffffffffffffffffffffffffffffffffff82166119a6575b50505001611962565b6119e9916119be6119e1925f525f60205260405f2090565b9073ffffffffffffffffffffffffffffffffffffffff165f5260205260405f2090565b918254611d4e565b90555f848161199d565b50805191939291600103611aae5760208181015183820151604080519283529282015273ffffffffffffffffffffffffffffffffffffffff8616915f9133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291a45b73ffffffffffffffffffffffffffffffffffffffff8416611a78575b50505050565b8051600103611a9f5790602080611a96959301519101519133612164565b5f808080611a72565b611aa99333611e89565b611a96565b6040515f73ffffffffffffffffffffffffffffffffffffffff8616917f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb339180611af9888883611d88565b0390a4611a56565b9473ffffffffffffffffffffffffffffffffffffffff808716958615159593949192908680611d3e575b611d1457825185519081810361167a5750505f5b8351811015611c3c578060051b9088886020808589010151948a01015191611b98575b600193888216611b76575b50505001611b3f565b611b8e916119be6119e1925f525f60205260405f2090565b90555f8881611b6d565b509091611bb08c6119be835f525f60205260405f2090565b54828110611bdf5782918d611bd7600196958d9403916119be845f525f60205260405f2090565b559350611b62565b6040517f03dee4c500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8e16600482015260248101919091526044810183905260648101829052608490fd5b509550969391909560018751145f14611cd557602087810151858201516040805192835292820152838516929133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629190a45b8116611c9e575b5050505050565b8451600103611cc457602080611cba96015192015192336121b2565b5f80808080611c97565b611cd09491923361200c565b611cba565b60405190828416917f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb339180611d0c898d83611d88565b0390a4611c90565b60046040517f3d693ada000000000000000000000000000000000000000000000000000000008152fd5b5060ff60055460a01c1615611b2b565b91908201809211611d5b57565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b9091611d9f61039593604084526040840190610ae1565b916020818403910152610ae1565b9081602091031261016b575161039581610227565b92611dfe610395959373ffffffffffffffffffffffffffffffffffffffff611e0c941686525f602087015260a0604087015260a0860190610ae1565b908482036060860152610ae1565b916080818403910152610341565b93906103959593611dfe91611e0c9473ffffffffffffffffffffffffffffffffffffffff809216885216602087015260a0604087015260a0860190610ae1565b3d15611e84573d90611e6b8261071c565b91611e796040519384610663565b82523d5f602084013e565b606090565b9293919093843b611e9b575050505050565b602091611ed760405194859384937fbc197c81000000000000000000000000000000000000000000000000000000009889865260048601611dc2565b03815f73ffffffffffffffffffffffffffffffffffffffff88165af15f9181611fdb575b50611f605782611f09611e5a565b8051919082611f59576040517f57f447ce00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83166004820152602490fd5b9050602001fd5b7fffffffff000000000000000000000000000000000000000000000000000000001603611f9257505f80808080611c97565b6040517f57f447ce00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff919091166004820152602490fd5b611ffe91925060203d602011612005575b611ff68183610663565b810190611dad565b905f611efb565b503d611fec565b939290949194853b612021575b505050505050565b61205d60209360405195869485947fbc197c8100000000000000000000000000000000000000000000000000000000998a875260048701611e1a565b03815f73ffffffffffffffffffffffffffffffffffffffff88165af15f91816120c2575b5061208f5782611f09611e5a565b7fffffffff000000000000000000000000000000000000000000000000000000001603611f9257505f8080808080612019565b6120dc91925060203d60201161200557611ff68183610663565b905f612081565b909260a09273ffffffffffffffffffffffffffffffffffffffff61039596951683525f6020840152604083015260608201528160808201520190610341565b919261039595949160a09473ffffffffffffffffffffffffffffffffffffffff8092168552166020840152604083015260608201528160808201520190610341565b9293919093843b612176575050505050565b602091611ed760405194859384937ff23a6e610000000000000000000000000000000000000000000000000000000098898652600486016120e3565b939290949194853b6121c657505050505050565b61205d60209360405195869485947ff23a6e6100000000000000000000000000000000000000000000000000000000998a87526004870161212256fea2646970667358221220b28df53e25afef3c55b99ff84763bceaa4d19c57d147ed3db8a640ecd89020e564736f6c63430008190033