Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
This contract has been partially verified via Sourcify.
View contract in Sourcify repository
- Contract name:
- HeroTraits
- Optimization enabled
- true
- Compiler version
- v0.8.11+commit.d7f03943
- Optimization runs
- 200
- EVM Version
- london
- Verified at
- 2026-05-23T22:08:07.291450Z
/contracts/Traits.sol
// SPDX-License-Identifier: MIT
pragma solidity >=0.4.22 <0.9.0;
contract HeroTraits {
function getPantsLength() public pure returns (uint256) {
return getPants().length;
}
function getPants() public pure returns (string[2][5] memory) {
return [
["White Pants", "QmS1ugwVyGemvvcu8xhvYPLJcM9XiCzev19hL5S4118mvY"],
["Red Pants", "QmQRw479rzessc1ms2kcnKQCvCs2aQ1Ep25vK7xgo9cEJt"],
["Blue Pants", "QmePEJz87mRjQt9BmYib14Fcxn8j13Xkdj6MfYoUZbQi79"],
["Green Pants", "QmZ6sjTg936aJCM67NPsPcCjMphAYEWoyQXHNHduKzLyf7"],
["Purple Pants", "QmPP9edeKhcJAM2YKxVfJhLaFHmLxJLm3WGcwWBvNvGXkZ"]
];
}
function getWeaponsLength() public pure returns (uint256) {
return getWeapons().length;
}
function getWeapons() public pure returns (string[2][19] memory) {
return [
["", ""],
["Boomerang of Wood", "QmeZpiK4w2G4nQnEsm9m83h1oZXSaxX5P9tg1ai7cEzCvc"],
["Bow of Focus", "QmNSq5KzbDhRJNuFkUmLc3MZBe5fcVKbvQcNSfThsG4KXw"],
["Mythal Short Sword", "Qmbbz8kkycoEK4r3oMUyw3aqrTQbCfdTno9i9eCKfFTCmz"],
["Bow of Honor", "QmNMApPhGawYMQtCsVNbkD2tSsyA7wfHeNuspw8jSrFaBL"],
["Axe of Honor", "QmeLEVz3Jy2FhWRBrQqN8szyUhYtjFxDPGVHxnTJY1xd2h"],
["Wood Long Sword", "QmXnwjgest5CZVz5ZhUyNnLo1diWFhkKhBck98xY4cpvRP"],
["Boomerang of Flight", "QmPeNnTj25uXJz67mFrJr4ro1zxENYXAGX6kfSxAC9GBxs"],
["Axe of Wonder", "QmT32TRmyg1xJCA9n7oFBRcuRW5vbb5TboXh5LygyLTXbi"],
["Bow of Mystery", "QmbQLEKE1QbGnqNjKeBLLVwcDEoQNB98fsoEQgUbVgrPJk"],
["Axe of Strength", "QmRfhpxsSQHCmsxGPbSDAD7rTKAjVfqgHVBfdoVZBALWFC"],
[
"Elvish Staff of the Forest",
"QmZTTFEmaGu54yj9kUwH3xL4mZrfXJXp8RtzqYMHMYww6p"
],
["Staff of the Sea", "QmUsxTdawFhmWPEbBwqRUi9SGpNBeUN8RwxUUQczxVP8TX"],
["Universe Staff", "Qmab3zQ2n1ZPYpTEgkivDHuryM6A5P1sTjCQoWN5N9ADWE"],
["Mythal Long Sword", "QmSx6MiY29hFoYV2pnehEdbmuFipwupz2y2DJZyCN54jdZ"],
["Wood Short Sword", "QmWFFLygzSa9UXNJAtthRAurazVXjhfZ1ZsDAAsFrKWSQm"],
["Boomerang of Focus", "QmXPDw8pxgnsFsGoz4bw7cWA2G1ZK1MDXArNKHr1VPv3GQ"],
["Iron Short Sword", "QmTqDh8schE195bh6HSsoPfYLVYZLRrXaRen92nJfZcFDC"],
["Iron Long Sword", "QmfYEHBEReGSDKWZuRUBMRiHGhiBo1jTFwpWnVaAG11saw"]
];
}
function getBgLength() public pure returns (uint256) {
return getBg().length;
}
function getBg() public pure returns (string[26] memory) {
return [
"#FEDD00",
"#74D1EA",
"#9DE7D7",
"#9E978E",
"#84754E",
"#00B08B",
"#222223",
"#6B4C4C",
"#ff2424",
"#FF808B",
"#DF1995",
"#C1A7E2",
"#685BC7",
"#DDDAE8",
"#1B365D",
"#A4BCC2",
"#407EC9",
"#009CDE",
"#003865",
"#40C1AC",
"#279989",
"#00BFB3",
"#006F62",
"#ADDC91",
"#007041",
"#58eb34"
];
}
function getRaceLength() public pure returns (uint256) {
return getRace().length;
}
function getRace() public pure returns (string[2][22] memory) {
return [
["Human", "QmbVrpTTEciNQPxb8TjntcmpQMDLrzgEsJxYrpGanCmH88"],
["Human", "QmWTzCYevtrCY9Yu9HZ1RudJ5DZ3ySMbbb6V8j1GMoFd2W"],
["Human", "QmYhchiEeh4iJPYSksxoUAoy9SZCCEU21UQzEyeFxWBcBj"],
["Undead", "QmTtNfnd3HZ7moKrzaJaYyUM5idGbKy2sgHE14fpeyU9UL"],
["Skeleton", "QmcMDNnc8SNjwvPBpcb6hXG3yjz9WSiQ5qzbJTZre7N2uB"],
["Wizard", "QmYotarEMJ98MHfZGDKhsgCcZU54EzTRPCuS88vG9PBUtd"],
["Ghost", "QmTuv44nHYMAix3L36HuBkPV5sQ6NPiGhxSFGSTnAHipJk"],
["Frogling", "QmPXTBPcjrxrjwAaH9VaLzV8uZVpHuy2VnytHT1LWsYWuX"],
["Pizza", "QmaJFAM6iV473UUcEQUPP7hCtP1Zh5jspvMHb9sJYiyutJ"],
["Slate Monkey", "QmNZezfUXKEQZkrXfobHsudcqqAECt97yYZQRUV12jkNbj"],
["Emerald Monkey", "Qmdy1tBPBa85TeDMYb9KVPHanU7Wor39yLEpAJwEUDfgK8"],
["Red Monkey", "Qmb23Pp17Xg5nBQJnfkzQ4rMWPKYnNNWqJcYDaDoJJnwSN"],
["Gold Slate Monkey", "QmNn3agjVqz4WFNvcm3Srzg2EuKJoJi2W2t32E1aDVhAwg"],
["White Monkey", "QmTH9fLyHLzbP6KXUFdJKCKYZqPUHEv7vrYeP95s8AZ57B"],
["Emerald Red Monkey", "QmZJQQE2QS9kMHhUe1PbCNnG1QvGH7hiW6sPETZtqpeEZK"],
["Yellow Monkey", "QmRdNLRMzuTmEuQZVtJAXj9ydxs3Ztb1EdCcF8eqRFQBBe"],
["Honey Monkey", "QmbgrRnunnkJSS9L945bvbP9gd54nRJ8D6YMi1jECvHhei"],
["Red Furred Monkey", "QmdHwSAhmthUbTUfSTqD7EMFWcZ13LLZbvoNTYgKjJb5Vj"],
["Snow Monkey", "QmYvjKEGeSZH2dMhSvgooPt5AatSZzQm2UvMBNhoKvUvER"],
["Brown Monkey", "QmehwhevsQdDyAoG2maHFA7Pip4x6KLVRU1KVfmV4pfDmu"],
["Gold Monkey", "QmTsvwBm7MTRgZBhLmV2GFtC7FzBggwcNNWDmk5iNyk2oP"],
["Tree Monkey", "QmYJBTHYE8WjNFV2udVre3yXTy9Y5xwScBW4bgHvaoPL5r"]
];
}
function getClothesLength() public pure returns (uint256) {
return getClothes().length;
}
function getClothes() public pure returns (string[2][25] memory) {
return [
["", ""],
["Robe of Fire", "QmUH91Yysb2SsDNKZSrkUMevUcoSU3dmcvpcozWAuEvr18"],
["Shirt of Mystery", "QmXRYw9yfgDYAU27KMQafT41hKQFVGJZBqwjs3nkWEUpAp"],
["Vest of Fire", "QmZDeqtzajKwxV9YgfzcZ8Wfap1zARUicUWjTJmJBMdQdw"],
["Tunic of Wonder", "QmaS95LAjXoF3EWxPowwbybBvhG7NtqAA6KeWLYpAzKUVZ"],
["Tunic of Mystery", "QmYJ1xzvptgSVakpUGQgaXjF4w8nnZyNCoDz9v9TJKEcpz"],
["Shirt of Fire", "QmQc1ThSSgbdC6z5nwLDyMyPYqrUC6JBDhfu7WWkyyx9QP"],
["Vest of White", "QmYXx2ihhkFWbjHGkyyfSsQf5jnHPojmo1cWBS9RNjLo8R"],
["Tunic of Fire", "QmcfVUUiFDNoJnZP8W8eSHPq11WRj99oeK4LLaJQtQ1fb8"],
["Robe of Mystery", "QmW9xSXtHfikeScmhpB56kWHdNSDPJaA2F4DRiRdS1gt96"],
["Robe of White", "QmRdTAV3jspvFCdWuTL1wYvz34BS1BXhUY9ctsouy11vfR"],
["Shirt of Emerald", "QmU3i6M3JgPUSFMzfwCjgAkcFtwtmEvwgdSvTEN9gBQ2Ld"],
["Vest of Mystery", "Qme5ZavY4PMvt5bSmrLJErrnDyUckaNH9FrgT5aYqdnnBf"],
["Robe of Emerald", "QmZynRUwPjL6Du9LsGyPA3u1fYabmKuefjRnyTgAm99S8D"],
["Vest of Wishing", "QmUWNR2XF8dAgPXyakxUmpbr5SWz3kytzu49dAhRBo3gLZ"],
["Gown of Magic", "QmQBvcfZ1tsue32nerkpRCsYzDJfNpy466zAhwZ7jWENLw"],
["Robe of Wonder", "Qmbidcgmae5LJqcQKoVwF1832maJ7nMdScNr79hkvMtkkd"],
[
"Gown of the Universe",
"Qmehwi2m5aqrZcqUxBjeJbXRcfWjErxywu3HbwXKPZXa2p"
],
["Tunic of Light", "QmQvhTVqSFRo4zm8uye1f6tYUSUoNvksdgrDzKychyDTKR"],
["Snow Gown", "QmZRoMDJFGr7umyFhH6KBporsrqG7mS1d65xMtzcTHipLj"],
["Blue Vest", "QmXnYYxyexqF7qcYkPDhzrrzbLkwSTeHEDfwobQLvwMd75"],
["Gown of Flowers", "QmaG7srwBaMSUBsExqhUuAUtQbKG12qjcmT1KKoihk7n34"],
["White Shirt", "Qmb7iqzgFA3NcJJQutWYFgT946bcy5JwfGHevzc9TFFXt1"],
["Blue Shirt", "QmQosecPGEQ8qhP1AvPNrphzrga8f3jkpNvB7HPku49cej"],
["Tunic of Emerald", "Qmb6yH7Ss23kL75LfrJTGZXb4oNTXx8A9Uhdr18txKFbqQ"]
];
}
function getHeadLength() public pure returns (uint256) {
return getHead().length;
}
function getHead() public pure returns (string[2][24] memory) {
return [
["", ""],
["Dark Hood", "QmecUFzdxqbhzQGQzpoxqWViFXybMA4amKC9vcwddEzj3y"],
["Emerald Hood", "QmQR7CLWNY66kicK51cPjzpf7tcZVEVjZm8PhMtHjBJthi"],
["Blue Hood", "QmUEhNvJQ5PmPWvJfABNJ5mwZg9s9uANgeFh8wBfwnftk1"],
["White Hood", "QmSNTEq8GsBkzRq19T3Rh9jdULr46KCtKJxVEKTgUQajAo"],
["Red Hood", "Qmc4VPaLnV1JPUvpzsYxsKaYofaCbrhgKK3TaDcnf6tW3L"],
["Helmet 1", "QmcuWWeEsqWMh6ESKEi4BpbicnoqpQt5WQcLhqC9kggj2M"],
["Phrygian Cap", "QmRYZTTanct9LqJw6Mr4EjuTN5iGvySnbgB3GAviy9QAaX"],
["Reddish Hat", "QmemYuaZ6ti3f9hZB6sMnCZ9CyHnPRsBCTsSBrTGp7jgFS"],
["Hat of Luck", "Qmed5Ebw2HqfeDBn845Sb6UJdSFeedZvwcF2eDeDVTt5Q8"],
["Purple Hat", "QmTaet5S2Q8tRa6fa4REPQ3USdn7G6Ptemm4nMb3BpLhZ5"],
["Wizard Hat", "QmTAoe4qpfHsER7swyzbGj1zSR6GuRTsMfBaWdWQtsVUAu"],
["Helmet 2", "QmQd9zjzVbCEG3HTsnLSjfj4D8g2YbVAwJD9jLnf6x3SqH"],
["Helmet of Nebulous", "QmWEvHZyBXuezBcAFKvM55MdVWDnqQCXQXL4xDUzPCVYY6"],
["Helmet of Valoria", "QmZX3jJVEhJNTtQM5mTJNkfCSZxqfULsZ88bHg1ekELiGT"],
["Hat of White", "Qma6pcKWCwCbLdQfbLqYA8vNr8jr74uTM2dNiK5Ga6GSQL"],
["Helmet of Thulium", "QmWWFXsfSuSNRTN4qVdjPH9cf6bccZ3mUbJz8MXXY7Ky8n"],
["Helmet of Wonder", "QmNQQ9rZUscy6fLHdhqndmDm43dSe1xo45JBqkiKNN95qz"],
["Helmet of Valoria 2", "Qmd1Xza7bLMXNdHmpCP2Dt2Fo7YkyECnQxnsbNgPPEkipK"],
["Beep Bop", "QmaPxQGtBVHp7HWDmc7hjnHXCWbubNHFb3dctqetfT5S8S"],
["Helmet of Power", "Qmaqi98rt2oFwzjwJxbWmVgdbrjQshCPt5cCpmLUHsM9Cn"],
["Beep Bop 2", "QmTNiTTa7BZdAHNni9AgVdcQ86GNkDrDcmreLRRCVHnE4V"],
["Beep Bop 3", "QmXnP7hifqudavHmH92o9eDATz8qvpZef7CtGZDdgi5Hoz"],
["Helmet of the Sea", "QmXQBQtsdaM5CNC84r3LvjqsQPcBWnmsKvP2U1SdnGdHph"]
];
}
function getShoesLength() public pure returns (uint256) {
return getShoes().length;
}
function getShoes() public pure returns (string[2][5] memory) {
return [
["", ""],
["Shoes", "QmZuWKcMRRRP28eCFq7oZ19VHp5fKsHfKeLPvRh9AhQw3G"],
["Golden Runners", "QmSBkmnuG4N8GXMRhAMyYEqoajApFwHymt1aPcDaQXoiX8"],
["Blue Shoes", "QmXrspeWB4J3kSYovtuGCz6FqAs5KgxpZs13obSUoSBW3D"],
["Blue Boots", "QmZVtB16f6Z8MgEzkv2XCE9ayFe34tTRwouRPKbVZiNjF1"]
];
}
function getShieldsLength() public pure returns (uint256) {
return getShields().length;
}
function getShadow() public pure returns (string memory) {
return "QmcRNVeYU1CeMe2yD1HKpg5bvBQCfcW5xZp67HYSstAzSZ";
}
function getShields() public pure returns (string[2][11] memory) {
return [
["", ""],
[
"Shield of the Forest 1",
"QmVSwjgTzn7w9jYFvmzadBmFYDaTFi5H9JK8hUW5EJ6Uq3"
],
["Shield of Iron 1", "QmZWnaVywirur14yBBGfBJdQiqit6rQwB5NUAzkdJzqnPS"],
["Mythal Shield 2", "QmebyDHQq24xgLEjoN33aSSQUCFX3vTpf9koRo62GCB6bM"],
["Mythal Shield 3", "QmbVKssPYZS1V9bZmkDfpU1EqKyFSKkVLunqQasiipQCkD"],
["Shield of Iron 2", "QmYpmqDQZvPPQoNsiH4jDUksozTgWiK13KfWT24YorFsY7"],
["Mythal Shield 1", "QmT21FSftCYKcSvjK262vyw79zqQpzxuPCvPNKY23CbNzn"],
["Shield of Absolute", "QmPGtk89gzqK93hV8v1noqJthoB3QAccxZGVw9TZUKrKmZ"],
[
"Shield of the Forest 2",
"QmcDwGHTrcdFusDAagX3632cDjAczawoWL6uChv4Y68gF2"
],
["Shield of Iron 3", "QmPvccz4cMBh3589fht4hCdwRJYyNAHMRggy4YUwKzGKv4"],
[
"Shield of the Forest 3",
"QmRPvKjbSQafzLcxwU4CFBKuemNRxGBS8U3ra8rGFJRRGy"
]
];
}
}
Compiler Settings
{"remappings":[],"optimizer":{"runs":200,"enabled":true},"metadata":{"bytecodeHash":"ipfs"},"libraries":{},"evmVersion":"london","compilationTarget":{"/contracts/Traits.sol":"HeroTraits"}}
Contract ABI
[{"type":"function","stateMutability":"pure","outputs":[{"type":"string[26]","name":"","internalType":"string[26]"}],"name":"getBg","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getBgLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][25]","name":"","internalType":"string[2][25]"}],"name":"getClothes","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getClothesLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][24]","name":"","internalType":"string[2][24]"}],"name":"getHead","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getHeadLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][5]","name":"","internalType":"string[2][5]"}],"name":"getPants","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getPantsLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][22]","name":"","internalType":"string[2][22]"}],"name":"getRace","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getRaceLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string","name":"","internalType":"string"}],"name":"getShadow","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][11]","name":"","internalType":"string[2][11]"}],"name":"getShields","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getShieldsLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][5]","name":"","internalType":"string[2][5]"}],"name":"getShoes","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getShoesLength","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"string[2][19]","name":"","internalType":"string[2][19]"}],"name":"getWeapons","inputs":[]},{"type":"function","stateMutability":"pure","outputs":[{"type":"uint256","name":"","internalType":"uint256"}],"name":"getWeaponsLength","inputs":[]}]
Contract Creation Code
0x608060405234801561001057600080fd5b5061435c806100206000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806397459ffc116100a2578063dc281aff11610071578063dc281aff146101c4578063de6c7063146101d9578063e7790c51146101e1578063f563d348146101e9578063f82f99e4146101fe57600080fd5b806397459ffc1461018a578063bdee78371461019f578063c9aa067f146101a7578063da3494df146101bc57600080fd5b80633a79dd26116100de5780633a79dd261461015d5780635758a4e2146101655780637d0ad3b21461016d5780637e15068a1461017557600080fd5b80630114ebf71461011057806308abe9571461012b5780631ce71c3814610140578063212b03cc14610155575b600080fd5b610118610213565b6040519081526020015b60405180910390f35b610133610225565b6040516101229190612cde565b6101486105f3565b6040516101229190612d5a565b610118610d3d565b610118610d4f565b610118610d61565b610118610d6b565b61017d610d7d565b6040516101229190612dc9565b610192610f02565b6040516101229190612e37565b61017d611240565b6101af6113f3565b6040516101229190612e85565b610118611413565b6101cc611425565b6040516101229190612e9f565b610118611c19565b610118611c2b565b6101f1611c3d565b6040516101229190612f0e565b6102066122ca565b6040516101229190612f7d565b600061021d611425565b506018905090565b61022d612b3d565b604080516101c08101825260006101a08201818152610160830190815283516020818101865292815261018084015282528251608081018452601681850190815275536869656c64206f662074686520466f72657374203160501b6060808401919091529082528451908101909452602e8085529293828501939192838101929061301b90830139815250815260200160405180604001604052806040518060400160405280601081526020016f536869656c64206f662049726f6e203160801b81525081526020016040518060600160405280602e8152602001613caf602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e26bcba3430b61029b434b2b632101960891b81525081526020016040518060600160405280602e815260200161412d602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e4d797468616c20536869656c64203360881b81525081526020016040518060600160405280602e8152602001613499602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f29b434b2b6321037b31024b937b7101960811b81525081526020016040518060600160405280602e81526020016134f5602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e4d797468616c20536869656c64203160881b81525081526020016040518060600160405280602e8152602001613a2b602e91398152508152602001604051806040016040528060405180604001604052806012815260200171536869656c64206f66204162736f6c75746560701b81525081526020016040518060600160405280602e81526020016138bb602e9139815250815260200160405180604001604052806040518060400160405280601681526020017529b434b2b6321037b3103a3432902337b932b9ba101960511b81525081526020016040518060600160405280602e8152602001613b6d602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f536869656c64206f662049726f6e203360801b81525081526020016040518060600160405280602e8152602001613f8f602e91398152508152602001604051806040016040528060405180604001604052806016815260200175536869656c64206f662074686520466f72657374203360501b81525081526020016040518060600160405280602e8152602001613917602e913990529052919050565b6105fb612b6b565b60408051610340810182526005610300820190815264243ab6b0b760d91b6103208301526102c08201908152825160608101909352602e808452919283926102e0840191906131e760208301398152508152602001604051806040016040528060405180604001604052806005815260200164243ab6b0b760d91b81525081526020016040518060600160405280602e8152602001613215602e91398152508152602001604051806040016040528060405180604001604052806005815260200164243ab6b0b760d91b81525081526020016040518060600160405280602e815260200161340f602e91398152508152602001604051806040016040528060405180604001604052806006815260200165155b9919585960d21b81525081526020016040518060600160405280602e815260200161312f602e9139815250815260200160405180604001604052806040518060400160405280600881526020016729b5b2b632ba37b760c11b81525081526020016040518060600160405280602e815260200161357f602e9139815250815260200160405180604001604052806040518060400160405280600681526020016515da5e985c9960d21b81525081526020016040518060600160405280602e81526020016131b9602e9139815250815260200160405180604001604052806040518060400160405280600581526020016411da1bdcdd60da1b81525081526020016040518060600160405280602e8152602001613e1f602e9139815250815260200160405180604001604052806040518060400160405280600881526020016746726f676c696e6760c01b81525081526020016040518060600160405280602e81526020016130d3602e9139815250815260200160405180604001604052806040518060400160405280600581526020016450697a7a6160d81b81525081526020016040518060600160405280602e8152602001614047602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b536c617465204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613f05602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d456d6572616c64204d6f6e6b657960901b81525081526020016040518060600160405280602e81526020016139fd602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169526564204d6f6e6b657960b01b81525081526020016040518060600160405280602e8152602001613feb602e91398152508152602001604051806040016040528060405180604001604052806011815260200170476f6c6420536c617465204d6f6e6b657960781b81525081526020016040518060600160405280602e81526020016142cb602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b5768697465204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613c25602e91398152508152602001604051806040016040528060405180604001604052806012815260200171456d6572616c6420526564204d6f6e6b657960701b81525081526020016040518060600160405280602e8152602001613b3f602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c59656c6c6f77204d6f6e6b657960981b81525081526020016040518060600160405280602e8152602001613b11602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b486f6e6579204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613f61602e9139815250815260200160405180604001604052806040518060400160405280601181526020017052656420467572726564204d6f6e6b657960781b81525081526020016040518060600160405280602e81526020016137a7602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a536e6f77204d6f6e6b657960a81b81525081526020016040518060600160405280602e815260200161385f602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b42726f776e204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613cdd602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a476f6c64204d6f6e6b657960a81b81525081526020016040518060600160405280602e8152602001614189602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a54726565204d6f6e6b657960a81b81525081526020016040518060600160405280602e8152602001613803602e913990529052919050565b6000610d47610d7d565b506005905090565b6000610d596105f3565b506016905090565b6000610d47611240565b6000610d75610225565b50600b905090565b610d85612b99565b6040805161010081018252600060e0820181815260a0830190815283516020818101865292815260c08401528252825160808101845260058185019081526453686f657360d81b6060838101919091529082528451908101909452602e8085529293828501939192838101929061363790830139815250815260200160405180604001604052806040518060400160405280600e81526020016d476f6c64656e2052756e6e65727360901b81525081526020016040518060600160405280602e8152602001614241602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169426c75652053686f657360b01b81525081526020016040518060600160405280602e81526020016132cd602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169426c756520426f6f747360b01b81525081526020016040518060600160405280602e8152602001613329602e913990529052919050565b610f0a612bc6565b50604080516103808101825260076103408201818152660234645444430360cc1b610360840152825282518084018452818152662337344431454160c81b6020828101919091528084019190915283518085018552828152662339444537443760c81b818301528385015283518085018552828152662339453937384560c81b81830152606084015283518085018552828152662338343735344560c81b818301526080840152835180850185528281526611981821181c2160c91b8183015260a084015283518085018552828152662332323232323360c81b8183015260c084015283518085018552828152662336423443344360c81b8183015260e0840152835180850185528281526608d9998c8d0c8d60ca1b81830152610100840152835180850185528281526611a3231c181c2160c91b8183015261012084015283518085018552828152662344463139393560c81b81830152610140840152835180850185528281526611a198a09ba29960c91b8183015261016084015283518085018552828152662336383542433760c81b818301526101808401528351808501855282815266046888888828a760cb1b818301526101a0840152835180850185528281526608cc508ccd8d5160ca1b818301526101c0840152835180850185528281526611a09a2121a19960c91b818301526101e084015283518085018552828152662334303745433960c81b8183015261020084015283518085018552828152662330303943444560c81b8183015261022084015283518085018552828152662330303338363560c81b8183015261024084015283518085018552828152662334304331414360c81b8183015261026084015283518085018552828152662332373939383960c81b8183015261028084015283518085018552828152662330304246423360c81b818301526102a084015283518085018552828152661198181b231b1960c91b818301526102c084015283518085018552828152662341444443393160c81b818301526102e084015283518085018552828152662330303730343160c81b8183015261030084015283518085019094529083526608cd4e19588ccd60ca1b9083015261032081019190915290565b611248612b99565b6040805161012081018252600b60e082019081526a57686974652050616e747360a81b61010083015260a08201908152825160608101909352602e8084529192839260c084019190613077602083013981525081526020016040518060400160405280604051806040016040528060098152602001685265642050616e747360b81b81525081526020016040518060600160405280602e8152602001613dc3602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169426c75652050616e747360b01b81525081526020016040518060600160405280602e8152602001613049602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a477265656e2050616e747360a81b81525081526020016040518060600160405280602e8152602001613385602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b507572706c652050616e747360a01b81525081526020016040518060600160405280602e81526020016141e5602e913990529052919050565b60606040518060600160405280602e81526020016134c7602e9139905090565b600061141d611c3d565b506013905090565b61142d612bee565b60408051610360810182526000610340820181815261030083019081528351602081810186529281526103208401528252825160808101845260098185019081526811185c9ac8121bdbd960ba1b6060808401919091529082528451908101909452602e8085529293828501939192838101929061371d90830139815250815260200160405180604001604052806040518060400160405280600c81526020016b115b595c985b1908121bdbd960a21b81525081526020016040518060600160405280602e81526020016139cf602e91398152508152602001604051806040016040528060405180604001604052806009815260200168109b1d5948121bdbd960ba1b81525081526020016040518060600160405280602e8152602001613973602e9139815250815260200160405180604001604052806040518060400160405280600a81526020016915da1a5d1948121bdbd960b21b81525081526020016040518060600160405280602e8152602001613945602e9139815250815260200160405180604001604052806040518060400160405280600881526020016714995908121bdbd960c21b81525081526020016040518060600160405280602e81526020016135db602e9139815250815260200160405180604001604052806040518060400160405280600881526020016748656c6d6574203160c01b81525081526020016040518060600160405280602e81526020016133b3602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b0506872796769616e204361760a41b81525081526020016040518060600160405280602e8152602001613f33602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a149959191a5cda0812185d60aa1b81525081526020016040518060600160405280602e815260200161315d602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a486174206f66204c75636b60a81b81525081526020016040518060600160405280602e8152602001613ed7602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169141d5c9c1b194812185d60b21b81525081526020016040518060600160405280602e8152602001613101602e9139815250815260200160405180604001604052806040518060400160405280600a81526020016915da5e985c990812185d60b21b81525081526020016040518060600160405280602e8152602001613243602e913981525081526020016040518060400160405280604051806040016040528060088152602001672432b636b2ba101960c11b81525081526020016040518060600160405280602e8152602001613bf7602e9139815250815260200160405180604001604052806040518060400160405280601281526020017148656c6d6574206f66204e6562756c6f757360701b81525081526020016040518060600160405280602e81526020016139a1602e9139815250815260200160405180604001604052806040518060400160405280601181526020017048656c6d6574206f662056616c6f72696160781b81525081526020016040518060600160405280602e8152602001613ea9602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b486174206f6620576869746560a01b81525081526020016040518060600160405280602e8152602001613bc9602e9139815250815260200160405180604001604052806040518060400160405280601181526020017048656c6d6574206f66205468756c69756d60781b81525081526020016040518060600160405280602e8152602001613357602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f2432b636b2ba1037b3102bb7b73232b960811b81525081526020016040518060600160405280602e815260200161374b602e913981525081526020016040518060400160405280604051806040016040528060138152602001722432b636b2ba1037b3102b30b637b934b0901960691b81525081526020016040518060600160405280602e815260200161343d602e9139815250815260200160405180604001604052806040518060400160405280600881526020016704265657020426f760c41b81525081526020016040518060600160405280602e815260200161388d602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e2432b636b2ba1037b3102837bbb2b960891b81525081526020016040518060600160405280602e8152602001613e7b602e9139815250815260200160405180604001604052806040518060400160405280600a8152602001692132b2b8102137b8101960b11b81525081526020016040518060600160405280602e8152602001613271602e9139815250815260200160405180604001604052806040518060400160405280600a8152602001694265657020426f70203360b01b81525081526020016040518060600160405280602e8152602001613d67602e9139815250815260200160405180604001604052806040518060400160405280601181526020017048656c6d6574206f66207468652053656160781b81525081526020016040518060600160405280602e81526020016141b7602e913990529052919050565b6000611c236122ca565b506019905090565b6000611c35610f02565b50601a905090565b611c45612c1c565b604080516102c08101825260006102a08201818152610260830190815283516020818101865292815261028084015282528251608081018452601181850190815270109bdbdb595c985b99c81bd98815dbdbd9607a1b6060808401919091529082528451908101909452602e80855292938285019391928381019290613a8790830139815250815260200160405180604001604052806040518060400160405280600c81526020016b426f77206f6620466f63757360a01b81525081526020016040518060600160405280602e81526020016133e1602e91398152508152602001604051806040016040528060405180604001604052806012815260200171135e5d1a185b0814da1bdc9d0814dddbdc9960721b81525081526020016040518060600160405280602e81526020016140d1602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b2137bb9037b3102437b737b960a11b81525081526020016040518060600160405280602e8152602001613ae3602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b20bc329037b3102437b737b960a11b81525081526020016040518060600160405280602e8152602001613693602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e15dbdbd908131bdb99c814dddbdc99608a1b81525081526020016040518060600160405280602e8152602001613ab5602e91398152508152602001604051806040016040528060405180604001604052806013815260200172109bdbdb595c985b99c81bd988119b1a59da1d606a1b81525081526020016040518060600160405280602e815260200161318b602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c20bc329037b3102bb7b73232b960991b81525081526020016040518060600160405280602e8152602001613e4d602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d426f77206f66204d79737465727960901b81525081526020016040518060600160405280602e8152602001613523602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e082f0ca40decc40a6e8e4cadccee8d608b1b81525081526020016040518060600160405280602e8152602001613d0b602e9139815250815260200160405180604001604052806040518060400160405280601a81526020017f456c76697368205374616666206f662074686520466f7265737400000000000081525081526020016040518060600160405280602e815260200161415b602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f5374616666206f66207468652053656160801b81525081526020016040518060600160405280602e8152602001613665602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d2ab734bb32b939b29029ba30b33360911b81525081526020016040518060600160405280602e81526020016135ad602e91398152508152602001604051806040016040528060405180604001604052806011815260200170135e5d1a185b08131bdb99c814dddbdc99607a1b81525081526020016040518060600160405280602e8152602001613d95602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f15dbdbd90814da1bdc9d0814dddbdc9960821b81525081526020016040518060600160405280602e815260200161429d602e91398152508152602001604051806040016040528060405180604001604052806012815260200171426f6f6d6572616e67206f6620466f63757360701b81525081526020016040518060600160405280602e8152602001614019602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f125c9bdb8814da1bdc9d0814dddbdc9960821b81525081526020016040518060600160405280602e815260200161329f602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e125c9bdb88131bdb99c814dddbdc99608a1b81525081526020016040518060600160405280602e8152602001613c53602e913990529052919050565b6122d2612c4a565b604080516103808101825260006103608201818152610320830190815283516020818101865292815261034084015282528251608081018452600c8185019081526b526f6265206f66204669726560a01b6060808401919091529082528451908101909452602e8085529293828501939192838101929061407590830139815250815260200160405180604001604052806040518060400160405280601081526020016f5368697274206f66204d79737465727960801b81525081526020016040518060600160405280602e81526020016137d5602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b56657374206f66204669726560a01b81525081526020016040518060600160405280602e8152602001613c81602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e2a3ab734b19037b3102bb7b73232b960891b81525081526020016040518060600160405280602e8152602001613779602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f54756e6963206f66204d79737465727960801b81525081526020016040518060600160405280602e8152602001613df1602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c5368697274206f66204669726560981b81525081526020016040518060600160405280602e81526020016138e9602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c56657374206f6620576869746560981b81525081526020016040518060600160405280602e81526020016130a5602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c54756e6963206f66204669726560981b81525081526020016040518060600160405280602e8152602001614213602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e526f6265206f66204d79737465727960881b81525081526020016040518060600160405280602e8152602001613551602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c526f6265206f6620576869746560981b81525081526020016040518060600160405280602e81526020016140ff602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f14da1a5c9d081bd988115b595c985b1960821b81525081526020016040518060600160405280602e81526020016132fb602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e56657374206f66204d79737465727960881b81525081526020016040518060600160405280602e8152602001613fbd602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e149bd899481bd988115b595c985b19608a1b81525081526020016040518060600160405280602e8152602001613d39602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e56657374206f662057697368696e6760881b81525081526020016040518060600160405280602e815260200161426f602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c476f776e206f66204d6167696360981b81525081526020016040518060600160405280602e81526020016140a3602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d2937b1329037b3102bb7b73232b960911b81525081526020016040518060600160405280602e815260200161346b602e91398152508152602001604051806040016040528060405180604001604052806014815260200173476f776e206f662074686520556e69766572736560601b81525081526020016040518060600160405280602e8152602001612fed602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d151d5b9a58c81bd988131a59da1d60921b81525081526020016040518060600160405280602e81526020016136c1602e9139815250815260200160405180604001604052806040518060400160405280600981526020016829b737bb9023b7bbb760b91b81525081526020016040518060600160405280602e8152602001613831602e91398152508152602001604051806040016040528060405180604001604052806009815260200168109b1d594815995cdd60ba1b81525081526020016040518060600160405280602e8152602001613a59602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e476f776e206f6620466c6f7765727360881b81525081526020016040518060600160405280602e8152602001613b9b602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a15da1a5d194814da1a5c9d60aa1b81525081526020016040518060600160405280602e81526020016136ef602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169109b1d594814da1a5c9d60b21b81525081526020016040518060600160405280602e81526020016142f9602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f151d5b9a58c81bd988115b595c985b1960821b81525081526020016040518060600160405280602e8152602001613609602e913990529052919050565b604051806101600160405280600b905b612b55612c78565b815260200190600190039081612b4d5790505090565b604051806102c001604052806016905b612b83612c78565b815260200190600190039081612b7b5790505090565b6040518060a001604052806005905b612bb0612c78565b815260200190600190039081612ba85790505090565b604051806103400160405280601a905b6060815260200190600190039081612bd65790505090565b6040518061030001604052806018905b612c06612c78565b815260200190600190039081612bfe5790505090565b6040518061026001604052806013905b612c34612c78565b815260200190600190039081612c2c5790505090565b6040518061032001604052806019905b612c62612c78565b815260200190600190039081612c5a5790505090565b6040805180820190915260608152600160208201612bd6565b6000815180845260005b81811015612cb757602081850181015186830182015201612c9b565b81811115612cc9576000602083870101525b50601f01601f19169290920160200192915050565b602080825260009061018083018382018584805b600b811015612d4d57878503601f1901845282518560408101845b6002811015612d38578882038352612d26828551612c91565b938a0193928a01929150600101612d0d565b50965050509285019291850191600101612cf2565b5092979650505050505050565b60208082526000906102e083018382018584805b6016811015612d4d57878503601f1901845282518560408101845b6002811015612db4578882038352612da2828551612c91565b938a0193928a01929150600101612d89565b50965050509285019291850191600101612d6e565b602080825260009060c083018382018584805b6005811015612d4d57878503601f1901845282518560408101845b6002811015612e22578882038352612e10828551612c91565b938a0193928a01929150600101612df7565b50965050509285019291850191600101612ddc565b6020808252600090610360830183820185845b601a811015612e7957601f19878503018352612e67848351612c91565b93509184019190840190600101612e4a565b50919695505050505050565b602081526000612e986020830184612c91565b9392505050565b602080825260009061032083018382018584805b6018811015612d4d57878503601f1901845282518560408101845b6002811015612ef9578882038352612ee7828551612c91565b938a0193928a01929150600101612ece565b50965050509285019291850191600101612eb3565b602080825260009061028083018382018584805b6013811015612d4d57878503601f1901845282518560408101845b6002811015612f68578882038352612f56828551612c91565b938a0193928a01929150600101612f3d565b50965050509285019291850191600101612f22565b602080825260009061034083018382018584805b6019811015612d4d57878503601f1901845282518560408101845b6002811015612fd7578882038352612fc5828551612c91565b938a0193928a01929150600101612fac565b50965050509285019291850191600101612f9156fe516d65687769326d356171725a63715578426a654a6258526366576a45727879777533486277584b505a58613270516d5653776a67547a6e3777396a5946766d7a6164426d465944615446693548394a4b3868555735454a36557133516d6550454a7a38376d526a517439426d59696231344663786e386a3133586b646a364d66596f555a6251693739516d5331756777567947656d767663753878687659504c4a634d395869437a65763139684c3553343131386d7659516d595878326968686b4657626a48476b79796653735166356a6e48506f6a6d6f316357425339524e6a4c6f3852516d5058544250636a7278726a774161483956614c7a5638755a567048757932566e79744854314c577359577558516d5461657435533251387452613666613452455051335553646e3747365074656d6d346e4d623342704c685a35516d54744e666e6433485a376d6f4b727a614a615979554d35696447624b7932736748453134667065795539554c516d656d5975615a367469336639685a4236734d6e435a394379486e50527342435473534272544770376a674653516d50654e6e546a323575584a7a36376d46724a7234726f317a78454e5958414758366b66537841433947427873516d596f746172454d4a39384d48665a47444b68736743635a553534457a54525043755338387647395042557464516d6256727054544563694e5150786238546a6e74636d70514d444c727a6745734a7859727047616e436d483838516d57547a435965767472435939597539485a315275644a35445a3379534d6262623656386a31474d6f46643257516d54416f653471706648734552377377797a62476a317a53523647755254734d66426157645751747356554175516d544e6954546137425a6441484e6e69394167566463513836474e6b447244636d72654c52524356486e453456516d5471446838736368453139356268364853736f5066594c56595a4c5272586152656e39326e4a665a63464443516d58727370655742344a336b53596f76747547437a3646714173354b6778705a7331336f6253556f5342573344516d553369364d334a67505553464d7a6677436a67416b63467477746d4576776764537654454e39674251324c64516d5a567442313666365a384d67457a6b763258434539617946653334745452776f7552504b62565a694e6a4631516d5757465873665375534e52544e347156646a5048396366366263635a336d55624a7a384d585859374b79386e516d5a36736a5467393336614a434d36374e50735063436a4d7068415945576f795158484e4864754b7a4c796637516d6375575765457371574d683645534b45693442706269636e6f71705174355751634c687143396b67676a324d516d4e5371354b7a624468524a4e75466b556d4c63334d5a4265356663564b627651634e536654687347344b5877516d596863686945656834694a5059536b73786f55416f7939535a43434555323155517a4579654678574263426a516d6431587a6137624c4d584e64486d70435032447432466f37596b7945436e51786e73624e675050456b69704b516d62696463676d6165354c4a7163514b6f567746313833326d614a376e4d6453634e723739686b764d746b6b64516d62564b737350595a53315639625a6d6b446670553145714b7946534b6b564c756e7151617369697051436b44516d63524e566559553143654d6532794431484b706735627642514366635735785a7036374859537374417a535a516d59706d7144515a765050516f4e736948346a44556b736f7a546757694b31334b6657543234596f7246735937516d62514c454b45315162476e714e6a4b65424c4c56776344456f514e42393866736f4551675562566772504a6b516d5739785358744866696b6553636d68704235366b5748644e5344504a61413246344452695264533167743936516d634d444e6e6338534e6a777650427063623668584733796a7a395753695135717a624a545a7265374e327542516d6162337a51326e315a5059705445676b697644487572794d364135503173546a43516f574e354e3941445745516d63345650614c6e56314a505576707a735978734b61596f666143627268674b4b33546144636e66367457334c516d6236794837537332336b4c37354c66724a54475a5862346f4e54587838413955686472313874784b46627151516d5a75574b634d52525250323865434671376f5a313956487035664b7348664b654c5076526839416851773347516d5573785464617746686d57504562427771525569395347704e4265554e38527778555551637a785650385458516d654c45567a334a793246685752427251714e38737a79556859746a46784450475648786e544a593178643268516d5176685456715346526f347a6d3875796531663674595553556f4e766b73646772447a4b7963687944544b52516d623769717a674641334e634a4a5175745759466754393436626379354a7766474865767a6339544646587431516d656355467a64787162687a5147517a706f7871575669465879624d4134616d4b43397663776464457a6a3379516d4e515139725a5573637936664c486468716e646d446d343364536531786f34354a42716b694b4e4e3935717a516d615339354c416a586f4633455778506f777762796242766847374e74714141364b65574c5970417a4b55565a516d6448775341686d746855625455665354714437454d4657635a31334c4c5a62766f4e5459674b6a4a6235566a516d58525977397966674459415532374b4d516166543431684b514656474a5a4271776a73336e6b574555704170516d594a425448594538576a4e465632756456726533795854793959357877536342573462674876616f504c3572516d5a526f4d444a46477237756d79466848364b42706f7273727147376d5331643635784d747a63544869704c6a516d59766a4b454765535a4832644d685376676f6f507435416174535a7a516d3255764d424e686f4b7655764552516d61507851477442564870374857446d6337686a6e485843576275624e48466233646374716574665435533853516d5047746b3839677a714b393368563876316e6f714a74686f423351416363785a47567739545a554b724b6d5a516d5163315468535367626443367a356e774c44794d79505971725543364a42446866753757576b797978395150516d5250764b6a62535161667a4c63787755344346424b75656d4e52784742533855337261387247464a52524779516d534e544571384773426b7a5271313954335268396a64554c7234364b43744b4a7856454b54675551616a416f516d5545684e764a5135506d5057764a6641424e4a356d775a6739733975414e6765466838774266776e66746b31516d574576485a79425875657a426341464b764d35354d645657446e7151435851584c347844557a504356595936516d515237434c574e5936366b69634b353163506a7a70663774635a5645566a5a6d3850684d74486a424a746869516d647931744250426138355465444d5962394b565048616e5537576f723339794c4570414a7745554466674b38516d5432314653667443594b6353766a4b32363276797737397a7151707a7875504376504e4b59323343624e7a6e516d586e5959787965787146377163596b5044687a72727a624c6b7753546548454466776f62514c76774d643735516d655a70694b34773247346e516e45736d396d383368316f5a585361785835503974673161693763457a437663516d586e776a6765737435435a567a355a6855794e6e4c6f3164695746686b4b6842636b39387859346370765250516d4e4d41705068476177594d51744373564e626b4432745373794137776648654e75737077386a53724661424c516d52644e4c524d7a75546d4575515a56744a41586a3979647873335a7462314564436346386571524651424265516d5a4a515145325153396b4d48685565315062434e6e4731517647483768695736735045545a74717065455a4b516d63447747485472636446757344416167583336333263446a41637a61776f574c367543687634593638674632516d61473773727742614d5355427345787168557541557451624b473132716a636d54314b4b6f69686b376e3334516d613670634b57437743624c645166624c71594138764e72386a72373475544d32644e694b354761364753514c516d5164397a6a7a5662434547334854736e4c536a666a344438673259625641774a44396a4c6e66367833537148516d544839664c79484c7a6250364b585546644a4b434b595a71505548457637767259655039357338415a353742516d66594548424552654753444b575a755255424d526948476869426f316a54467770576e566141473131736177516d5a446571747a616a4b777856395967667a635a3857666170317a415255696355576a544a6d4a424d64516477516d5a576e615679776972757231347942424766424a6451697169743672517742354e55417a6b644a7a716e5053516d6568776865767351644479416f47326d61484641375069703478364b4c565255314b56666d56347066446d75516d526668707873535148436d7378475062534441443772544b416a5666716748564266646f565a42414c574643516d5a796e525577506a4c364475394c7347795041337531665961626d4b7565666a526e795467416d3939533844516d586e50376869667175646176486d4839326f39654441547a387176705a6566374374475a4464676935486f7a516d5378364d6959323968466f595632706e65684564626d754669707775707a327932444a5a79434e35346a645a516d515277343739727a65737363316d73326b636e4b51437643733261513145703235764b3778676f3963454a74516d594a31787a767074675356616b705547516761586a463477386e6e5a794e436f447a397639544a4b4563707a516d54757634346e48594d416978334c33364875426b5056357351364e506947687853464753546e414869704a6b516d54333254526d796731784a4341396e376f46425263755257357662623554626f5868354c7967794c54586269516d61716939387274326f46777a6a774a7862576d56676462726a517368435074356343706d4c5548734d39436e516d5a58336a4a5645684a4e5474514d356d544a4e6b6643535a787166554c735a383862486731656b454c694754516d656435456277324871666544426e383435536236554a6453466565645a767763463265446544565474355138516d4e5a657a6655584b45515a6b7258666f624873756463717141454374393779595a5152555631326a6b4e626a516d52595a5454616e6374394c714a77364d7234456a75544e3569477679536e6267423347417669793951416158516d626772526e756e6e6b4a5353394c3934356276625039676435346e524a384436594d69316a45437648686569516d507663637a34634d4268333538396668743468436477524a59794e41484d52676779345955774b7a474b7634516d65355a61765934504d76743562536d724c4a4572726e447955636b614e48394672675435615971646e6e4266516d623233507031375867356e42514a6e666b7a5134724d57504b596e4e4e57714a63594461446f4a4a6e77534e516d58504477387078676e734673476f7a346277376357413247315a4b314d445841724e4b487231565076334751516d614a46414d36695634373355556345515550503768437450315a68356a7370764d486239734a59697975744a516d5548393159797362325373444e4b5a53726b554d657655636f535533646d637670636f7a5741754576723138516d51427663665a317473756533326e65726b70524373597a444a664e70793436367a4168775a376a57454e4c77516d62627a386b6b79636f454b3472336f4d55797733617172545162436664546e6f39693965434b664654436d7a516d5264544156336a7370764643645775544c317759767a33344253314258685559396374736f75793131766652516d65627944485171323478674c456a6f4e333361535351554346583376547066396b6f526f363247434236624d516d5a545446456d6147753534796a396b55774833784c346d5a7266584a58703852747a71594d484d5977773670516d54737677426d374d5452675a42684c6d56324746744337467a42676777634e4e57446d6b35694e796b326f50516d58514251747364614d35434e43383472334c766a717351506342576e6d734b765032553153646e4764487068516d5050396564654b68634a414d32594b7856664a684c6146486d4c784a4c6d33574763775742764e7647586b5a516d63665655556946444e6f4a6e5a503857386553485071313157526a39396f654b344c4c614a51745131666238516d53426b6d6e7547344e3847584d5268414d795945716f616a4170467748796d7431615063446151586f695838516d55574e5232584638644167505879616b78556d7062723553577a336b79747a75343964416852426f33674c5a516d5746464c79677a53613955584e4a4174746852417572617a56586a68665a315a734441417346724b5753516d516d4e6e3361676a56717a3457464e76636d3353727a673245754b4a6f4a69325732743332453161445668417767516d516f7365635047455138716850314176504e7270687a7267613866336a6b704e76423748506b75343963656aa2646970667358221220b3ef9b4680f3757f97e7372335dfa8fdecb07d1d161e083ade746496c5a8d9f564736f6c634300080b0033
Deployed ByteCode
0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806397459ffc116100a2578063dc281aff11610071578063dc281aff146101c4578063de6c7063146101d9578063e7790c51146101e1578063f563d348146101e9578063f82f99e4146101fe57600080fd5b806397459ffc1461018a578063bdee78371461019f578063c9aa067f146101a7578063da3494df146101bc57600080fd5b80633a79dd26116100de5780633a79dd261461015d5780635758a4e2146101655780637d0ad3b21461016d5780637e15068a1461017557600080fd5b80630114ebf71461011057806308abe9571461012b5780631ce71c3814610140578063212b03cc14610155575b600080fd5b610118610213565b6040519081526020015b60405180910390f35b610133610225565b6040516101229190612cde565b6101486105f3565b6040516101229190612d5a565b610118610d3d565b610118610d4f565b610118610d61565b610118610d6b565b61017d610d7d565b6040516101229190612dc9565b610192610f02565b6040516101229190612e37565b61017d611240565b6101af6113f3565b6040516101229190612e85565b610118611413565b6101cc611425565b6040516101229190612e9f565b610118611c19565b610118611c2b565b6101f1611c3d565b6040516101229190612f0e565b6102066122ca565b6040516101229190612f7d565b600061021d611425565b506018905090565b61022d612b3d565b604080516101c08101825260006101a08201818152610160830190815283516020818101865292815261018084015282528251608081018452601681850190815275536869656c64206f662074686520466f72657374203160501b6060808401919091529082528451908101909452602e8085529293828501939192838101929061301b90830139815250815260200160405180604001604052806040518060400160405280601081526020016f536869656c64206f662049726f6e203160801b81525081526020016040518060600160405280602e8152602001613caf602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e26bcba3430b61029b434b2b632101960891b81525081526020016040518060600160405280602e815260200161412d602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e4d797468616c20536869656c64203360881b81525081526020016040518060600160405280602e8152602001613499602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f29b434b2b6321037b31024b937b7101960811b81525081526020016040518060600160405280602e81526020016134f5602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e4d797468616c20536869656c64203160881b81525081526020016040518060600160405280602e8152602001613a2b602e91398152508152602001604051806040016040528060405180604001604052806012815260200171536869656c64206f66204162736f6c75746560701b81525081526020016040518060600160405280602e81526020016138bb602e9139815250815260200160405180604001604052806040518060400160405280601681526020017529b434b2b6321037b3103a3432902337b932b9ba101960511b81525081526020016040518060600160405280602e8152602001613b6d602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f536869656c64206f662049726f6e203360801b81525081526020016040518060600160405280602e8152602001613f8f602e91398152508152602001604051806040016040528060405180604001604052806016815260200175536869656c64206f662074686520466f72657374203360501b81525081526020016040518060600160405280602e8152602001613917602e913990529052919050565b6105fb612b6b565b60408051610340810182526005610300820190815264243ab6b0b760d91b6103208301526102c08201908152825160608101909352602e808452919283926102e0840191906131e760208301398152508152602001604051806040016040528060405180604001604052806005815260200164243ab6b0b760d91b81525081526020016040518060600160405280602e8152602001613215602e91398152508152602001604051806040016040528060405180604001604052806005815260200164243ab6b0b760d91b81525081526020016040518060600160405280602e815260200161340f602e91398152508152602001604051806040016040528060405180604001604052806006815260200165155b9919585960d21b81525081526020016040518060600160405280602e815260200161312f602e9139815250815260200160405180604001604052806040518060400160405280600881526020016729b5b2b632ba37b760c11b81525081526020016040518060600160405280602e815260200161357f602e9139815250815260200160405180604001604052806040518060400160405280600681526020016515da5e985c9960d21b81525081526020016040518060600160405280602e81526020016131b9602e9139815250815260200160405180604001604052806040518060400160405280600581526020016411da1bdcdd60da1b81525081526020016040518060600160405280602e8152602001613e1f602e9139815250815260200160405180604001604052806040518060400160405280600881526020016746726f676c696e6760c01b81525081526020016040518060600160405280602e81526020016130d3602e9139815250815260200160405180604001604052806040518060400160405280600581526020016450697a7a6160d81b81525081526020016040518060600160405280602e8152602001614047602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b536c617465204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613f05602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d456d6572616c64204d6f6e6b657960901b81525081526020016040518060600160405280602e81526020016139fd602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169526564204d6f6e6b657960b01b81525081526020016040518060600160405280602e8152602001613feb602e91398152508152602001604051806040016040528060405180604001604052806011815260200170476f6c6420536c617465204d6f6e6b657960781b81525081526020016040518060600160405280602e81526020016142cb602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b5768697465204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613c25602e91398152508152602001604051806040016040528060405180604001604052806012815260200171456d6572616c6420526564204d6f6e6b657960701b81525081526020016040518060600160405280602e8152602001613b3f602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c59656c6c6f77204d6f6e6b657960981b81525081526020016040518060600160405280602e8152602001613b11602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b486f6e6579204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613f61602e9139815250815260200160405180604001604052806040518060400160405280601181526020017052656420467572726564204d6f6e6b657960781b81525081526020016040518060600160405280602e81526020016137a7602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a536e6f77204d6f6e6b657960a81b81525081526020016040518060600160405280602e815260200161385f602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b42726f776e204d6f6e6b657960a01b81525081526020016040518060600160405280602e8152602001613cdd602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a476f6c64204d6f6e6b657960a81b81525081526020016040518060600160405280602e8152602001614189602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a54726565204d6f6e6b657960a81b81525081526020016040518060600160405280602e8152602001613803602e913990529052919050565b6000610d47610d7d565b506005905090565b6000610d596105f3565b506016905090565b6000610d47611240565b6000610d75610225565b50600b905090565b610d85612b99565b6040805161010081018252600060e0820181815260a0830190815283516020818101865292815260c08401528252825160808101845260058185019081526453686f657360d81b6060838101919091529082528451908101909452602e8085529293828501939192838101929061363790830139815250815260200160405180604001604052806040518060400160405280600e81526020016d476f6c64656e2052756e6e65727360901b81525081526020016040518060600160405280602e8152602001614241602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169426c75652053686f657360b01b81525081526020016040518060600160405280602e81526020016132cd602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169426c756520426f6f747360b01b81525081526020016040518060600160405280602e8152602001613329602e913990529052919050565b610f0a612bc6565b50604080516103808101825260076103408201818152660234645444430360cc1b610360840152825282518084018452818152662337344431454160c81b6020828101919091528084019190915283518085018552828152662339444537443760c81b818301528385015283518085018552828152662339453937384560c81b81830152606084015283518085018552828152662338343735344560c81b818301526080840152835180850185528281526611981821181c2160c91b8183015260a084015283518085018552828152662332323232323360c81b8183015260c084015283518085018552828152662336423443344360c81b8183015260e0840152835180850185528281526608d9998c8d0c8d60ca1b81830152610100840152835180850185528281526611a3231c181c2160c91b8183015261012084015283518085018552828152662344463139393560c81b81830152610140840152835180850185528281526611a198a09ba29960c91b8183015261016084015283518085018552828152662336383542433760c81b818301526101808401528351808501855282815266046888888828a760cb1b818301526101a0840152835180850185528281526608cc508ccd8d5160ca1b818301526101c0840152835180850185528281526611a09a2121a19960c91b818301526101e084015283518085018552828152662334303745433960c81b8183015261020084015283518085018552828152662330303943444560c81b8183015261022084015283518085018552828152662330303338363560c81b8183015261024084015283518085018552828152662334304331414360c81b8183015261026084015283518085018552828152662332373939383960c81b8183015261028084015283518085018552828152662330304246423360c81b818301526102a084015283518085018552828152661198181b231b1960c91b818301526102c084015283518085018552828152662341444443393160c81b818301526102e084015283518085018552828152662330303730343160c81b8183015261030084015283518085019094529083526608cd4e19588ccd60ca1b9083015261032081019190915290565b611248612b99565b6040805161012081018252600b60e082019081526a57686974652050616e747360a81b61010083015260a08201908152825160608101909352602e8084529192839260c084019190613077602083013981525081526020016040518060400160405280604051806040016040528060098152602001685265642050616e747360b81b81525081526020016040518060600160405280602e8152602001613dc3602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169426c75652050616e747360b01b81525081526020016040518060600160405280602e8152602001613049602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a477265656e2050616e747360a81b81525081526020016040518060600160405280602e8152602001613385602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b507572706c652050616e747360a01b81525081526020016040518060600160405280602e81526020016141e5602e913990529052919050565b60606040518060600160405280602e81526020016134c7602e9139905090565b600061141d611c3d565b506013905090565b61142d612bee565b60408051610360810182526000610340820181815261030083019081528351602081810186529281526103208401528252825160808101845260098185019081526811185c9ac8121bdbd960ba1b6060808401919091529082528451908101909452602e8085529293828501939192838101929061371d90830139815250815260200160405180604001604052806040518060400160405280600c81526020016b115b595c985b1908121bdbd960a21b81525081526020016040518060600160405280602e81526020016139cf602e91398152508152602001604051806040016040528060405180604001604052806009815260200168109b1d5948121bdbd960ba1b81525081526020016040518060600160405280602e8152602001613973602e9139815250815260200160405180604001604052806040518060400160405280600a81526020016915da1a5d1948121bdbd960b21b81525081526020016040518060600160405280602e8152602001613945602e9139815250815260200160405180604001604052806040518060400160405280600881526020016714995908121bdbd960c21b81525081526020016040518060600160405280602e81526020016135db602e9139815250815260200160405180604001604052806040518060400160405280600881526020016748656c6d6574203160c01b81525081526020016040518060600160405280602e81526020016133b3602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b0506872796769616e204361760a41b81525081526020016040518060600160405280602e8152602001613f33602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a149959191a5cda0812185d60aa1b81525081526020016040518060600160405280602e815260200161315d602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a486174206f66204c75636b60a81b81525081526020016040518060600160405280602e8152602001613ed7602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169141d5c9c1b194812185d60b21b81525081526020016040518060600160405280602e8152602001613101602e9139815250815260200160405180604001604052806040518060400160405280600a81526020016915da5e985c990812185d60b21b81525081526020016040518060600160405280602e8152602001613243602e913981525081526020016040518060400160405280604051806040016040528060088152602001672432b636b2ba101960c11b81525081526020016040518060600160405280602e8152602001613bf7602e9139815250815260200160405180604001604052806040518060400160405280601281526020017148656c6d6574206f66204e6562756c6f757360701b81525081526020016040518060600160405280602e81526020016139a1602e9139815250815260200160405180604001604052806040518060400160405280601181526020017048656c6d6574206f662056616c6f72696160781b81525081526020016040518060600160405280602e8152602001613ea9602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b486174206f6620576869746560a01b81525081526020016040518060600160405280602e8152602001613bc9602e9139815250815260200160405180604001604052806040518060400160405280601181526020017048656c6d6574206f66205468756c69756d60781b81525081526020016040518060600160405280602e8152602001613357602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f2432b636b2ba1037b3102bb7b73232b960811b81525081526020016040518060600160405280602e815260200161374b602e913981525081526020016040518060400160405280604051806040016040528060138152602001722432b636b2ba1037b3102b30b637b934b0901960691b81525081526020016040518060600160405280602e815260200161343d602e9139815250815260200160405180604001604052806040518060400160405280600881526020016704265657020426f760c41b81525081526020016040518060600160405280602e815260200161388d602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e2432b636b2ba1037b3102837bbb2b960891b81525081526020016040518060600160405280602e8152602001613e7b602e9139815250815260200160405180604001604052806040518060400160405280600a8152602001692132b2b8102137b8101960b11b81525081526020016040518060600160405280602e8152602001613271602e9139815250815260200160405180604001604052806040518060400160405280600a8152602001694265657020426f70203360b01b81525081526020016040518060600160405280602e8152602001613d67602e9139815250815260200160405180604001604052806040518060400160405280601181526020017048656c6d6574206f66207468652053656160781b81525081526020016040518060600160405280602e81526020016141b7602e913990529052919050565b6000611c236122ca565b506019905090565b6000611c35610f02565b50601a905090565b611c45612c1c565b604080516102c08101825260006102a08201818152610260830190815283516020818101865292815261028084015282528251608081018452601181850190815270109bdbdb595c985b99c81bd98815dbdbd9607a1b6060808401919091529082528451908101909452602e80855292938285019391928381019290613a8790830139815250815260200160405180604001604052806040518060400160405280600c81526020016b426f77206f6620466f63757360a01b81525081526020016040518060600160405280602e81526020016133e1602e91398152508152602001604051806040016040528060405180604001604052806012815260200171135e5d1a185b0814da1bdc9d0814dddbdc9960721b81525081526020016040518060600160405280602e81526020016140d1602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b2137bb9037b3102437b737b960a11b81525081526020016040518060600160405280602e8152602001613ae3602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b20bc329037b3102437b737b960a11b81525081526020016040518060600160405280602e8152602001613693602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e15dbdbd908131bdb99c814dddbdc99608a1b81525081526020016040518060600160405280602e8152602001613ab5602e91398152508152602001604051806040016040528060405180604001604052806013815260200172109bdbdb595c985b99c81bd988119b1a59da1d606a1b81525081526020016040518060600160405280602e815260200161318b602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c20bc329037b3102bb7b73232b960991b81525081526020016040518060600160405280602e8152602001613e4d602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d426f77206f66204d79737465727960901b81525081526020016040518060600160405280602e8152602001613523602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e082f0ca40decc40a6e8e4cadccee8d608b1b81525081526020016040518060600160405280602e8152602001613d0b602e9139815250815260200160405180604001604052806040518060400160405280601a81526020017f456c76697368205374616666206f662074686520466f7265737400000000000081525081526020016040518060600160405280602e815260200161415b602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f5374616666206f66207468652053656160801b81525081526020016040518060600160405280602e8152602001613665602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d2ab734bb32b939b29029ba30b33360911b81525081526020016040518060600160405280602e81526020016135ad602e91398152508152602001604051806040016040528060405180604001604052806011815260200170135e5d1a185b08131bdb99c814dddbdc99607a1b81525081526020016040518060600160405280602e8152602001613d95602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f15dbdbd90814da1bdc9d0814dddbdc9960821b81525081526020016040518060600160405280602e815260200161429d602e91398152508152602001604051806040016040528060405180604001604052806012815260200171426f6f6d6572616e67206f6620466f63757360701b81525081526020016040518060600160405280602e8152602001614019602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f125c9bdb8814da1bdc9d0814dddbdc9960821b81525081526020016040518060600160405280602e815260200161329f602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e125c9bdb88131bdb99c814dddbdc99608a1b81525081526020016040518060600160405280602e8152602001613c53602e913990529052919050565b6122d2612c4a565b604080516103808101825260006103608201818152610320830190815283516020818101865292815261034084015282528251608081018452600c8185019081526b526f6265206f66204669726560a01b6060808401919091529082528451908101909452602e8085529293828501939192838101929061407590830139815250815260200160405180604001604052806040518060400160405280601081526020016f5368697274206f66204d79737465727960801b81525081526020016040518060600160405280602e81526020016137d5602e9139815250815260200160405180604001604052806040518060400160405280600c81526020016b56657374206f66204669726560a01b81525081526020016040518060600160405280602e8152602001613c81602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e2a3ab734b19037b3102bb7b73232b960891b81525081526020016040518060600160405280602e8152602001613779602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f54756e6963206f66204d79737465727960801b81525081526020016040518060600160405280602e8152602001613df1602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c5368697274206f66204669726560981b81525081526020016040518060600160405280602e81526020016138e9602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c56657374206f6620576869746560981b81525081526020016040518060600160405280602e81526020016130a5602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c54756e6963206f66204669726560981b81525081526020016040518060600160405280602e8152602001614213602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e526f6265206f66204d79737465727960881b81525081526020016040518060600160405280602e8152602001613551602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c526f6265206f6620576869746560981b81525081526020016040518060600160405280602e81526020016140ff602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f14da1a5c9d081bd988115b595c985b1960821b81525081526020016040518060600160405280602e81526020016132fb602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e56657374206f66204d79737465727960881b81525081526020016040518060600160405280602e8152602001613fbd602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e149bd899481bd988115b595c985b19608a1b81525081526020016040518060600160405280602e8152602001613d39602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e56657374206f662057697368696e6760881b81525081526020016040518060600160405280602e815260200161426f602e9139815250815260200160405180604001604052806040518060400160405280600d81526020016c476f776e206f66204d6167696360981b81525081526020016040518060600160405280602e81526020016140a3602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d2937b1329037b3102bb7b73232b960911b81525081526020016040518060600160405280602e815260200161346b602e91398152508152602001604051806040016040528060405180604001604052806014815260200173476f776e206f662074686520556e69766572736560601b81525081526020016040518060600160405280602e8152602001612fed602e9139815250815260200160405180604001604052806040518060400160405280600e81526020016d151d5b9a58c81bd988131a59da1d60921b81525081526020016040518060600160405280602e81526020016136c1602e9139815250815260200160405180604001604052806040518060400160405280600981526020016829b737bb9023b7bbb760b91b81525081526020016040518060600160405280602e8152602001613831602e91398152508152602001604051806040016040528060405180604001604052806009815260200168109b1d594815995cdd60ba1b81525081526020016040518060600160405280602e8152602001613a59602e9139815250815260200160405180604001604052806040518060400160405280600f81526020016e476f776e206f6620466c6f7765727360881b81525081526020016040518060600160405280602e8152602001613b9b602e9139815250815260200160405180604001604052806040518060400160405280600b81526020016a15da1a5d194814da1a5c9d60aa1b81525081526020016040518060600160405280602e81526020016136ef602e9139815250815260200160405180604001604052806040518060400160405280600a815260200169109b1d594814da1a5c9d60b21b81525081526020016040518060600160405280602e81526020016142f9602e9139815250815260200160405180604001604052806040518060400160405280601081526020016f151d5b9a58c81bd988115b595c985b1960821b81525081526020016040518060600160405280602e8152602001613609602e913990529052919050565b604051806101600160405280600b905b612b55612c78565b815260200190600190039081612b4d5790505090565b604051806102c001604052806016905b612b83612c78565b815260200190600190039081612b7b5790505090565b6040518060a001604052806005905b612bb0612c78565b815260200190600190039081612ba85790505090565b604051806103400160405280601a905b6060815260200190600190039081612bd65790505090565b6040518061030001604052806018905b612c06612c78565b815260200190600190039081612bfe5790505090565b6040518061026001604052806013905b612c34612c78565b815260200190600190039081612c2c5790505090565b6040518061032001604052806019905b612c62612c78565b815260200190600190039081612c5a5790505090565b6040805180820190915260608152600160208201612bd6565b6000815180845260005b81811015612cb757602081850181015186830182015201612c9b565b81811115612cc9576000602083870101525b50601f01601f19169290920160200192915050565b602080825260009061018083018382018584805b600b811015612d4d57878503601f1901845282518560408101845b6002811015612d38578882038352612d26828551612c91565b938a0193928a01929150600101612d0d565b50965050509285019291850191600101612cf2565b5092979650505050505050565b60208082526000906102e083018382018584805b6016811015612d4d57878503601f1901845282518560408101845b6002811015612db4578882038352612da2828551612c91565b938a0193928a01929150600101612d89565b50965050509285019291850191600101612d6e565b602080825260009060c083018382018584805b6005811015612d4d57878503601f1901845282518560408101845b6002811015612e22578882038352612e10828551612c91565b938a0193928a01929150600101612df7565b50965050509285019291850191600101612ddc565b6020808252600090610360830183820185845b601a811015612e7957601f19878503018352612e67848351612c91565b93509184019190840190600101612e4a565b50919695505050505050565b602081526000612e986020830184612c91565b9392505050565b602080825260009061032083018382018584805b6018811015612d4d57878503601f1901845282518560408101845b6002811015612ef9578882038352612ee7828551612c91565b938a0193928a01929150600101612ece565b50965050509285019291850191600101612eb3565b602080825260009061028083018382018584805b6013811015612d4d57878503601f1901845282518560408101845b6002811015612f68578882038352612f56828551612c91565b938a0193928a01929150600101612f3d565b50965050509285019291850191600101612f22565b602080825260009061034083018382018584805b6019811015612d4d57878503601f1901845282518560408101845b6002811015612fd7578882038352612fc5828551612c91565b938a0193928a01929150600101612fac565b50965050509285019291850191600101612f9156fe516d65687769326d356171725a63715578426a654a6258526366576a45727879777533486277584b505a58613270516d5653776a67547a6e3777396a5946766d7a6164426d465944615446693548394a4b3868555735454a36557133516d6550454a7a38376d526a517439426d59696231344663786e386a3133586b646a364d66596f555a6251693739516d5331756777567947656d767663753878687659504c4a634d395869437a65763139684c3553343131386d7659516d595878326968686b4657626a48476b79796653735166356a6e48506f6a6d6f316357425339524e6a4c6f3852516d5058544250636a7278726a774161483956614c7a5638755a567048757932566e79744854314c577359577558516d5461657435533251387452613666613452455051335553646e3747365074656d6d346e4d623342704c685a35516d54744e666e6433485a376d6f4b727a614a615979554d35696447624b7932736748453134667065795539554c516d656d5975615a367469336639685a4236734d6e435a394379486e50527342435473534272544770376a674653516d50654e6e546a323575584a7a36376d46724a7234726f317a78454e5958414758366b66537841433947427873516d596f746172454d4a39384d48665a47444b68736743635a553534457a54525043755338387647395042557464516d6256727054544563694e5150786238546a6e74636d70514d444c727a6745734a7859727047616e436d483838516d57547a435965767472435939597539485a315275644a35445a3379534d6262623656386a31474d6f46643257516d54416f653471706648734552377377797a62476a317a53523647755254734d66426157645751747356554175516d544e6954546137425a6441484e6e69394167566463513836474e6b447244636d72654c52524356486e453456516d5471446838736368453139356268364853736f5066594c56595a4c5272586152656e39326e4a665a63464443516d58727370655742344a336b53596f76747547437a3646714173354b6778705a7331336f6253556f5342573344516d553369364d334a67505553464d7a6677436a67416b63467477746d4576776764537654454e39674251324c64516d5a567442313666365a384d67457a6b763258434539617946653334745452776f7552504b62565a694e6a4631516d5757465873665375534e52544e347156646a5048396366366263635a336d55624a7a384d585859374b79386e516d5a36736a5467393336614a434d36374e50735063436a4d7068415945576f795158484e4864754b7a4c796637516d6375575765457371574d683645534b45693442706269636e6f71705174355751634c687143396b67676a324d516d4e5371354b7a624468524a4e75466b556d4c63334d5a4265356663564b627651634e536654687347344b5877516d596863686945656834694a5059536b73786f55416f7939535a43434555323155517a4579654678574263426a516d6431587a6137624c4d584e64486d70435032447432466f37596b7945436e51786e73624e675050456b69704b516d62696463676d6165354c4a7163514b6f567746313833326d614a376e4d6453634e723739686b764d746b6b64516d62564b737350595a53315639625a6d6b446670553145714b7946534b6b564c756e7151617369697051436b44516d63524e566559553143654d6532794431484b706735627642514366635735785a7036374859537374417a535a516d59706d7144515a765050516f4e736948346a44556b736f7a546757694b31334b6657543234596f7246735937516d62514c454b45315162476e714e6a4b65424c4c56776344456f514e42393866736f4551675562566772504a6b516d5739785358744866696b6553636d68704235366b5748644e5344504a61413246344452695264533167743936516d634d444e6e6338534e6a777650427063623668584733796a7a395753695135717a624a545a7265374e327542516d6162337a51326e315a5059705445676b697644487572794d364135503173546a43516f574e354e3941445745516d63345650614c6e56314a505576707a735978734b61596f666143627268674b4b33546144636e66367457334c516d6236794837537332336b4c37354c66724a54475a5862346f4e54587838413955686472313874784b46627151516d5a75574b634d52525250323865434671376f5a313956487035664b7348664b654c5076526839416851773347516d5573785464617746686d57504562427771525569395347704e4265554e38527778555551637a785650385458516d654c45567a334a793246685752427251714e38737a79556859746a46784450475648786e544a593178643268516d5176685456715346526f347a6d3875796531663674595553556f4e766b73646772447a4b7963687944544b52516d623769717a674641334e634a4a5175745759466754393436626379354a7766474865767a6339544646587431516d656355467a64787162687a5147517a706f7871575669465879624d4134616d4b43397663776464457a6a3379516d4e515139725a5573637936664c486468716e646d446d343364536531786f34354a42716b694b4e4e3935717a516d615339354c416a586f4633455778506f777762796242766847374e74714141364b65574c5970417a4b55565a516d6448775341686d746855625455665354714437454d4657635a31334c4c5a62766f4e5459674b6a4a6235566a516d58525977397966674459415532374b4d516166543431684b514656474a5a4271776a73336e6b574555704170516d594a425448594538576a4e465632756456726533795854793959357877536342573462674876616f504c3572516d5a526f4d444a46477237756d79466848364b42706f7273727147376d5331643635784d747a63544869704c6a516d59766a4b454765535a4832644d685376676f6f507435416174535a7a516d3255764d424e686f4b7655764552516d61507851477442564870374857446d6337686a6e485843576275624e48466233646374716574665435533853516d5047746b3839677a714b393368563876316e6f714a74686f423351416363785a47567739545a554b724b6d5a516d5163315468535367626443367a356e774c44794d79505971725543364a42446866753757576b797978395150516d5250764b6a62535161667a4c63787755344346424b75656d4e52784742533855337261387247464a52524779516d534e544571384773426b7a5271313954335268396a64554c7234364b43744b4a7856454b54675551616a416f516d5545684e764a5135506d5057764a6641424e4a356d775a6739733975414e6765466838774266776e66746b31516d574576485a79425875657a426341464b764d35354d645657446e7151435851584c347844557a504356595936516d515237434c574e5936366b69634b353163506a7a70663774635a5645566a5a6d3850684d74486a424a746869516d647931744250426138355465444d5962394b565048616e5537576f723339794c4570414a7745554466674b38516d5432314653667443594b6353766a4b32363276797737397a7151707a7875504376504e4b59323343624e7a6e516d586e5959787965787146377163596b5044687a72727a624c6b7753546548454466776f62514c76774d643735516d655a70694b34773247346e516e45736d396d383368316f5a585361785835503974673161693763457a437663516d586e776a6765737435435a567a355a6855794e6e4c6f3164695746686b4b6842636b39387859346370765250516d4e4d41705068476177594d51744373564e626b4432745373794137776648654e75737077386a53724661424c516d52644e4c524d7a75546d4575515a56744a41586a3979647873335a7462314564436346386571524651424265516d5a4a515145325153396b4d48685565315062434e6e4731517647483768695736735045545a74717065455a4b516d63447747485472636446757344416167583336333263446a41637a61776f574c367543687634593638674632516d61473773727742614d5355427345787168557541557451624b473132716a636d54314b4b6f69686b376e3334516d613670634b57437743624c645166624c71594138764e72386a72373475544d32644e694b354761364753514c516d5164397a6a7a5662434547334854736e4c536a666a344438673259625641774a44396a4c6e66367833537148516d544839664c79484c7a6250364b585546644a4b434b595a71505548457637767259655039357338415a353742516d66594548424552654753444b575a755255424d526948476869426f316a54467770576e566141473131736177516d5a446571747a616a4b777856395967667a635a3857666170317a415255696355576a544a6d4a424d64516477516d5a576e615679776972757231347942424766424a6451697169743672517742354e55417a6b644a7a716e5053516d6568776865767351644479416f47326d61484641375069703478364b4c565255314b56666d56347066446d75516d526668707873535148436d7378475062534441443772544b416a5666716748564266646f565a42414c574643516d5a796e525577506a4c364475394c7347795041337531665961626d4b7565666a526e795467416d3939533844516d586e50376869667175646176486d4839326f39654441547a387176705a6566374374475a4464676935486f7a516d5378364d6959323968466f595632706e65684564626d754669707775707a327932444a5a79434e35346a645a516d515277343739727a65737363316d73326b636e4b51437643733261513145703235764b3778676f3963454a74516d594a31787a767074675356616b705547516761586a463477386e6e5a794e436f447a397639544a4b4563707a516d54757634346e48594d416978334c33364875426b5056357351364e506947687853464753546e414869704a6b516d54333254526d796731784a4341396e376f46425263755257357662623554626f5868354c7967794c54586269516d61716939387274326f46777a6a774a7862576d56676462726a517368435074356343706d4c5548734d39436e516d5a58336a4a5645684a4e5474514d356d544a4e6b6643535a787166554c735a383862486731656b454c694754516d656435456277324871666544426e383435536236554a6453466565645a767763463265446544565474355138516d4e5a657a6655584b45515a6b7258666f624873756463717141454374393779595a5152555631326a6b4e626a516d52595a5454616e6374394c714a77364d7234456a75544e3569477679536e6267423347417669793951416158516d626772526e756e6e6b4a5353394c3934356276625039676435346e524a384436594d69316a45437648686569516d507663637a34634d4268333538396668743468436477524a59794e41484d52676779345955774b7a474b7634516d65355a61765934504d76743562536d724c4a4572726e447955636b614e48394672675435615971646e6e4266516d623233507031375867356e42514a6e666b7a5134724d57504b596e4e4e57714a63594461446f4a4a6e77534e516d58504477387078676e734673476f7a346277376357413247315a4b314d445841724e4b487231565076334751516d614a46414d36695634373355556345515550503768437450315a68356a7370764d486239734a59697975744a516d5548393159797362325373444e4b5a53726b554d657655636f535533646d637670636f7a5741754576723138516d51427663665a317473756533326e65726b70524373597a444a664e70793436367a4168775a376a57454e4c77516d62627a386b6b79636f454b3472336f4d55797733617172545162436664546e6f39693965434b664654436d7a516d5264544156336a7370764643645775544c317759767a33344253314258685559396374736f75793131766652516d65627944485171323478674c456a6f4e333361535351554346583376547066396b6f526f363247434236624d516d5a545446456d6147753534796a396b55774833784c346d5a7266584a58703852747a71594d484d5977773670516d54737677426d374d5452675a42684c6d56324746744337467a42676777634e4e57446d6b35694e796b326f50516d58514251747364614d35434e43383472334c766a717351506342576e6d734b765032553153646e4764487068516d5050396564654b68634a414d32594b7856664a684c6146486d4c784a4c6d33574763775742764e7647586b5a516d63665655556946444e6f4a6e5a503857386553485071313157526a39396f654b344c4c614a51745131666238516d53426b6d6e7547344e3847584d5268414d795945716f616a4170467748796d7431615063446151586f695838516d55574e5232584638644167505879616b78556d7062723553577a336b79747a75343964416852426f33674c5a516d5746464c79677a53613955584e4a4174746852417572617a56586a68665a315a734441417346724b5753516d516d4e6e3361676a56717a3457464e76636d3353727a673245754b4a6f4a69325732743332453161445668417767516d516f7365635047455138716850314176504e7270687a7267613866336a6b704e76423748506b75343963656aa2646970667358221220b3ef9b4680f3757f97e7372335dfa8fdecb07d1d161e083ade746496c5a8d9f564736f6c634300080b0033