4 txs
0 calls
constructor
constructor()
functions
AERODROME_FACTORY
viewfunction AERODROME_FACTORY() view returns (address)
AERODROME_ROUTER
viewfunction AERODROME_ROUTER() view returns (address)
AIRDROP_ADDRESS
viewfunction AIRDROP_ADDRESS() view returns (address)
AIRDROP_SHARE
viewfunction AIRDROP_SHARE() view returns (uint256)
ALIENBASE_FACTORY
viewfunction ALIENBASE_FACTORY() view returns (address)
ALIENBASE_QUOTER
viewfunction ALIENBASE_QUOTER() view returns (address)
ALIENBASE_ROUTER
viewfunction ALIENBASE_ROUTER() view returns (address)
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
BASE_USDC
viewfunction BASE_USDC() view returns (address)
BASE_WETH
viewfunction BASE_WETH() view returns (address)
BASESWAP_FACTORY
viewfunction BASESWAP_FACTORY() view returns (address)
BASESWAP_ROUTER
viewfunction BASESWAP_ROUTER() view returns (address)
COMMUNITY_ADDRESS
viewfunction COMMUNITY_ADDRESS() view returns (address)
COMMUNITY_SHARE
viewfunction COMMUNITY_SHARE() view returns (uint256)
decimals
viewfunction decimals() view returns (uint8)
description
viewfunction description() view returns (string)
DEVELOPER_ADDRESS
viewfunction DEVELOPER_ADDRESS() view returns (address)
DEVELOPER_SHARE
viewfunction DEVELOPER_SHARE() view returns (uint256)
isExcludedFromTax
viewfunction isExcludedFromTax(address) view returns (bool)
isLiquidityPool
viewfunction isLiquidityPool(address) view returns (bool)
isUniswapV4Pool
viewfunction isUniswapV4Pool(address) view returns (bool)
logo
viewfunction logo() view returns (string)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
symbol
viewfunction symbol() view returns (string)
TAX_RATE
viewfunction TAX_RATE() view returns (uint256)
telegram
viewfunction telegram() view returns (string)
TOTAL_SUPPLY
viewfunction TOTAL_SUPPLY() view returns (uint256)
totalSupply
viewfunction totalSupply() view returns (uint256)
TREASURY_ADDRESS
viewfunction TREASURY_ADDRESS() view returns (address)
TREASURY_SHARE
viewfunction TREASURY_SHARE() view returns (uint256)
function twitter() view returns (string)
UNISWAP_V3_FACTORY_BASE
viewfunction UNISWAP_V3_FACTORY_BASE() view returns (address)
UNISWAP_V3_ROUTER_BASE
viewfunction UNISWAP_V3_ROUTER_BASE() view returns (address)
UNISWAP_V4_PERMIT2
viewfunction UNISWAP_V4_PERMIT2() view returns (address)
UNISWAP_V4_ROUTER
viewfunction UNISWAP_V4_ROUTER() view returns (address)
UNISWAP_V4_SINGLETON_FACTORY
viewfunction UNISWAP_V4_SINGLETON_FACTORY() view returns (address)
website
viewfunction website() view returns (string)
addAerodromeLiquidityPool
nonpayablefunction addAerodromeLiquidityPool(address tokenB, bool stable)
addAlienBasePool
nonpayablefunction addAlienBasePool(address tokenB, uint24 fee)
addBaseSwapLiquidityPool
nonpayablefunction addBaseSwapLiquidityPool(address tokenB)
addLiquidityPoolToExcluded
nonpayablefunction addLiquidityPoolToExcluded(address lpAddress)
addUniswapV4Pool
nonpayablefunction addUniswapV4Pool(address poolAddress)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
batchAddLiquidityPoolsToExcluded
nonpayablefunction batchAddLiquidityPoolsToExcluded(address[] lpAddresses)
batchAddUniswapV4Pools
nonpayablefunction batchAddUniswapV4Pools(address[] poolAddresses)
excludeFromTax
nonpayablefunction excludeFromTax(address account)
transfer
nonpayablefunction transfer(address to, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 amount) returns (bool)
updateDescription
nonpayablefunction updateDescription(string _description)
updateLogo
nonpayablefunction updateLogo(string _logo)
updateProjectInfo
nonpayablefunction updateProjectInfo(string _logo, string _website, string _twitter, string _telegram, string _description)
updateTelegram
nonpayablefunction updateTelegram(string _telegram)
updateTwitter
nonpayablefunction updateTwitter(string _twitter)
updateWebsite
nonpayablefunction updateWebsite(string _website)
events
AddressExcludedFromTax
event AddressExcludedFromTax(address indexed excludedAddress)
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
DescriptionUpdated
event DescriptionUpdated(string newDescription)
LiquidityPoolAdded
event LiquidityPoolAdded(address indexed lpAddress)
LogoUpdated
event LogoUpdated(string newLogo)
TaxCollected
event TaxCollected(address indexed from, address indexed to, uint256 taxAmount)
TelegramUpdated
event TelegramUpdated(string newTelegram)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
TwitterUpdated
event TwitterUpdated(string newTwitter)
UniswapV4PoolAdded
event UniswapV4PoolAdded(address indexed poolAddress)
WebsiteUpdated
event WebsiteUpdated(string newWebsite)
errors
No errors.
creation bytecode
0x608060405234801562000010575f80fd5b506040518060400160405280600481526020017f4149434c000000000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4149434c0000000000000000000000000000000000000000000000000000000081525081600390816200008e919062000bd2565b508060049081620000a0919062000bd2565b50505033600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060600160405280602d81526020016200628c602d9139600590816200010d919062000bd2565b506040518060400160405280601d81526020017f68747470733a2f2f7777772e616963727970746f6c6162732e78797a2f0000008152506006908162000154919062000bd2565b506040518060400160405280601b81526020017f68747470733a2f2f782e636f6d2f616963727970746f5f323032350000000000815250600790816200019b919062000bd2565b506040518060400160405280601a81526020017f68747470733a2f2f742e6d652f61695f63727970746f3230323500000000000081525060089081620001e2919062000bd2565b50604051806103600160405280610327815260200162005f6561032791396009908162000210919062000bd2565b506b033b2e3c9fd0803ce8000000606460146b033b2e3c9fd0803ce80000006200023b919062000ce3565b62000247919062000d5a565b6064600f6b033b2e3c9fd0803ce800000062000264919062000ce3565b62000270919062000d5a565b606460196b033b2e3c9fd0803ce80000006200028d919062000ce3565b62000299919062000d5a565b606460286b033b2e3c9fd0803ce8000000620002b6919062000ce3565b620002c2919062000d5a565b620002ce919062000d91565b620002da919062000d91565b620002e6919062000d91565b1462000329576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003209062000e4f565b60405180910390fd5b620003777397853e9d10d720c9cd7beea35da8c36b9cfd91c8606460286b033b2e3c9fd0803ce80000006200035f919062000ce3565b6200036b919062000d5a565b620007ff60201b60201c565b620003c573f08d3b58261297891883a10c0b7695ad6a105813606460196b033b2e3c9fd0803ce8000000620003ad919062000ce3565b620003b9919062000d5a565b620007ff60201b60201c565b6200041373ca20831baba91c4a1c1c85aa18ac9df63c5079a36064600f6b033b2e3c9fd0803ce8000000620003fb919062000ce3565b62000407919062000d5a565b620007ff60201b60201c565b620004617376f6304218d47263c8975bf7a06cc66f69844a56606460146b033b2e3c9fd0803ce800000062000449919062000ce3565b62000455919062000d5a565b620007ff60201b60201c565b6001600b5f73f08d3b58261297891883a10c0b7695ad6a10581373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f732626664c2603336e57b271c5c0b26f421741e48173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f7393c31f18c5107812cc4f36bbb89865a9546a098373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f6e22d473030f116ddee9f6b43ac78ba373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f73327df1e6de05895d2ab08513aadd9313fe505d2d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f73cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f73e592427a0aece92de3edee1f18e0157c0586156473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600b5f733d4e44eb1374240ce5f1b871ab261cd16335b76a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555062000f09565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000870576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008679062000ebd565b60405180910390fd5b620008835f83836200096460201b60201c565b8060025f82825462000896919062000d91565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000945919062000eee565b60405180910390a3620009605f83836200096960201b60201c565b5050565b505050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620009ea57607f821691505b60208210810362000a0057620009ff620009a5565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830262000a647fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000a27565b62000a70868362000a27565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f62000aba62000ab462000aae8462000a88565b62000a91565b62000a88565b9050919050565b5f819050919050565b62000ad58362000a9a565b62000aed62000ae48262000ac1565b84845462000a33565b825550505050565b5f90565b62000b0362000af5565b62000b1081848462000aca565b505050565b5b8181101562000b375762000b2b5f8262000af9565b60018101905062000b16565b5050565b601f82111562000b865762000b508162000a06565b62000b5b8462000a18565b8101602085101562000b6b578190505b62000b8362000b7a8562000a18565b83018262000b15565b50505b505050565b5f82821c905092915050565b5f62000ba85f198460080262000b8b565b1980831691505092915050565b5f62000bc2838362000b97565b9150826002028217905092915050565b62000bdd826200096e565b67ffffffffffffffff81111562000bf95762000bf862000978565b5b62000c058254620009d2565b62000c1282828562000b3b565b5f60209050601f83116001811462000c48575f841562000c33578287015190505b62000c3f858262000bb5565b86555062000cae565b601f19841662000c588662000a06565b5f5b8281101562000c815784890151825560018201915060208501945060208101905062000c5a565b8683101562000ca1578489015162000c9d601f89168262000b97565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f62000cef8262000a88565b915062000cfc8362000a88565b925082820262000d0c8162000a88565b9150828204841483151762000d265762000d2562000cb6565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f62000d668262000a88565b915062000d738362000a88565b92508262000d865762000d8562000d2d565b5b828204905092915050565b5f62000d9d8262000a88565b915062000daa8362000a88565b925082820190508082111562000dc55762000dc462000cb6565b5b92915050565b5f82825260208201905092915050565b7f446973747269627574696f6e2073686172657320646f206e6f7420657175616c5f8201527f20746f74616c20737570706c7900000000000000000000000000000000000000602082015250565b5f62000e37602d8362000dcb565b915062000e448262000ddb565b604082019050919050565b5f6020820190508181035f83015262000e688162000e29565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f62000ea5601f8362000dcb565b915062000eb28262000e6f565b602082019050919050565b5f6020820190508181035f83015262000ed68162000e97565b9050919050565b62000ee88162000a88565b82525050565b5f60208201905062000f035f83018462000edd565b92915050565b61504e8062000f175f395ff3fe608060405234801561000f575f80fd5b5060043610610376575f3560e01c80638da5cb5b116101d1578063cbcbf1fe11610102578063dd62ed3e116100a0578063e735b48a1161007a578063e735b48a146109f8578063e85455d714610a14578063f1b54ff914610a44578063fb7f21eb14610a6057610376565b8063dd62ed3e1461098e578063df3f25b4146109be578063e6c7e52a146109da57610376565b8063d3f189bd116100dc578063d3f189bd1461091a578063d3f6466414610938578063d538ae7114610954578063db37bab41461097057610376565b8063cbcbf1fe146108b0578063cc1977e5146108e0578063ce96ccee146108fe57610376565b8063b07e42971161016f578063beb0a41611610149578063beb0a41614610826578063c5cfbd2314610844578063c623c54314610862578063cb4ca6311461088057610376565b8063b07e4297146107ce578063b26772f4146107ec578063bb9df6801461080857610376565b806397e970b4116101ab57806397e970b4146107445780639f174c6f14610762578063a9059cbb14610780578063abfaeee0146107b057610376565b80638da5cb5b146106ea578063902d55a51461070857806395d89b411461072657610376565b80633a2c6904116102ab5780635c31bda91161024957806369b1e3641161022357806369b1e3641461066257806370a082311461067e5780637284e416146106ae57806383f170be146106cc57610376565b80635c31bda91461060c57806360d1259e1461062a578063674758591461064657610376565b806347ecb6651161028557806347ecb665146105965780634c56e581146105b45780634cef1f35146105d25780635a6ea8a4146105f057610376565b80633a2c69041461053c5780633c17760a1461055a578063454e66c81461057857610376565b806315cb51ce116103185780632edb5a1f116102f25780632edb5a1f146104c6578063313ce567146104e2578063326961741461050057806335d8e1941461051e57610376565b806315cb51ce1461045a57806318160ddd1461047857806323b872dd1461049657610376565b8063095ea7b311610354578063095ea7b3146103d45780630b045c67146104045780630b3dec231461042257806312f9d14d1461043e57610376565b806302b043841461037a57806306fdde031461039857806307604b1a146103b6575b5f80fd5b610382610a7e565b60405161038f9190613ce6565b60405180910390f35b6103a0610a96565b6040516103ad9190613d89565b60405180910390f35b6103be610b26565b6040516103cb9190613ce6565b60405180910390f35b6103ee60048036038101906103e99190613e17565b610b3e565b6040516103fb9190613e6f565b60405180910390f35b61040c610b54565b6040516104199190613e97565b60405180910390f35b61043c60048036038101906104379190613f11565b610b7c565b005b61045860048036038101906104539190614084565b610ded565b005b610462610ec6565b60405161046f9190613ce6565b60405180910390f35b610480610ede565b60405161048d9190613e97565b60405180910390f35b6104b060048036038101906104ab91906140cb565b610ee7565b6040516104bd9190613e6f565b60405180910390f35b6104e060048036038101906104db9190613f11565b610f09565b005b6104ea611260565b6040516104f79190614136565b60405180910390f35b610508611268565b6040516105159190613e97565b60405180910390f35b610526611290565b6040516105339190613ce6565b60405180910390f35b6105446112a8565b6040516105519190613ce6565b60405180910390f35b6105626112c0565b60405161056f9190613ce6565b60405180910390f35b6105806112d8565b60405161058d9190613ce6565b60405180910390f35b61059e6112f0565b6040516105ab9190613d89565b60405180910390f35b6105bc61137c565b6040516105c99190613ce6565b60405180910390f35b6105da611394565b6040516105e79190613ce6565b60405180910390f35b61060a6004803603810190610605919061414f565b6113a7565b005b610614611594565b6040516106219190613ce6565b60405180910390f35b610644600480360381019061063f919061414f565b6115ac565b005b610660600480360381019061065b9190614084565b611744565b005b61067c600480360381019061067791906141a4565b61181d565b005b6106986004803603810190610693919061414f565b6119ac565b6040516106a59190613e97565b60405180910390f35b6106b66119f1565b6040516106c39190613d89565b60405180910390f35b6106d4611a7d565b6040516106e19190613e97565b60405180910390f35b6106f2611a82565b6040516106ff9190613ce6565b60405180910390f35b610710611aa7565b60405161071d9190613e97565b60405180910390f35b61072e611ab7565b60405161073b9190613d89565b60405180910390f35b61074c611b47565b6040516107599190613ce6565b60405180910390f35b61076a611b5f565b6040516107779190613e97565b60405180910390f35b61079a60048036038101906107959190613e17565b611b87565b6040516107a79190613e6f565b60405180910390f35b6107b8611b9d565b6040516107c59190613d89565b60405180910390f35b6107d6611c29565b6040516107e39190613ce6565b60405180910390f35b6108066004803603810190610801919061414f565b611c41565b005b610810611de3565b60405161081d9190613ce6565b60405180910390f35b61082e611dfb565b60405161083b9190613d89565b60405180910390f35b61084c611e87565b6040516108599190613ce6565b60405180910390f35b61086a611e9f565b6040516108779190613e97565b60405180910390f35b61089a6004803603810190610895919061414f565b611ec7565b6040516108a79190613e6f565b60405180910390f35b6108ca60048036038101906108c5919061414f565b611ee4565b6040516108d79190613e6f565b60405180910390f35b6108e8611f01565b6040516108f59190613ce6565b60405180910390f35b6109186004803603810190610913919061414f565b611f19565b005b61092261219e565b60405161092f9190613ce6565b60405180910390f35b610952600480360381019061094d9190614084565b6121b6565b005b61096e6004803603810190610969919061421a565b61228f565b005b61097861241e565b6040516109859190613ce6565b60405180910390f35b6109a860048036038101906109a39190614258565b612436565b6040516109b59190613e97565b60405180910390f35b6109d860048036038101906109d39190614296565b6124b8565b005b6109e26126e3565b6040516109ef9190613ce6565b60405180910390f35b610a126004803603810190610a0d9190614084565b6126fb565b005b610a2e6004803603810190610a29919061414f565b6127d4565b604051610a3b9190613e6f565b60405180910390f35b610a5e6004803603810190610a599190614084565b6127f1565b005b610a686128ca565b604051610a759190613d89565b60405180910390f35b7397853e9d10d720c9cd7beea35da8c36b9cfd91c881565b606060038054610aa5906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610ad1906143c6565b8015610b1c5780601f10610af357610100808354040283529160200191610b1c565b820191905f5260205f20905b815481529060010190602001808311610aff57829003601f168201915b5050505050905090565b73f08d3b58261297891883a10c0b7695ad6a10581381565b5f610b4a338484612956565b6001905092915050565b606460146b033b2e3c9fd0803ce8000000610b6f9190614423565b610b799190614491565b81565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c029061450b565b60405180910390fd5b5f5b82829050811015610de8575f73ffffffffffffffffffffffffffffffffffffffff16838383818110610c4257610c41614529565b5b9050602002016020810190610c57919061414f565b73ffffffffffffffffffffffffffffffffffffffff1614610dd5576001600b5f858585818110610c8a57610c89614529565b5b9050602002016020810190610c9f919061414f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f858585818110610d0657610d05614529565b5b9050602002016020810190610d1b919061414f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550828282818110610d7d57610d7c614529565b5b9050602002016020810190610d92919061414f565b73ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a25b8080610de090614556565b915050610c0d565b505050565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e739061450b565b60405180910390fd5b8060059081610e8b919061473a565b507fc778f70d50b8182c1a6ee1b11efa714a627c4aa1a04d69a579e6ce27ba3b32eb81604051610ebb9190613d89565b60405180910390a150565b73420dd381b31aef6683db6b902084cb0ffece40da81565b5f600254905090565b5f610ef3843384612b19565b610efe848484612ba4565b600190509392505050565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8f9061450b565b60405180910390fd5b5f5b8282905081101561125b575f73ffffffffffffffffffffffffffffffffffffffff16838383818110610fcf57610fce614529565b5b9050602002016020810190610fe4919061414f565b73ffffffffffffffffffffffffffffffffffffffff1614611248576001600b5f85858581811061101757611016614529565b5b905060200201602081019061102c919061414f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f85858581811061109357611092614529565b5b90506020020160208101906110a8919061414f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600d5f85858581811061110f5761110e614529565b5b9050602002016020810190611124919061414f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555082828281811061118657611185614529565b5b905060200201602081019061119b919061414f565b73ffffffffffffffffffffffffffffffffffffffff167f6b1804eb358623653e5f5ea5af77d4f58be15fc0487dbbe3ee45dd43e122abbf60405160405180910390a28282828181106111f0576111ef614529565b5b9050602002016020810190611205919061414f565b73ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a25b808061125390614556565b915050610f9a565b505050565b5f6012905090565b606460196b033b2e3c9fd0803ce80000006112839190614423565b61128d9190614491565b81565b73327df1e6de05895d2ab08513aadd9313fe505d2d81565b733e84e1e7a4edfcb279f3428dcea08eeb2ec0fe8a81565b7333128a8fc17869897dce68ed026d694621f6fdfd81565b73ca20831baba91c4a1c1c85aa18ac9df63c5079a381565b600880546112fd906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054611329906143c6565b80156113745780601f1061134b57610100808354040283529160200191611374565b820191905f5260205f20905b81548152906001019060200180831161135757829003601f168201915b505050505081565b73e592427a0aece92de3edee1f18e0157c0586156481565b6e22d473030f116ddee9f6b43ac78ba381565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142d9061450b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036114a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149b90614853565b60405180910390fd5b6001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a250565b7393c31f18c5107812cc4f36bbb89865a9546a098381565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461163b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116329061450b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036116a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a090614853565b60405180910390fd5b6001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fd5a202470ebb4b485ca6357b5e5c3c8ec646f96c8b825a96cb95569c363ceb9e60405160405180910390a250565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146117d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117ca9061450b565b60405180910390fd5b80600790816117e2919061473a565b507fc9c367329a7bcca9b5a2955d46e46ee01873c0d0edab0e709ba952fafc6b48e4816040516118129190613d89565b60405180910390a150565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146118ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a39061450b565b60405180910390fd5b5f6118b8308484612e06565b90506001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a2505050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b600980546119fe906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054611a2a906143c6565b8015611a755780601f10611a4c57610100808354040283529160200191611a75565b820191905f5260205f20905b815481529060010190602001808311611a5857829003601f168201915b505050505081565b600581565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6b033b2e3c9fd0803ce800000081565b606060048054611ac6906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054611af2906143c6565b8015611b3d5780601f10611b1457610100808354040283529160200191611b3d565b820191905f5260205f20905b815481529060010190602001808311611b2057829003601f168201915b5050505050905090565b73fda619b6d20975be80a10332cd39b9a4b0faa8bb81565b606460286b033b2e3c9fd0803ce8000000611b7a9190614423565b611b849190614491565b81565b5f611b93338484612ba4565b6001905092915050565b60078054611baa906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054611bd6906143c6565b8015611c215780601f10611bf857610100808354040283529160200191611c21565b820191905f5260205f20905b815481529060010190602001808311611c0457829003601f168201915b505050505081565b73420000000000000000000000000000000000000681565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611cd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cc79061450b565b60405180910390fd5b5f611cf073fda619b6d20975be80a10332cd39b9a4b0faa8bb3084612ec3565b90506001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a25050565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291381565b60068054611e08906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054611e34906143c6565b8015611e7f5780601f10611e5657610100808354040283529160200191611e7f565b820191905f5260205f20905b815481529060010190602001808311611e6257829003601f168201915b505050505081565b733d4e44eb1374240ce5f1b871ab261cd16335b76a81565b6064600f6b033b2e3c9fd0803ce8000000611eba9190614423565b611ec49190614491565b81565b600b602052805f5260405f205f915054906101000a900460ff1681565b600d602052805f5260405f205f915054906101000a900460ff1681565b732626664c2603336e57b271c5c0b26f421741e48181565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611fa8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9f9061450b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612016576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200d906148bb565b60405180910390fd5b6001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600d5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167f6b1804eb358623653e5f5ea5af77d4f58be15fc0487dbbe3ee45dd43e122abbf60405160405180910390a28073ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a250565b7376f6304218d47263c8975bf7a06cc66f69844a5681565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612245576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223c9061450b565b60405180910390fd5b8060089081612254919061473a565b507f91221fdc02a4fce3ae5eaa1f65bf3a6d0922abee8f14c56c21bafa0f76db0857816040516122849190613d89565b60405180910390a150565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461231e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123159061450b565b60405180910390fd5b5f61232a308484612f6a565b90506001600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508073ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a2505050565b73cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4381565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612547576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253e9061450b565b60405180910390fd5b5f8551111561259857846005908161255f919061473a565b507fc778f70d50b8182c1a6ee1b11efa714a627c4aa1a04d69a579e6ce27ba3b32eb8560405161258f9190613d89565b60405180910390a15b5f845111156125e95783600690816125b0919061473a565b507f516821af5d7fcea859a491c9cc2e615fe27fc4fde3fc6cce1d31f6f06cbdef08846040516125e09190613d89565b60405180910390a15b5f8351111561263a578260079081612601919061473a565b507fc9c367329a7bcca9b5a2955d46e46ee01873c0d0edab0e709ba952fafc6b48e4836040516126319190613d89565b60405180910390a15b5f8251111561268b578160089081612652919061473a565b507f91221fdc02a4fce3ae5eaa1f65bf3a6d0922abee8f14c56c21bafa0f76db0857826040516126829190613d89565b60405180910390a15b5f815111156126dc5780600990816126a3919061473a565b507fdbdc84bdf4319ffa157f81d25dd54211090e37ca6a9d0b90e2b8098aaceed135816040516126d39190613d89565b60405180910390a15b5050505050565b738bbe1d801acf1cf4c3e36c2b5e32250637759cc181565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461278a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127819061450b565b60405180910390fd5b8060099081612799919061473a565b507fdbdc84bdf4319ffa157f81d25dd54211090e37ca6a9d0b90e2b8098aaceed135816040516127c99190613d89565b60405180910390a150565b600c602052805f5260405f205f915054906101000a900460ff1681565b600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612880576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128779061450b565b60405180910390fd5b806006908161288f919061473a565b507f516821af5d7fcea859a491c9cc2e615fe27fc4fde3fc6cce1d31f6f06cbdef08816040516128bf9190613d89565b60405180910390a150565b600580546128d7906143c6565b80601f0160208091040260200160405190810160405280929190818152602001828054612903906143c6565b801561294e5780601f106129255761010080835404028352916020019161294e565b820191905f5260205f20905b81548152906001019060200180831161293157829003601f168201915b505050505081565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036129c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129bb90614949565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612a32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a29906149d7565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612b0c9190613e97565b60405180910390a3505050565b5f612b248484612436565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114612b9e5781811015612b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b8790614a3f565b60405180910390fd5b612b9d8484848403612956565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612c12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c0990614acd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612c80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7790614b5b565b60405180910390fd5b612c8a8383613021565b600b5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612d255750600b5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b15612d3a57612d35838383613317565b612e01565b5f6103e8600583612d4b9190614423565b612d559190614491565b90505f8183612d649190614b79565b90505f821115612df357612d8d8573f08d3b58261297891883a10c0b7695ad6a10581384613317565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f5d37fd68fe66745a199f8c603e00ae02183f4aabb8ec0089589b0b40c4ead5e184604051612dea9190613e97565b60405180910390a35b612dfe858583613317565b50505b505050565b5f805f8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1610612e43578486612e46565b85855b915091505f828286604051602001612e6093929190614c36565b60405160208183030381529060405280519060200120905073420dd381b31aef6683db6b902084cb0ffece40da81604051602001612e9f929190614d39565b604051602081830303815290604052805190602001205f1c93505050509392505050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1610612f00578385612f03565b84845b915091505f8282604051602001612f1b929190614d7a565b6040516020818303038152906040528051906020012090508681604051602001612f46929190614def565b604051602081830303815290604052805190602001205f1c93505050509392505050565b5f8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161115612faa57828480945081955050505b5f848484604051602001612fc093929190614e3f565b604051602081830303815290604052805190602001209050733e84e1e7a4edfcb279f3428dcea08eeb2ec0fe8a81604051602001612fff929190614ebe565b604051602081830303815290604052805190602001205f1c9150509392505050565b600c5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16806130bc5750600c5f8273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b613313575f80823b91505f8211156130d6578290506130f2565b833b91505f8211156130ea578390506130f1565b5050613313565b5b5f6130fc82613583565b90505f6131088361374b565b90505f61311484613826565b90505f6131208561382c565b90505f61312c86613999565b90505f61313887613a3f565b90505f61314488613bb7565b9050868061314f5750855b806131575750845b8061315f5750835b806131675750825b8061316f5750815b806131775750805b15613309576001600b5f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600c5f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555082156132c5576001600d5f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508773ffffffffffffffffffffffffffffffffffffffff167f6b1804eb358623653e5f5ea5af77d4f58be15fc0487dbbe3ee45dd43e122abbf60405160405180910390a25b8773ffffffffffffffffffffffffffffffffffffffff167fb893f883ef734b712208a877459424ee509832c57e0461fb1ac99ed4d42f2d8960405160405180910390a25b5050505050505050505b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613385576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161337c90614acd565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036133f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133ea90614b5b565b60405180910390fd5b6133fe838383613be6565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015613481576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161347890614f6f565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161356a9190613e97565b60405180910390a361357d848484613beb565b50505050565b5f806135a6307342000000000000000000000000000000000000066101f4613bf0565b90505f6135ca30734200000000000000000000000000000000000006610bb8613bf0565b90505f6135ee30734200000000000000000000000000000000000006612710613bf0565b90505f6136123073833589fcd6edb6e08f4c7c32d4f71b54bda029136101f4613bf0565b90505f6136363073833589fcd6edb6e08f4c7c32d4f71b54bda02913610bb8613bf0565b90508473ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16148061369d57508373ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16145b806136d357508273ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16145b8061370957508173ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16145b8061373f57508073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff16145b95505050505050919050565b5f8061378073fda619b6d20975be80a10332cd39b9a4b0faa8bb30734200000000000000000000000000000000000006612ec3565b90505f6137b673fda619b6d20975be80a10332cd39b9a4b0faa8bb3073833589fcd6edb6e08f4c7c32d4f71b54bda02913612ec3565b90508173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061381d57508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b92505050919050565b5f919050565b5f8061384f30734200000000000000000000000000000000000006610bb8612f6a565b90505f61387330734200000000000000000000000000000000000006612710612f6a565b90505f6138973073833589fcd6edb6e08f4c7c32d4f71b54bda029136101f4612f6a565b90505f6138bb3073833589fcd6edb6e08f4c7c32d4f71b54bda02913610bb8612f6a565b90508373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16148061392257508273ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b8061395857508173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b8061398e57508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b945050505050919050565b5f7393c31f18c5107812cc4f36bbb89865a9546a098373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036139ea5760019050613a3a565b5f823b905061138881118015613a365750613a0483613583565b80613a145750613a138361374b565b5b80613a245750613a2383613826565b5b80613a345750613a338361382c565b5b155b9150505b919050565b5f80732626664c2603336e57b271c5c0b26f421741e48173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480613ace57507393c31f18c5107812cc4f36bbb89865a9546a098373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b80613b18575073327df1e6de05895d2ab08513aadd9313fe505d2d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b80613b62575073cf77a3ba9a5ca399b7c97c74d54e5b1beb874e4373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b80613bac575073e592427a0aece92de3edee1f18e0157c0586156473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b905080915050919050565b5f80823b90505f6103e882118015613bd0575061271082105b90505f8180613bdc5750805b9350505050919050565b505050565b505050565b5f8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161115613c3057828480945081955050505b5f848484604051602001613c4693929190614e3f565b6040516020818303038152906040528051906020012090507333128a8fc17869897dce68ed026d694621f6fdfd81604051602001613c85929190614fd7565b604051602081830303815290604052805190602001205f1c9150509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f613cd082613ca7565b9050919050565b613ce081613cc6565b82525050565b5f602082019050613cf95f830184613cd7565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015613d36578082015181840152602081019050613d1b565b5f8484015250505050565b5f601f19601f8301169050919050565b5f613d5b82613cff565b613d658185613d09565b9350613d75818560208601613d19565b613d7e81613d41565b840191505092915050565b5f6020820190508181035f830152613da18184613d51565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b613dc381613cc6565b8114613dcd575f80fd5b50565b5f81359050613dde81613dba565b92915050565b5f819050919050565b613df681613de4565b8114613e00575f80fd5b50565b5f81359050613e1181613ded565b92915050565b5f8060408385031215613e2d57613e2c613db2565b5b5f613e3a85828601613dd0565b9250506020613e4b85828601613e03565b9150509250929050565b5f8115159050919050565b613e6981613e55565b82525050565b5f602082019050613e825f830184613e60565b92915050565b613e9181613de4565b82525050565b5f602082019050613eaa5f830184613e88565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112613ed157613ed0613eb0565b5b8235905067ffffffffffffffff811115613eee57613eed613eb4565b5b602083019150836020820283011115613f0a57613f09613eb8565b5b9250929050565b5f8060208385031215613f2757613f26613db2565b5b5f83013567ffffffffffffffff811115613f4457613f43613db6565b5b613f5085828601613ebc565b92509250509250929050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b613f9682613d41565b810181811067ffffffffffffffff82111715613fb557613fb4613f60565b5b80604052505050565b5f613fc7613da9565b9050613fd38282613f8d565b919050565b5f67ffffffffffffffff821115613ff257613ff1613f60565b5b613ffb82613d41565b9050602081019050919050565b828183375f83830152505050565b5f61402861402384613fd8565b613fbe565b90508281526020810184848401111561404457614043613f5c565b5b61404f848285614008565b509392505050565b5f82601f83011261406b5761406a613eb0565b5b813561407b848260208601614016565b91505092915050565b5f6020828403121561409957614098613db2565b5b5f82013567ffffffffffffffff8111156140b6576140b5613db6565b5b6140c284828501614057565b91505092915050565b5f805f606084860312156140e2576140e1613db2565b5b5f6140ef86828701613dd0565b935050602061410086828701613dd0565b925050604061411186828701613e03565b9150509250925092565b5f60ff82169050919050565b6141308161411b565b82525050565b5f6020820190506141495f830184614127565b92915050565b5f6020828403121561416457614163613db2565b5b5f61417184828501613dd0565b91505092915050565b61418381613e55565b811461418d575f80fd5b50565b5f8135905061419e8161417a565b92915050565b5f80604083850312156141ba576141b9613db2565b5b5f6141c785828601613dd0565b92505060206141d885828601614190565b9150509250929050565b5f62ffffff82169050919050565b6141f9816141e2565b8114614203575f80fd5b50565b5f81359050614214816141f0565b92915050565b5f80604083850312156142305761422f613db2565b5b5f61423d85828601613dd0565b925050602061424e85828601614206565b9150509250929050565b5f806040838503121561426e5761426d613db2565b5b5f61427b85828601613dd0565b925050602061428c85828601613dd0565b9150509250929050565b5f805f805f60a086880312156142af576142ae613db2565b5b5f86013567ffffffffffffffff8111156142cc576142cb613db6565b5b6142d888828901614057565b955050602086013567ffffffffffffffff8111156142f9576142f8613db6565b5b61430588828901614057565b945050604086013567ffffffffffffffff81111561432657614325613db6565b5b61433288828901614057565b935050606086013567ffffffffffffffff81111561435357614352613db6565b5b61435f88828901614057565b925050608086013567ffffffffffffffff8111156143805761437f613db6565b5b61438c88828901614057565b9150509295509295909350565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806143dd57607f821691505b6020821081036143f0576143ef614399565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61442d82613de4565b915061443883613de4565b925082820261444681613de4565b9150828204841483151761445d5761445c6143f6565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61449b82613de4565b91506144a683613de4565b9250826144b6576144b5614464565b5b828204905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6144f5602083613d09565b9150614500826144c1565b602082019050919050565b5f6020820190508181035f830152614522816144e9565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61456082613de4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614592576145916143f6565b5b600182019050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026145f97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826145be565b61460386836145be565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61463e61463961463484613de4565b61461b565b613de4565b9050919050565b5f819050919050565b61465783614624565b61466b61466382614645565b8484546145ca565b825550505050565b5f90565b61467f614673565b61468a81848461464e565b505050565b5b818110156146ad576146a25f82614677565b600181019050614690565b5050565b601f8211156146f2576146c38161459d565b6146cc846145af565b810160208510156146db578190505b6146ef6146e7856145af565b83018261468f565b50505b505050565b5f82821c905092915050565b5f6147125f19846008026146f7565b1980831691505092915050565b5f61472a8383614703565b9150826002028217905092915050565b61474382613cff565b67ffffffffffffffff81111561475c5761475b613f60565b5b61476682546143c6565b6147718282856146b1565b5f60209050601f8311600181146147a2575f8415614790578287015190505b61479a858261471f565b865550614801565b601f1984166147b08661459d565b5f5b828110156147d7578489015182556001820191506020850194506020810190506147b2565b868310156147f457848901516147f0601f891682614703565b8355505b6001600288020188555050505b505050505050565b7f496e76616c6964206164647265737300000000000000000000000000000000005f82015250565b5f61483d600f83613d09565b915061484882614809565b602082019050919050565b5f6020820190508181035f83015261486a81614831565b9050919050565b7f496e76616c696420706f6f6c20616464726573730000000000000000000000005f82015250565b5f6148a5601483613d09565b91506148b082614871565b602082019050919050565b5f6020820190508181035f8301526148d281614899565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f614933602483613d09565b915061493e826148d9565b604082019050919050565b5f6020820190508181035f83015261496081614927565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6149c1602283613d09565b91506149cc82614967565b604082019050919050565b5f6020820190508181035f8301526149ee816149b5565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f614a29601d83613d09565b9150614a34826149f5565b602082019050919050565b5f6020820190508181035f830152614a5681614a1d565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f614ab7602583613d09565b9150614ac282614a5d565b604082019050919050565b5f6020820190508181035f830152614ae481614aab565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f614b45602383613d09565b9150614b5082614aeb565b604082019050919050565b5f6020820190508181035f830152614b7281614b39565b9050919050565b5f614b8382613de4565b9150614b8e83613de4565b9250828203905081811115614ba657614ba56143f6565b5b92915050565b5f8160601b9050919050565b5f614bc282614bac565b9050919050565b5f614bd382614bb8565b9050919050565b614beb614be682613cc6565b614bc9565b82525050565b5f8160f81b9050919050565b5f614c0782614bf1565b9050919050565b5f614c1882614bfd565b9050919050565b614c30614c2b82613e55565b614c0e565b82525050565b5f614c418286614bda565b601482019150614c518285614bda565b601482019150614c618284614c1f565b600182019150819050949350505050565b5f81905092915050565b7fff000000000000000000000000000000000000000000000000000000000000005f82015250565b5f614cb0600183614c72565b9150614cbb82614c7c565b600182019050919050565b5f819050919050565b5f819050919050565b614ce9614ce482614cc6565b614ccf565b82525050565b7f175afd22b2511a0c01126906e64347b663878b5b3e296ea8e48f79b8a33a70015f82015250565b5f614d23602083614c72565b9150614d2e82614cef565b602082019050919050565b5f614d4382614ca4565b9150614d4f8285614bda565b601482019150614d5f8284614cd8565b602082019150614d6e82614d17565b91508190509392505050565b5f614d858285614bda565b601482019150614d958284614bda565b6014820191508190509392505050565b7fe2e87433120e32c4738a7d8f3271f3d872cbe16241d67537139158d90bac61d35f82015250565b5f614dd9602083614c72565b9150614de482614da5565b602082019050919050565b5f614df982614ca4565b9150614e058285614bda565b601482019150614e158284614cd8565b602082019150614e2482614dcd565b91508190509392505050565b614e39816141e2565b82525050565b5f606082019050614e525f830186613cd7565b614e5f6020830185613cd7565b614e6c6040830184614e30565b949350505050565b7f1c5a6be5dad8f0eb9a3e434bad3eb519838da007264d019aa6e149c9cccae3ce5f82015250565b5f614ea8602083614c72565b9150614eb382614e74565b602082019050919050565b5f614ec882614ca4565b9150614ed48285614bda565b601482019150614ee48284614cd8565b602082019150614ef382614e9c565b91508190509392505050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f614f59602683613d09565b9150614f6482614eff565b604082019050919050565b5f6020820190508181035f830152614f8681614f4d565b9050919050565b7fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b545f82015250565b5f614fc1602083614c72565b9150614fcc82614f8d565b602082019050919050565b5f614fe182614ca4565b9150614fed8285614bda565b601482019150614ffd8284614cd8565b60208201915061500c82614fb5565b9150819050939250505056fea2646970667358221220c6d31b16addb56cdeca47340da2f0668a8090780851b50464dd38d7b8a42dcee64736f6c63430008140033414943727970746f4c61627320697320612063727970746f63757272656e637920706c6174666f726d207468617420696e7465677261746573206172746966696369616c20696e74656c6c6967656e636520616e6420626c6f636b636861696e20746563686e6f6c6f67792c20616e6420697320636f6d6d697474656420746f2070726f766964696e67207573657273207769746820696e74656c6c6967656e74206d61726b657420696e73696768747320616e642074726164696e6720617373697374616e63652073657276696365732e2054686520706c6174666f726d207573657320616476616e63656420414920746563686e6f6c6f677920746f2070726f76696465207265616c2d74696d652063727970746f63757272656e6379206e65777320696e746572707265746174696f6e2c206d61726b6574207472656e6420616e616c797369732c20696e2d6465707468207265706f7274732c2063757272656e637920746563686e6963616c20616e616c797369732c20616e6420746f6b656e20736563757269747920646574656374696f6e2e20496e206164646974696f6e2c20414943727970746f4c616273206769766573206261636b20746f2074686520636f6d6d756e697479207468726f75676820667265652061697264726f7020616374697669746965732c20616c6c6f77696e6720757365727320746f20657870657269656e63652074686520706c6174666f726d277320696e6e6f766174697665207365727669636573206174207a65726f20636f73742e20496e20746865206675747572652c2074686520706c6174666f726d20706c616e7320746f206c61756e6368206120646563656e7472616c697a65642065786368616e6765202844455829206f6e206974732073656c662d6275696c74204c3220284c61796572203229207365636f6e642d6c61796572206e6574776f726b20616e6420696e746567726174652041492074726164696e67207369676e616c7320746f206272696e6720757365727320616e20656666696369656e742c206c6f772d636f737420616e6420696e74656c6c6967656e742074726164696e6720657870657269656e63652e68747470733a2f2f616963727970746f2e34657665726c616e642e73746f72652f414943727970746f2e706e67