{"abi":[],"bytecode":{"object":"0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c8b49568f0c8dfd4671325debecfb7e5e945f6e1ce58e848b434f2f18c310ff164736f6c63430008180033","sourceMap":"1070:14322:179:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;1070:14322:179;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c8b49568f0c8dfd4671325debecfb7e5e945f6e1ce58e848b434f2f18c310ff164736f6c63430008180033","sourceMap":"1070:14322:179:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/codegen/tables/ArchetypeModifier.sol\":\"ArchetypeModifier\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":base/=src/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":solmate/=node_modules/solmate/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0\",\"dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91\",\"dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4\",\"dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53\",\"dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905\",\"dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6\",\"dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc\",\"dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754\",\"dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3\",\"dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e\",\"dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea\",\"dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a\",\"dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ\"]},\"src/codegen/common.sol\":{\"keccak256\":\"0xde2e4be7aca0c3e8251af4967910c5134427aae34480f4a443a0f0ef97304ca8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://646bd92523b977f3d71d23c858bcc1d60d22cdb3c0008debe68008dab535480c\",\"dweb:/ipfs/QmQe7Jn1xt6sjCc7R6RSnZXDbCpfsuK3WEHEc3ZXF66YaJ\"]},\"src/codegen/tables/ArchetypeModifier.sol\":{\"keccak256\":\"0x2774f0bce106cb276fb82b29eb863105ffa4f3e39f5c4f68e1859ad017868d69\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c97bd37991895be1a497eb86c280ee4e77d3d8f2c189a99dc262302296da3360\",\"dweb:/ipfs/QmV9TUcUThRPqdwfDVN4BrqYWzZNVCnbGappRfEAaZHsGx\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/","@latticexyz/=node_modules/@latticexyz/","@openzeppelin/=node_modules/@openzeppelin/","base/=src/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","solmate/=node_modules/solmate/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/codegen/tables/ArchetypeModifier.sol":"ArchetypeModifier"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2","urls":["bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0","dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40","urls":["bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91","dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85","urls":["bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4","dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394","urls":["bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53","dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64","urls":["bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905","dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c","urls":["bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6","dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09","urls":["bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc","dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275","urls":["bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754","dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572","urls":["bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3","dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152","urls":["bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e","dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3","urls":["bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea","dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a","urls":["bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a","dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ"],"license":"MIT"},"src/codegen/common.sol":{"keccak256":"0xde2e4be7aca0c3e8251af4967910c5134427aae34480f4a443a0f0ef97304ca8","urls":["bzz-raw://646bd92523b977f3d71d23c858bcc1d60d22cdb3c0008debe68008dab535480c","dweb:/ipfs/QmQe7Jn1xt6sjCc7R6RSnZXDbCpfsuK3WEHEc3ZXF66YaJ"],"license":"MIT"},"src/codegen/tables/ArchetypeModifier.sol":{"keccak256":"0x2774f0bce106cb276fb82b29eb863105ffa4f3e39f5c4f68e1859ad017868d69","urls":["bzz-raw://c97bd37991895be1a497eb86c280ee4e77d3d8f2c189a99dc262302296da3360","dweb:/ipfs/QmV9TUcUThRPqdwfDVN4BrqYWzZNVCnbGappRfEAaZHsGx"],"license":"MIT"}},"version":1},"ast":{"absolutePath":"src/codegen/tables/ArchetypeModifier.sol","id":90045,"exportedSymbols":{"ArchetypeModifier":[90044],"ArchetypeModifierData":[88235],"Bytes":[7243],"CombatArchetypes":[87309],"EncodeArray":[26427],"EncodedLengths":[7251],"EncodedLengthsLib":[7669],"FieldLayout":[7885],"IStore":[8658],"Memory":[9482],"ResourceId":[9486],"Schema":[9581],"SliceLib":[10192],"StoreCore":[12701],"StoreSwitch":[14558]},"nodeType":"SourceUnit","src":"32:15361:179","nodes":[{"id":88201,"nodeType":"PragmaDirective","src":"32:25:179","nodes":[],"literals":["solidity",">=","0.8",".24"]},{"id":88203,"nodeType":"ImportDirective","src":"134:58:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/IStore.sol","file":"@latticexyz/store/src/IStore.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":8659,"symbolAliases":[{"foreign":{"id":88202,"name":"IStore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8658,"src":"143:6:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88205,"nodeType":"ImportDirective","src":"193:68:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/StoreSwitch.sol","file":"@latticexyz/store/src/StoreSwitch.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":14559,"symbolAliases":[{"foreign":{"id":88204,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"202:11:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88207,"nodeType":"ImportDirective","src":"262:64:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/StoreCore.sol","file":"@latticexyz/store/src/StoreCore.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":13234,"symbolAliases":[{"foreign":{"id":88206,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"271:9:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88209,"nodeType":"ImportDirective","src":"327:56:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/Bytes.sol","file":"@latticexyz/store/src/Bytes.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":7244,"symbolAliases":[{"foreign":{"id":88208,"name":"Bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7243,"src":"336:5:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88211,"nodeType":"ImportDirective","src":"384:58:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/Memory.sol","file":"@latticexyz/store/src/Memory.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":9483,"symbolAliases":[{"foreign":{"id":88210,"name":"Memory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9482,"src":"393:6:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88213,"nodeType":"ImportDirective","src":"443:59:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/Slice.sol","file":"@latticexyz/store/src/Slice.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":10290,"symbolAliases":[{"foreign":{"id":88212,"name":"SliceLib","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":10192,"src":"452:8:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88215,"nodeType":"ImportDirective","src":"503:79:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol","file":"@latticexyz/store/src/tightcoder/EncodeArray.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":26428,"symbolAliases":[{"foreign":{"id":88214,"name":"EncodeArray","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26427,"src":"512:11:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88217,"nodeType":"ImportDirective","src":"583:68:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/FieldLayout.sol","file":"@latticexyz/store/src/FieldLayout.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":8362,"symbolAliases":[{"foreign":{"id":88216,"name":"FieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7885,"src":"592:11:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88219,"nodeType":"ImportDirective","src":"652:58:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/Schema.sol","file":"@latticexyz/store/src/Schema.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":10058,"symbolAliases":[{"foreign":{"id":88218,"name":"Schema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9581,"src":"661:6:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88222,"nodeType":"ImportDirective","src":"711:93:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/EncodedLengths.sol","file":"@latticexyz/store/src/EncodedLengths.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":7873,"symbolAliases":[{"foreign":{"id":88220,"name":"EncodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7251,"src":"720:14:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":88221,"name":"EncodedLengthsLib","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7669,"src":"736:17:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88224,"nodeType":"ImportDirective","src":"805:66:179","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/ResourceId.sol","file":"@latticexyz/store/src/ResourceId.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":9568,"symbolAliases":[{"foreign":{"id":88223,"name":"ResourceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9486,"src":"814:10:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88226,"nodeType":"ImportDirective","src":"894:51:179","nodes":[],"absolutePath":"src/codegen/common.sol","file":"./../common.sol","nameLocation":"-1:-1:-1","scope":90045,"sourceUnit":87322,"symbolAliases":[{"foreign":{"id":88225,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"903:16:179","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":88235,"nodeType":"StructDefinition","src":"947:121:179","nodes":[],"canonicalName":"ArchetypeModifierData","members":[{"constant":false,"id":88228,"mutability":"mutable","name":"mod","nameLocation":"986:3:179","nodeType":"VariableDeclaration","scope":88235,"src":"980:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":88227,"name":"int32","nodeType":"ElementaryTypeName","src":"980:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"},{"constant":false,"id":88231,"mutability":"mutable","name":"attackerArchetype","nameLocation":"1010:17:179","nodeType":"VariableDeclaration","scope":88235,"src":"993:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88230,"nodeType":"UserDefinedTypeName","pathNode":{"id":88229,"name":"CombatArchetypes","nameLocations":["993:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"993:16:179"},"referencedDeclaration":87309,"src":"993:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88234,"mutability":"mutable","name":"defenderArchetype","nameLocation":"1048:17:179","nodeType":"VariableDeclaration","scope":88235,"src":"1031:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88233,"nodeType":"UserDefinedTypeName","pathNode":{"id":88232,"name":"CombatArchetypes","nameLocations":["1031:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"1031:16:179"},"referencedDeclaration":87309,"src":"1031:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"name":"ArchetypeModifierData","nameLocation":"954:21:179","scope":90045,"visibility":"public"},{"id":90044,"nodeType":"ContractDefinition","src":"1070:14322:179","nodes":[{"id":88242,"nodeType":"VariableDeclaration","src":"1230:114:179","nodes":[],"constant":true,"mutability":"constant","name":"_tableId","nameLocation":"1250:8:179","scope":90044,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":88237,"nodeType":"UserDefinedTypeName","pathNode":{"id":88236,"name":"ResourceId","nameLocations":["1230:10:179"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"1230:10:179"},"referencedDeclaration":9486,"src":"1230:10:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"value":{"arguments":[{"hexValue":"307837343632303030303030303030303030303030303030303030303030303030303431373236333638363537343739373036353464366636343639363636393635","id":88240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1277:66:179","typeDescriptions":{"typeIdentifier":"t_rational_52641441448007182715604765737134514260651048981309762198229108702774617860453_by_1","typeString":"int_const 5264...(69 digits omitted)...0453"},"value":"0x746200000000000000000000000000004172636865747970654d6f6469666965"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_52641441448007182715604765737134514260651048981309762198229108702774617860453_by_1","typeString":"int_const 5264...(69 digits omitted)...0453"}],"expression":{"id":88238,"name":"ResourceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9486,"src":"1261:10:179","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_ResourceId_$9486_$","typeString":"type(ResourceId)"}},"id":88239,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1272:4:179","memberName":"wrap","nodeType":"MemberAccess","src":"1261:15:179","typeDescriptions":{"typeIdentifier":"t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_ResourceId_$9486_$","typeString":"function (bytes32) pure returns (ResourceId)"}},"id":88241,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1261:83:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"id":88249,"nodeType":"VariableDeclaration","src":"1349:124:179","nodes":[],"constant":true,"mutability":"constant","name":"_fieldLayout","nameLocation":"1370:12:179","scope":90044,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},"typeName":{"id":88244,"nodeType":"UserDefinedTypeName","pathNode":{"id":88243,"name":"FieldLayout","nameLocations":["1349:11:179"],"nodeType":"IdentifierPath","referencedDeclaration":7885,"src":"1349:11:179"},"referencedDeclaration":7885,"src":"1349:11:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"value":{"arguments":[{"hexValue":"307830303036303330303034303130313030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030","id":88247,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1406:66:179","typeDescriptions":{"typeIdentifier":"t_rational_10621788049372827420465396564530737163735664772598812679993747556343480320_by_1","typeString":"int_const 1062...(66 digits omitted)...0320"},"value":"0x0006030004010100000000000000000000000000000000000000000000000000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_10621788049372827420465396564530737163735664772598812679993747556343480320_by_1","typeString":"int_const 1062...(66 digits omitted)...0320"}],"expression":{"id":88245,"name":"FieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7885,"src":"1389:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_FieldLayout_$7885_$","typeString":"type(FieldLayout)"}},"id":88246,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1401:4:179","memberName":"wrap","nodeType":"MemberAccess","src":"1389:16:179","typeDescriptions":{"typeIdentifier":"t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_FieldLayout_$7885_$","typeString":"function (bytes32) pure returns (FieldLayout)"}},"id":88248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1389:84:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"visibility":"internal"},{"id":88256,"nodeType":"VariableDeclaration","src":"1524:108:179","nodes":[],"constant":true,"mutability":"constant","name":"_keySchema","nameLocation":"1540:10:179","scope":90044,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},"typeName":{"id":88251,"nodeType":"UserDefinedTypeName","pathNode":{"id":88250,"name":"Schema","nameLocations":["1524:6:179"],"nodeType":"IdentifierPath","referencedDeclaration":9581,"src":"1524:6:179"},"referencedDeclaration":9581,"src":"1524:6:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},"value":{"arguments":[{"hexValue":"307830303032303230303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030","id":88254,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1565:66:179","typeDescriptions":{"typeIdentifier":"t_rational_3547497622250349786741464513210391082559870011695578689353537451032838144_by_1","typeString":"int_const 3547...(65 digits omitted)...8144"},"value":"0x0002020000000000000000000000000000000000000000000000000000000000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3547497622250349786741464513210391082559870011695578689353537451032838144_by_1","typeString":"int_const 3547...(65 digits omitted)...8144"}],"expression":{"id":88252,"name":"Schema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9581,"src":"1553:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_Schema_$9581_$","typeString":"type(Schema)"}},"id":88253,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1560:4:179","memberName":"wrap","nodeType":"MemberAccess","src":"1553:11:179","typeDescriptions":{"typeIdentifier":"t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_Schema_$9581_$","typeString":"function (bytes32) pure returns (Schema)"}},"id":88255,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1553:79:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},"visibility":"internal"},{"id":88263,"nodeType":"VariableDeclaration","src":"1691:110:179","nodes":[],"constant":true,"mutability":"constant","name":"_valueSchema","nameLocation":"1707:12:179","scope":90044,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},"typeName":{"id":88258,"nodeType":"UserDefinedTypeName","pathNode":{"id":88257,"name":"Schema","nameLocations":["1691:6:179"],"nodeType":"IdentifierPath","referencedDeclaration":9581,"src":"1691:6:179"},"referencedDeclaration":9581,"src":"1691:6:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},"value":{"arguments":[{"hexValue":"307830303036303330303233303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030","id":88261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1734:66:179","typeDescriptions":{"typeIdentifier":"t_rational_10621791313640886068363623699175311099787387869498563927614018681311330304_by_1","typeString":"int_const 1062...(66 digits omitted)...0304"},"value":"0x0006030023000000000000000000000000000000000000000000000000000000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_10621791313640886068363623699175311099787387869498563927614018681311330304_by_1","typeString":"int_const 1062...(66 digits omitted)...0304"}],"expression":{"id":88259,"name":"Schema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9581,"src":"1722:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_userDefinedValueType$_Schema_$9581_$","typeString":"type(Schema)"}},"id":88260,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1729:4:179","memberName":"wrap","nodeType":"MemberAccess","src":"1722:11:179","typeDescriptions":{"typeIdentifier":"t_function_wrap_pure$_t_bytes32_$returns$_t_userDefinedValueType$_Schema_$9581_$","typeString":"function (bytes32) pure returns (Schema)"}},"id":88262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1722:79:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},"visibility":"internal"},{"id":88291,"nodeType":"FunctionDefinition","src":"1936:169:179","nodes":[],"body":{"id":88290,"nodeType":"Block","src":"2008:97:179","nodes":[],"statements":[{"expression":{"id":88276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":88270,"name":"keyNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88268,"src":"2014:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":88274,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2038:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88273,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"2025:12:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (string memory[] memory)"},"typeName":{"baseType":{"id":88271,"name":"string","nodeType":"ElementaryTypeName","src":"2029:6:179","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":88272,"nodeType":"ArrayTypeName","src":"2029:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}}},"id":88275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2025:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"src":"2014:26:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88277,"nodeType":"ExpressionStatement","src":"2014:26:179"},{"expression":{"id":88282,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88278,"name":"keyNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88268,"src":"2046:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88280,"indexExpression":{"hexValue":"30","id":88279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2055:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2046:11:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"61747461636b6572","id":88281,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2060:10:179","typeDescriptions":{"typeIdentifier":"t_stringliteral_97154a62cd5641a577e092d2eee7e39fcb3333dc595371a4303417dae0c2c006","typeString":"literal_string \"attacker\""},"value":"attacker"},"src":"2046:24:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":88283,"nodeType":"ExpressionStatement","src":"2046:24:179"},{"expression":{"id":88288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88284,"name":"keyNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88268,"src":"2076:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88286,"indexExpression":{"hexValue":"31","id":88285,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2085:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2076:11:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"646566656e646572","id":88287,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2090:10:179","typeDescriptions":{"typeIdentifier":"t_stringliteral_ea47b74917f549e8fb7b30be52435f56b0a4548a5df697773d6d54875754db77","typeString":"literal_string \"defender\""},"value":"defender"},"src":"2076:24:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":88289,"nodeType":"ExpressionStatement","src":"2076:24:179"}]},"documentation":{"id":88264,"nodeType":"StructuredDocumentation","src":"1806:127:179","text":" @notice Get the table's key field names.\n @return keyNames An array of strings with the names of key fields."},"implemented":true,"kind":"function","modifiers":[],"name":"getKeyNames","nameLocation":"1945:11:179","parameters":{"id":88265,"nodeType":"ParameterList","parameters":[],"src":"1956:2:179"},"returnParameters":{"id":88269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88268,"mutability":"mutable","name":"keyNames","nameLocation":"1998:8:179","nodeType":"VariableDeclaration","scope":88291,"src":"1982:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":88266,"name":"string","nodeType":"ElementaryTypeName","src":"1982:6:179","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":88267,"nodeType":"ArrayTypeName","src":"1982:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"1981:26:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":88325,"nodeType":"FunctionDefinition","src":"2245:224:179","nodes":[],"body":{"id":88324,"nodeType":"Block","src":"2321:148:179","nodes":[],"statements":[{"expression":{"id":88304,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":88298,"name":"fieldNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88296,"src":"2327:10:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":88302,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2353:1:179","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"}],"id":88301,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"2340:12:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (string memory[] memory)"},"typeName":{"baseType":{"id":88299,"name":"string","nodeType":"ElementaryTypeName","src":"2344:6:179","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":88300,"nodeType":"ArrayTypeName","src":"2344:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}}},"id":88303,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2340:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"src":"2327:28:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88305,"nodeType":"ExpressionStatement","src":"2327:28:179"},{"expression":{"id":88310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88306,"name":"fieldNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88296,"src":"2361:10:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88308,"indexExpression":{"hexValue":"30","id":88307,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2372:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2361:13:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"6d6f64","id":88309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2377:5:179","typeDescriptions":{"typeIdentifier":"t_stringliteral_e259e1a311bf6a08d0522921a404fe21ee4238e42bc24b5e3e122f48a721bc31","typeString":"literal_string \"mod\""},"value":"mod"},"src":"2361:21:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":88311,"nodeType":"ExpressionStatement","src":"2361:21:179"},{"expression":{"id":88316,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88312,"name":"fieldNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88296,"src":"2388:10:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88314,"indexExpression":{"hexValue":"31","id":88313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2399:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2388:13:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"61747461636b6572417263686574797065","id":88315,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2404:19:179","typeDescriptions":{"typeIdentifier":"t_stringliteral_0b82d641ba86109f5bdcbab259e737add512f573f8e2d090031e3a18f7543f15","typeString":"literal_string \"attackerArchetype\""},"value":"attackerArchetype"},"src":"2388:35:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":88317,"nodeType":"ExpressionStatement","src":"2388:35:179"},{"expression":{"id":88322,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88318,"name":"fieldNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88296,"src":"2429:10:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":88320,"indexExpression":{"hexValue":"32","id":88319,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2440:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2429:13:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"646566656e646572417263686574797065","id":88321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2445:19:179","typeDescriptions":{"typeIdentifier":"t_stringliteral_ee90723a69039a5b878950b1fbd7a9ac1c00a50d6724f1c1e817a988dcbe68eb","typeString":"literal_string \"defenderArchetype\""},"value":"defenderArchetype"},"src":"2429:35:179","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":88323,"nodeType":"ExpressionStatement","src":"2429:35:179"}]},"documentation":{"id":88292,"nodeType":"StructuredDocumentation","src":"2109:133:179","text":" @notice Get the table's value field names.\n @return fieldNames An array of strings with the names of value fields."},"implemented":true,"kind":"function","modifiers":[],"name":"getFieldNames","nameLocation":"2254:13:179","parameters":{"id":88293,"nodeType":"ParameterList","parameters":[],"src":"2267:2:179"},"returnParameters":{"id":88297,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88296,"mutability":"mutable","name":"fieldNames","nameLocation":"2309:10:179","nodeType":"VariableDeclaration","scope":88325,"src":"2293:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":88294,"name":"string","nodeType":"ElementaryTypeName","src":"2293:6:179","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":88295,"nodeType":"ArrayTypeName","src":"2293:8:179","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"2292:28:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":88343,"nodeType":"FunctionDefinition","src":"2534:147:179","nodes":[],"body":{"id":88342,"nodeType":"Block","src":"2563:118:179","nodes":[],"statements":[{"expression":{"arguments":[{"id":88332,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"2595:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88333,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"2605:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},{"id":88334,"name":"_keySchema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88256,"src":"2619:10:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},{"id":88335,"name":"_valueSchema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88263,"src":"2631:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},{"arguments":[],"expression":{"argumentTypes":[],"id":88336,"name":"getKeyNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88291,"src":"2645:11:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function () pure returns (string memory[] memory)"}},"id":88337,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2645:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":88338,"name":"getFieldNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88325,"src":"2660:13:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function () pure returns (string memory[] memory)"}},"id":88339,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2660:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"},{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}],"expression":{"id":88329,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"2569:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":88331,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2581:13:179","memberName":"registerTable","nodeType":"MemberAccess","referencedDeclaration":13582,"src":"2569:25:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_userDefinedValueType$_FieldLayout_$7885_$_t_userDefinedValueType$_Schema_$9581_$_t_userDefinedValueType$_Schema_$9581_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (ResourceId,FieldLayout,Schema,Schema,string memory[] memory,string memory[] memory)"}},"id":88340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2569:107:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":88341,"nodeType":"ExpressionStatement","src":"2569:107:179"}]},"documentation":{"id":88326,"nodeType":"StructuredDocumentation","src":"2473:58:179","text":" @notice Register the table with its config."},"implemented":true,"kind":"function","modifiers":[],"name":"register","nameLocation":"2543:8:179","parameters":{"id":88327,"nodeType":"ParameterList","parameters":[],"src":"2551:2:179"},"returnParameters":{"id":88328,"nodeType":"ParameterList","parameters":[],"src":"2563:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":88361,"nodeType":"FunctionDefinition","src":"2746:146:179","nodes":[],"body":{"id":88360,"nodeType":"Block","src":"2776:116:179","nodes":[],"statements":[{"expression":{"arguments":[{"id":88350,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"2806:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88351,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"2816:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},{"id":88352,"name":"_keySchema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88256,"src":"2830:10:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},{"id":88353,"name":"_valueSchema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88263,"src":"2842:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},{"arguments":[],"expression":{"argumentTypes":[],"id":88354,"name":"getKeyNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88291,"src":"2856:11:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function () pure returns (string memory[] memory)"}},"id":88355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2856:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":88356,"name":"getFieldNames","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88325,"src":"2871:13:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function () pure returns (string memory[] memory)"}},"id":88357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2871:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"},{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}],"expression":{"id":88347,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"2782:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":88349,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2792:13:179","memberName":"registerTable","nodeType":"MemberAccess","referencedDeclaration":11243,"src":"2782:23:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_userDefinedValueType$_FieldLayout_$7885_$_t_userDefinedValueType$_Schema_$9581_$_t_userDefinedValueType$_Schema_$9581_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (ResourceId,FieldLayout,Schema,Schema,string memory[] memory,string memory[] memory)"}},"id":88358,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2782:105:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":88359,"nodeType":"ExpressionStatement","src":"2782:105:179"}]},"documentation":{"id":88344,"nodeType":"StructuredDocumentation","src":"2685:58:179","text":" @notice Register the table with its config."},"implemented":true,"kind":"function","modifiers":[],"name":"_register","nameLocation":"2755:9:179","parameters":{"id":88345,"nodeType":"ParameterList","parameters":[],"src":"2764:2:179"},"returnParameters":{"id":88346,"nodeType":"ParameterList","parameters":[],"src":"2776:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":88437,"nodeType":"FunctionDefinition","src":"2930:398:179","nodes":[],"body":{"id":88436,"nodeType":"Block","src":"3034:294:179","nodes":[],"statements":[{"assignments":[88377],"declarations":[{"constant":false,"id":88377,"mutability":"mutable","name":"_keyTuple","nameLocation":"3057:9:179","nodeType":"VariableDeclaration","scope":88436,"src":"3040:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88375,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3040:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88376,"nodeType":"ArrayTypeName","src":"3040:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88383,"initialValue":{"arguments":[{"hexValue":"32","id":88381,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3083:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88380,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3069:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88378,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3073:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88379,"nodeType":"ArrayTypeName","src":"3073:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88382,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3069:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3040:45:179"},{"expression":{"id":88397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88384,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88377,"src":"3091:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88386,"indexExpression":{"hexValue":"30","id":88385,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3101:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3091:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88393,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88365,"src":"3128:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88392,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3122:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88391,"name":"uint8","nodeType":"ElementaryTypeName","src":"3122:5:179","typeDescriptions":{}}},"id":88394,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3122:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88390,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3114:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88389,"name":"uint256","nodeType":"ElementaryTypeName","src":"3114:7:179","typeDescriptions":{}}},"id":88395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3114:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88388,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3106:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88387,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3106:7:179","typeDescriptions":{}}},"id":88396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3106:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3091:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88398,"nodeType":"ExpressionStatement","src":"3091:48:179"},{"expression":{"id":88412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88399,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88377,"src":"3145:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88401,"indexExpression":{"hexValue":"31","id":88400,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3155:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3145:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88408,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88368,"src":"3182:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88407,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3176:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88406,"name":"uint8","nodeType":"ElementaryTypeName","src":"3176:5:179","typeDescriptions":{}}},"id":88409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3176:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88405,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3168:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88404,"name":"uint256","nodeType":"ElementaryTypeName","src":"3168:7:179","typeDescriptions":{}}},"id":88410,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3168:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88403,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3160:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88402,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3160:7:179","typeDescriptions":{}}},"id":88411,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3160:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3145:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88413,"nodeType":"ExpressionStatement","src":"3145:48:179"},{"assignments":[88415],"declarations":[{"constant":false,"id":88415,"mutability":"mutable","name":"_blob","nameLocation":"3208:5:179","nodeType":"VariableDeclaration","scope":88436,"src":"3200:13:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":88414,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3200:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":88423,"initialValue":{"arguments":[{"id":88418,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"3243:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88419,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88377,"src":"3253:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"30","id":88420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3264:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":88421,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"3267:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88416,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"3216:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":88417,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3228:14:179","memberName":"getStaticField","nodeType":"MemberAccess","referencedDeclaration":14319,"src":"3216:26:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes32_$","typeString":"function (ResourceId,bytes32[] memory,uint8,FieldLayout) view returns (bytes32)"}},"id":88422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3216:64:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"3200:80:179"},{"expression":{"components":[{"arguments":[{"arguments":[{"arguments":[{"id":88430,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88415,"src":"3314:5:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":88429,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3307:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes4_$","typeString":"type(bytes4)"},"typeName":{"id":88428,"name":"bytes4","nodeType":"ElementaryTypeName","src":"3307:6:179","typeDescriptions":{}}},"id":88431,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3307:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"id":88427,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3300:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":88426,"name":"uint32","nodeType":"ElementaryTypeName","src":"3300:6:179","typeDescriptions":{}}},"id":88432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3300:21:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":88425,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3294:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":88424,"name":"int32","nodeType":"ElementaryTypeName","src":"3294:5:179","typeDescriptions":{}}},"id":88433,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3294:28:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"id":88434,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3293:30:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"functionReturnParameters":88372,"id":88435,"nodeType":"Return","src":"3286:37:179"}]},"documentation":{"id":88362,"nodeType":"StructuredDocumentation","src":"2896:31:179","text":" @notice Get mod."},"implemented":true,"kind":"function","modifiers":[],"name":"getMod","nameLocation":"2939:6:179","parameters":{"id":88369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88365,"mutability":"mutable","name":"attacker","nameLocation":"2963:8:179","nodeType":"VariableDeclaration","scope":88437,"src":"2946:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88364,"nodeType":"UserDefinedTypeName","pathNode":{"id":88363,"name":"CombatArchetypes","nameLocations":["2946:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"2946:16:179"},"referencedDeclaration":87309,"src":"2946:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88368,"mutability":"mutable","name":"defender","nameLocation":"2990:8:179","nodeType":"VariableDeclaration","scope":88437,"src":"2973:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88367,"nodeType":"UserDefinedTypeName","pathNode":{"id":88366,"name":"CombatArchetypes","nameLocations":["2973:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"2973:16:179"},"referencedDeclaration":87309,"src":"2973:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"2945:54:179"},"returnParameters":{"id":88372,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88371,"mutability":"mutable","name":"mod","nameLocation":"3029:3:179","nodeType":"VariableDeclaration","scope":88437,"src":"3023:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":88370,"name":"int32","nodeType":"ElementaryTypeName","src":"3023:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"3022:11:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":88513,"nodeType":"FunctionDefinition","src":"3366:397:179","nodes":[],"body":{"id":88512,"nodeType":"Block","src":"3471:292:179","nodes":[],"statements":[{"assignments":[88453],"declarations":[{"constant":false,"id":88453,"mutability":"mutable","name":"_keyTuple","nameLocation":"3494:9:179","nodeType":"VariableDeclaration","scope":88512,"src":"3477:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88451,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3477:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88452,"nodeType":"ArrayTypeName","src":"3477:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88459,"initialValue":{"arguments":[{"hexValue":"32","id":88457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3520:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3506:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88454,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3510:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88455,"nodeType":"ArrayTypeName","src":"3510:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3506:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3477:45:179"},{"expression":{"id":88473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88460,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88453,"src":"3528:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88462,"indexExpression":{"hexValue":"30","id":88461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3538:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3528:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88469,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88441,"src":"3565:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88468,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3559:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88467,"name":"uint8","nodeType":"ElementaryTypeName","src":"3559:5:179","typeDescriptions":{}}},"id":88470,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3559:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3551:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88465,"name":"uint256","nodeType":"ElementaryTypeName","src":"3551:7:179","typeDescriptions":{}}},"id":88471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3551:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88464,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3543:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88463,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3543:7:179","typeDescriptions":{}}},"id":88472,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3543:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3528:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88474,"nodeType":"ExpressionStatement","src":"3528:48:179"},{"expression":{"id":88488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88475,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88453,"src":"3582:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88477,"indexExpression":{"hexValue":"31","id":88476,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3592:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3582:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88484,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88444,"src":"3619:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88483,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3613:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88482,"name":"uint8","nodeType":"ElementaryTypeName","src":"3613:5:179","typeDescriptions":{}}},"id":88485,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3613:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88481,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3605:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88480,"name":"uint256","nodeType":"ElementaryTypeName","src":"3605:7:179","typeDescriptions":{}}},"id":88486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3605:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88479,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3597:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88478,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3597:7:179","typeDescriptions":{}}},"id":88487,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3597:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3582:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88489,"nodeType":"ExpressionStatement","src":"3582:48:179"},{"assignments":[88491],"declarations":[{"constant":false,"id":88491,"mutability":"mutable","name":"_blob","nameLocation":"3645:5:179","nodeType":"VariableDeclaration","scope":88512,"src":"3637:13:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":88490,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3637:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":88499,"initialValue":{"arguments":[{"id":88494,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"3678:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88495,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88453,"src":"3688:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"30","id":88496,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3699:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":88497,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"3702:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88492,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"3653:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":88493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3663:14:179","memberName":"getStaticField","nodeType":"MemberAccess","referencedDeclaration":12483,"src":"3653:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes32_$","typeString":"function (ResourceId,bytes32[] memory,uint8,FieldLayout) view returns (bytes32)"}},"id":88498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3653:62:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"3637:78:179"},{"expression":{"components":[{"arguments":[{"arguments":[{"arguments":[{"id":88506,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88491,"src":"3749:5:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":88505,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3742:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes4_$","typeString":"type(bytes4)"},"typeName":{"id":88504,"name":"bytes4","nodeType":"ElementaryTypeName","src":"3742:6:179","typeDescriptions":{}}},"id":88507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3742:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"id":88503,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3735:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":88502,"name":"uint32","nodeType":"ElementaryTypeName","src":"3735:6:179","typeDescriptions":{}}},"id":88508,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3735:21:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":88501,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3729:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":88500,"name":"int32","nodeType":"ElementaryTypeName","src":"3729:5:179","typeDescriptions":{}}},"id":88509,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3729:28:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"id":88510,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3728:30:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"functionReturnParameters":88448,"id":88511,"nodeType":"Return","src":"3721:37:179"}]},"documentation":{"id":88438,"nodeType":"StructuredDocumentation","src":"3332:31:179","text":" @notice Get mod."},"implemented":true,"kind":"function","modifiers":[],"name":"_getMod","nameLocation":"3375:7:179","parameters":{"id":88445,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88441,"mutability":"mutable","name":"attacker","nameLocation":"3400:8:179","nodeType":"VariableDeclaration","scope":88513,"src":"3383:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88440,"nodeType":"UserDefinedTypeName","pathNode":{"id":88439,"name":"CombatArchetypes","nameLocations":["3383:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"3383:16:179"},"referencedDeclaration":87309,"src":"3383:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88444,"mutability":"mutable","name":"defender","nameLocation":"3427:8:179","nodeType":"VariableDeclaration","scope":88513,"src":"3410:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88443,"nodeType":"UserDefinedTypeName","pathNode":{"id":88442,"name":"CombatArchetypes","nameLocations":["3410:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"3410:16:179"},"referencedDeclaration":87309,"src":"3410:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"3382:54:179"},"returnParameters":{"id":88448,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88447,"mutability":"mutable","name":"mod","nameLocation":"3466:3:179","nodeType":"VariableDeclaration","scope":88513,"src":"3460:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":88446,"name":"int32","nodeType":"ElementaryTypeName","src":"3460:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"3459:11:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":88581,"nodeType":"FunctionDefinition","src":"3801:350:179","nodes":[],"body":{"id":88580,"nodeType":"Block","src":"3891:260:179","nodes":[],"statements":[{"assignments":[88529],"declarations":[{"constant":false,"id":88529,"mutability":"mutable","name":"_keyTuple","nameLocation":"3914:9:179","nodeType":"VariableDeclaration","scope":88580,"src":"3897:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88527,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3897:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88528,"nodeType":"ArrayTypeName","src":"3897:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88535,"initialValue":{"arguments":[{"hexValue":"32","id":88533,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3940:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88532,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3926:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88530,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3930:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88531,"nodeType":"ArrayTypeName","src":"3930:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88534,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3926:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3897:45:179"},{"expression":{"id":88549,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88536,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88529,"src":"3948:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88538,"indexExpression":{"hexValue":"30","id":88537,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3958:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3948:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88545,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88517,"src":"3985:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3979:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88543,"name":"uint8","nodeType":"ElementaryTypeName","src":"3979:5:179","typeDescriptions":{}}},"id":88546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3979:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88542,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3971:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88541,"name":"uint256","nodeType":"ElementaryTypeName","src":"3971:7:179","typeDescriptions":{}}},"id":88547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3971:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88540,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3963:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88539,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3963:7:179","typeDescriptions":{}}},"id":88548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3963:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3948:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88550,"nodeType":"ExpressionStatement","src":"3948:48:179"},{"expression":{"id":88564,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88551,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88529,"src":"4002:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88553,"indexExpression":{"hexValue":"31","id":88552,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4012:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4002:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88560,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88520,"src":"4039:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88559,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4033:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88558,"name":"uint8","nodeType":"ElementaryTypeName","src":"4033:5:179","typeDescriptions":{}}},"id":88561,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4033:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88557,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4025:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88556,"name":"uint256","nodeType":"ElementaryTypeName","src":"4025:7:179","typeDescriptions":{}}},"id":88562,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4025:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88555,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4017:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88554,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4017:7:179","typeDescriptions":{}}},"id":88563,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4017:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4002:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88565,"nodeType":"ExpressionStatement","src":"4002:48:179"},{"expression":{"arguments":[{"id":88569,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"4084:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88570,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88529,"src":"4094:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"30","id":88571,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4105:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"arguments":[{"components":[{"id":88574,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88522,"src":"4126:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"id":88575,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"4125:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"}],"expression":{"id":88572,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4108:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":88573,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4112:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"4108:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":88576,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4108:23:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":88577,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"4133:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88566,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"4057:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":88568,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4069:14:179","memberName":"setStaticField","nodeType":"MemberAccess","referencedDeclaration":13893,"src":"4057:26:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,uint8,bytes memory,FieldLayout)"}},"id":88578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4057:89:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":88579,"nodeType":"ExpressionStatement","src":"4057:89:179"}]},"documentation":{"id":88514,"nodeType":"StructuredDocumentation","src":"3767:31:179","text":" @notice Set mod."},"implemented":true,"kind":"function","modifiers":[],"name":"setMod","nameLocation":"3810:6:179","parameters":{"id":88523,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88517,"mutability":"mutable","name":"attacker","nameLocation":"3834:8:179","nodeType":"VariableDeclaration","scope":88581,"src":"3817:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88516,"nodeType":"UserDefinedTypeName","pathNode":{"id":88515,"name":"CombatArchetypes","nameLocations":["3817:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"3817:16:179"},"referencedDeclaration":87309,"src":"3817:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88520,"mutability":"mutable","name":"defender","nameLocation":"3861:8:179","nodeType":"VariableDeclaration","scope":88581,"src":"3844:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88519,"nodeType":"UserDefinedTypeName","pathNode":{"id":88518,"name":"CombatArchetypes","nameLocations":["3844:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"3844:16:179"},"referencedDeclaration":87309,"src":"3844:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88522,"mutability":"mutable","name":"mod","nameLocation":"3877:3:179","nodeType":"VariableDeclaration","scope":88581,"src":"3871:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":88521,"name":"int32","nodeType":"ElementaryTypeName","src":"3871:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"3816:65:179"},"returnParameters":{"id":88524,"nodeType":"ParameterList","parameters":[],"src":"3891:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":88649,"nodeType":"FunctionDefinition","src":"4189:349:179","nodes":[],"body":{"id":88648,"nodeType":"Block","src":"4280:258:179","nodes":[],"statements":[{"assignments":[88597],"declarations":[{"constant":false,"id":88597,"mutability":"mutable","name":"_keyTuple","nameLocation":"4303:9:179","nodeType":"VariableDeclaration","scope":88648,"src":"4286:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88595,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4286:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88596,"nodeType":"ArrayTypeName","src":"4286:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88603,"initialValue":{"arguments":[{"hexValue":"32","id":88601,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4329:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88600,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"4315:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88598,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4319:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88599,"nodeType":"ArrayTypeName","src":"4319:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88602,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4315:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4286:45:179"},{"expression":{"id":88617,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88604,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88597,"src":"4337:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88606,"indexExpression":{"hexValue":"30","id":88605,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4347:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4337:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88613,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88585,"src":"4374:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88612,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4368:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88611,"name":"uint8","nodeType":"ElementaryTypeName","src":"4368:5:179","typeDescriptions":{}}},"id":88614,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4368:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88610,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4360:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88609,"name":"uint256","nodeType":"ElementaryTypeName","src":"4360:7:179","typeDescriptions":{}}},"id":88615,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4360:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4352:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88607,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4352:7:179","typeDescriptions":{}}},"id":88616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4352:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4337:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88618,"nodeType":"ExpressionStatement","src":"4337:48:179"},{"expression":{"id":88632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88619,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88597,"src":"4391:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88621,"indexExpression":{"hexValue":"31","id":88620,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4401:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4391:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88628,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88588,"src":"4428:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88627,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4422:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88626,"name":"uint8","nodeType":"ElementaryTypeName","src":"4422:5:179","typeDescriptions":{}}},"id":88629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4422:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4414:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88624,"name":"uint256","nodeType":"ElementaryTypeName","src":"4414:7:179","typeDescriptions":{}}},"id":88630,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4414:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88623,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4406:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88622,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4406:7:179","typeDescriptions":{}}},"id":88631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4406:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4391:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88633,"nodeType":"ExpressionStatement","src":"4391:48:179"},{"expression":{"arguments":[{"id":88637,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"4471:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88638,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88597,"src":"4481:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"30","id":88639,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4492:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"arguments":[{"components":[{"id":88642,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88590,"src":"4513:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"id":88643,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"4512:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"}],"expression":{"id":88640,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4495:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":88641,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4499:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"4495:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":88644,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4495:23:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":88645,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"4520:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88634,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"4446:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":88636,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4456:14:179","memberName":"setStaticField","nodeType":"MemberAccess","referencedDeclaration":11901,"src":"4446:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,uint8,bytes memory,FieldLayout)"}},"id":88646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4446:87:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":88647,"nodeType":"ExpressionStatement","src":"4446:87:179"}]},"documentation":{"id":88582,"nodeType":"StructuredDocumentation","src":"4155:31:179","text":" @notice Set mod."},"implemented":true,"kind":"function","modifiers":[],"name":"_setMod","nameLocation":"4198:7:179","parameters":{"id":88591,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88585,"mutability":"mutable","name":"attacker","nameLocation":"4223:8:179","nodeType":"VariableDeclaration","scope":88649,"src":"4206:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88584,"nodeType":"UserDefinedTypeName","pathNode":{"id":88583,"name":"CombatArchetypes","nameLocations":["4206:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"4206:16:179"},"referencedDeclaration":87309,"src":"4206:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88588,"mutability":"mutable","name":"defender","nameLocation":"4250:8:179","nodeType":"VariableDeclaration","scope":88649,"src":"4233:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88587,"nodeType":"UserDefinedTypeName","pathNode":{"id":88586,"name":"CombatArchetypes","nameLocations":["4233:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"4233:16:179"},"referencedDeclaration":87309,"src":"4233:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88590,"mutability":"mutable","name":"mod","nameLocation":"4266:3:179","nodeType":"VariableDeclaration","scope":88649,"src":"4260:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":88589,"name":"int32","nodeType":"ElementaryTypeName","src":"4260:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"4205:65:179"},"returnParameters":{"id":88592,"nodeType":"ParameterList","parameters":[],"src":"4280:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":88724,"nodeType":"FunctionDefinition","src":"4590:457:179","nodes":[],"body":{"id":88723,"nodeType":"Block","src":"4745:302:179","nodes":[],"statements":[{"assignments":[88666],"declarations":[{"constant":false,"id":88666,"mutability":"mutable","name":"_keyTuple","nameLocation":"4768:9:179","nodeType":"VariableDeclaration","scope":88723,"src":"4751:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88664,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4751:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88665,"nodeType":"ArrayTypeName","src":"4751:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88672,"initialValue":{"arguments":[{"hexValue":"32","id":88670,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4794:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88669,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"4780:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88667,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4784:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88668,"nodeType":"ArrayTypeName","src":"4784:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88671,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4780:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4751:45:179"},{"expression":{"id":88686,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88673,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88666,"src":"4802:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88675,"indexExpression":{"hexValue":"30","id":88674,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4812:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4802:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88682,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88653,"src":"4839:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88681,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4833:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88680,"name":"uint8","nodeType":"ElementaryTypeName","src":"4833:5:179","typeDescriptions":{}}},"id":88683,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4833:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4825:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88678,"name":"uint256","nodeType":"ElementaryTypeName","src":"4825:7:179","typeDescriptions":{}}},"id":88684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4825:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88677,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4817:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88676,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4817:7:179","typeDescriptions":{}}},"id":88685,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4817:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4802:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88687,"nodeType":"ExpressionStatement","src":"4802:48:179"},{"expression":{"id":88701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88688,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88666,"src":"4856:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88690,"indexExpression":{"hexValue":"31","id":88689,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4866:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4856:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88697,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88656,"src":"4893:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88696,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4887:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88695,"name":"uint8","nodeType":"ElementaryTypeName","src":"4887:5:179","typeDescriptions":{}}},"id":88698,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4887:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88694,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4879:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88693,"name":"uint256","nodeType":"ElementaryTypeName","src":"4879:7:179","typeDescriptions":{}}},"id":88699,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4879:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88692,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4871:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88691,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4871:7:179","typeDescriptions":{}}},"id":88700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4871:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"4856:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88702,"nodeType":"ExpressionStatement","src":"4856:48:179"},{"assignments":[88704],"declarations":[{"constant":false,"id":88704,"mutability":"mutable","name":"_blob","nameLocation":"4919:5:179","nodeType":"VariableDeclaration","scope":88723,"src":"4911:13:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":88703,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4911:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":88712,"initialValue":{"arguments":[{"id":88707,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"4954:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88708,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88666,"src":"4964:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"31","id":88709,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4975:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"id":88710,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"4978:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88705,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"4927:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":88706,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4939:14:179","memberName":"getStaticField","nodeType":"MemberAccess","referencedDeclaration":14319,"src":"4927:26:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes32_$","typeString":"function (ResourceId,bytes32[] memory,uint8,FieldLayout) view returns (bytes32)"}},"id":88711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4927:64:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"4911:80:179"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"id":88718,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88704,"src":"5034:5:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":88717,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5027:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":88716,"name":"bytes1","nodeType":"ElementaryTypeName","src":"5027:6:179","typeDescriptions":{}}},"id":88719,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5027:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":88715,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5021:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88714,"name":"uint8","nodeType":"ElementaryTypeName","src":"5021:5:179","typeDescriptions":{}}},"id":88720,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5021:20:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88713,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"5004:16:179","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_CombatArchetypes_$87309_$","typeString":"type(enum CombatArchetypes)"}},"id":88721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5004:38:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"functionReturnParameters":88661,"id":88722,"nodeType":"Return","src":"4997:45:179"}]},"documentation":{"id":88650,"nodeType":"StructuredDocumentation","src":"4542:45:179","text":" @notice Get attackerArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"getAttackerArchetype","nameLocation":"4599:20:179","parameters":{"id":88657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88653,"mutability":"mutable","name":"attacker","nameLocation":"4642:8:179","nodeType":"VariableDeclaration","scope":88724,"src":"4625:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88652,"nodeType":"UserDefinedTypeName","pathNode":{"id":88651,"name":"CombatArchetypes","nameLocations":["4625:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"4625:16:179"},"referencedDeclaration":87309,"src":"4625:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88656,"mutability":"mutable","name":"defender","nameLocation":"4673:8:179","nodeType":"VariableDeclaration","scope":88724,"src":"4656:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88655,"nodeType":"UserDefinedTypeName","pathNode":{"id":88654,"name":"CombatArchetypes","nameLocations":["4656:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"4656:16:179"},"referencedDeclaration":87309,"src":"4656:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"4619:66:179"},"returnParameters":{"id":88661,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88660,"mutability":"mutable","name":"attackerArchetype","nameLocation":"4726:17:179","nodeType":"VariableDeclaration","scope":88724,"src":"4709:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88659,"nodeType":"UserDefinedTypeName","pathNode":{"id":88658,"name":"CombatArchetypes","nameLocations":["4709:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"4709:16:179"},"referencedDeclaration":87309,"src":"4709:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"4708:36:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":88799,"nodeType":"FunctionDefinition","src":"5099:456:179","nodes":[],"body":{"id":88798,"nodeType":"Block","src":"5255:300:179","nodes":[],"statements":[{"assignments":[88741],"declarations":[{"constant":false,"id":88741,"mutability":"mutable","name":"_keyTuple","nameLocation":"5278:9:179","nodeType":"VariableDeclaration","scope":88798,"src":"5261:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88739,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5261:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88740,"nodeType":"ArrayTypeName","src":"5261:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88747,"initialValue":{"arguments":[{"hexValue":"32","id":88745,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5304:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88744,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"5290:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88742,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5294:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88743,"nodeType":"ArrayTypeName","src":"5294:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88746,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5290:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5261:45:179"},{"expression":{"id":88761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88748,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88741,"src":"5312:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88750,"indexExpression":{"hexValue":"30","id":88749,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5322:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5312:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88757,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88728,"src":"5349:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88756,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5343:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88755,"name":"uint8","nodeType":"ElementaryTypeName","src":"5343:5:179","typeDescriptions":{}}},"id":88758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5343:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88754,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5335:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88753,"name":"uint256","nodeType":"ElementaryTypeName","src":"5335:7:179","typeDescriptions":{}}},"id":88759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5335:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88752,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5327:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88751,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5327:7:179","typeDescriptions":{}}},"id":88760,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5327:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"5312:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88762,"nodeType":"ExpressionStatement","src":"5312:48:179"},{"expression":{"id":88776,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88763,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88741,"src":"5366:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88765,"indexExpression":{"hexValue":"31","id":88764,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5376:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5366:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88772,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88731,"src":"5403:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88771,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5397:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88770,"name":"uint8","nodeType":"ElementaryTypeName","src":"5397:5:179","typeDescriptions":{}}},"id":88773,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5397:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88769,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5389:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88768,"name":"uint256","nodeType":"ElementaryTypeName","src":"5389:7:179","typeDescriptions":{}}},"id":88774,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5389:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88767,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5381:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88766,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5381:7:179","typeDescriptions":{}}},"id":88775,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5381:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"5366:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88777,"nodeType":"ExpressionStatement","src":"5366:48:179"},{"assignments":[88779],"declarations":[{"constant":false,"id":88779,"mutability":"mutable","name":"_blob","nameLocation":"5429:5:179","nodeType":"VariableDeclaration","scope":88798,"src":"5421:13:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":88778,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5421:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":88787,"initialValue":{"arguments":[{"id":88782,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"5462:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88783,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88741,"src":"5472:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"31","id":88784,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5483:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"id":88785,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"5486:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88780,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"5437:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":88781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5447:14:179","memberName":"getStaticField","nodeType":"MemberAccess","referencedDeclaration":12483,"src":"5437:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes32_$","typeString":"function (ResourceId,bytes32[] memory,uint8,FieldLayout) view returns (bytes32)"}},"id":88786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5437:62:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"5421:78:179"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"id":88793,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88779,"src":"5542:5:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":88792,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5535:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":88791,"name":"bytes1","nodeType":"ElementaryTypeName","src":"5535:6:179","typeDescriptions":{}}},"id":88794,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5535:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":88790,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5529:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88789,"name":"uint8","nodeType":"ElementaryTypeName","src":"5529:5:179","typeDescriptions":{}}},"id":88795,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5529:20:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88788,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"5512:16:179","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_CombatArchetypes_$87309_$","typeString":"type(enum CombatArchetypes)"}},"id":88796,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5512:38:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"functionReturnParameters":88736,"id":88797,"nodeType":"Return","src":"5505:45:179"}]},"documentation":{"id":88725,"nodeType":"StructuredDocumentation","src":"5051:45:179","text":" @notice Get attackerArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"_getAttackerArchetype","nameLocation":"5108:21:179","parameters":{"id":88732,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88728,"mutability":"mutable","name":"attacker","nameLocation":"5152:8:179","nodeType":"VariableDeclaration","scope":88799,"src":"5135:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88727,"nodeType":"UserDefinedTypeName","pathNode":{"id":88726,"name":"CombatArchetypes","nameLocations":["5135:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"5135:16:179"},"referencedDeclaration":87309,"src":"5135:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88731,"mutability":"mutable","name":"defender","nameLocation":"5183:8:179","nodeType":"VariableDeclaration","scope":88799,"src":"5166:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88730,"nodeType":"UserDefinedTypeName","pathNode":{"id":88729,"name":"CombatArchetypes","nameLocations":["5166:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"5166:16:179"},"referencedDeclaration":87309,"src":"5166:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"5129:66:179"},"returnParameters":{"id":88736,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88735,"mutability":"mutable","name":"attackerArchetype","nameLocation":"5236:17:179","nodeType":"VariableDeclaration","scope":88799,"src":"5219:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88734,"nodeType":"UserDefinedTypeName","pathNode":{"id":88733,"name":"CombatArchetypes","nameLocations":["5219:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"5219:16:179"},"referencedDeclaration":87309,"src":"5219:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"5218:36:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":88870,"nodeType":"FunctionDefinition","src":"5607:424:179","nodes":[],"body":{"id":88869,"nodeType":"Block","src":"5752:279:179","nodes":[],"statements":[{"assignments":[88816],"declarations":[{"constant":false,"id":88816,"mutability":"mutable","name":"_keyTuple","nameLocation":"5775:9:179","nodeType":"VariableDeclaration","scope":88869,"src":"5758:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88814,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5758:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88815,"nodeType":"ArrayTypeName","src":"5758:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88822,"initialValue":{"arguments":[{"hexValue":"32","id":88820,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5801:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88819,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"5787:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88817,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5791:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88818,"nodeType":"ArrayTypeName","src":"5791:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5787:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5758:45:179"},{"expression":{"id":88836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88823,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88816,"src":"5809:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88825,"indexExpression":{"hexValue":"30","id":88824,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5819:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5809:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88832,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88803,"src":"5846:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88831,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5840:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88830,"name":"uint8","nodeType":"ElementaryTypeName","src":"5840:5:179","typeDescriptions":{}}},"id":88833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5840:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88829,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5832:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88828,"name":"uint256","nodeType":"ElementaryTypeName","src":"5832:7:179","typeDescriptions":{}}},"id":88834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5832:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88827,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5824:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88826,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5824:7:179","typeDescriptions":{}}},"id":88835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5824:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"5809:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88837,"nodeType":"ExpressionStatement","src":"5809:48:179"},{"expression":{"id":88851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88838,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88816,"src":"5863:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88840,"indexExpression":{"hexValue":"31","id":88839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5873:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5863:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88847,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88806,"src":"5900:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5894:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88845,"name":"uint8","nodeType":"ElementaryTypeName","src":"5894:5:179","typeDescriptions":{}}},"id":88848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5894:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88844,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5886:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88843,"name":"uint256","nodeType":"ElementaryTypeName","src":"5886:7:179","typeDescriptions":{}}},"id":88849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5886:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88842,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5878:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88841,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5878:7:179","typeDescriptions":{}}},"id":88850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5878:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"5863:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88852,"nodeType":"ExpressionStatement","src":"5863:48:179"},{"expression":{"arguments":[{"id":88856,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"5945:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88857,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88816,"src":"5955:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"31","id":88858,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5966:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"arguments":[{"arguments":[{"id":88863,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88809,"src":"5992:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88862,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5986:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88861,"name":"uint8","nodeType":"ElementaryTypeName","src":"5986:5:179","typeDescriptions":{}}},"id":88864,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5986:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"expression":{"id":88859,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5969:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":88860,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5973:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"5969:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":88865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5969:42:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":88866,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"6013:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88853,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"5918:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":88855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5930:14:179","memberName":"setStaticField","nodeType":"MemberAccess","referencedDeclaration":13893,"src":"5918:26:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,uint8,bytes memory,FieldLayout)"}},"id":88867,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5918:108:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":88868,"nodeType":"ExpressionStatement","src":"5918:108:179"}]},"documentation":{"id":88800,"nodeType":"StructuredDocumentation","src":"5559:45:179","text":" @notice Set attackerArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"setAttackerArchetype","nameLocation":"5616:20:179","parameters":{"id":88810,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88803,"mutability":"mutable","name":"attacker","nameLocation":"5659:8:179","nodeType":"VariableDeclaration","scope":88870,"src":"5642:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88802,"nodeType":"UserDefinedTypeName","pathNode":{"id":88801,"name":"CombatArchetypes","nameLocations":["5642:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"5642:16:179"},"referencedDeclaration":87309,"src":"5642:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88806,"mutability":"mutable","name":"defender","nameLocation":"5690:8:179","nodeType":"VariableDeclaration","scope":88870,"src":"5673:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88805,"nodeType":"UserDefinedTypeName","pathNode":{"id":88804,"name":"CombatArchetypes","nameLocations":["5673:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"5673:16:179"},"referencedDeclaration":87309,"src":"5673:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88809,"mutability":"mutable","name":"attackerArchetype","nameLocation":"5721:17:179","nodeType":"VariableDeclaration","scope":88870,"src":"5704:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88808,"nodeType":"UserDefinedTypeName","pathNode":{"id":88807,"name":"CombatArchetypes","nameLocations":["5704:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"5704:16:179"},"referencedDeclaration":87309,"src":"5704:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"5636:106:179"},"returnParameters":{"id":88811,"nodeType":"ParameterList","parameters":[],"src":"5752:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":88941,"nodeType":"FunctionDefinition","src":"6083:423:179","nodes":[],"body":{"id":88940,"nodeType":"Block","src":"6229:277:179","nodes":[],"statements":[{"assignments":[88887],"declarations":[{"constant":false,"id":88887,"mutability":"mutable","name":"_keyTuple","nameLocation":"6252:9:179","nodeType":"VariableDeclaration","scope":88940,"src":"6235:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88885,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6235:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88886,"nodeType":"ArrayTypeName","src":"6235:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88893,"initialValue":{"arguments":[{"hexValue":"32","id":88891,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6278:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88890,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"6264:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88888,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6268:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88889,"nodeType":"ArrayTypeName","src":"6268:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6264:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"6235:45:179"},{"expression":{"id":88907,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88894,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88887,"src":"6286:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88896,"indexExpression":{"hexValue":"30","id":88895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6296:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6286:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88903,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88874,"src":"6323:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88902,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6317:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88901,"name":"uint8","nodeType":"ElementaryTypeName","src":"6317:5:179","typeDescriptions":{}}},"id":88904,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6317:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88900,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6309:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88899,"name":"uint256","nodeType":"ElementaryTypeName","src":"6309:7:179","typeDescriptions":{}}},"id":88905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6309:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88898,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6301:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88897,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6301:7:179","typeDescriptions":{}}},"id":88906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6301:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"6286:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88908,"nodeType":"ExpressionStatement","src":"6286:48:179"},{"expression":{"id":88922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88909,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88887,"src":"6340:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88911,"indexExpression":{"hexValue":"31","id":88910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6350:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6340:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88918,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88877,"src":"6377:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88917,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6371:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88916,"name":"uint8","nodeType":"ElementaryTypeName","src":"6371:5:179","typeDescriptions":{}}},"id":88919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6371:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6363:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88914,"name":"uint256","nodeType":"ElementaryTypeName","src":"6363:7:179","typeDescriptions":{}}},"id":88920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6363:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6355:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88912,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6355:7:179","typeDescriptions":{}}},"id":88921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6355:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"6340:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88923,"nodeType":"ExpressionStatement","src":"6340:48:179"},{"expression":{"arguments":[{"id":88927,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"6420:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":88928,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88887,"src":"6430:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"31","id":88929,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6441:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"arguments":[{"arguments":[{"id":88934,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88880,"src":"6467:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88933,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6461:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88932,"name":"uint8","nodeType":"ElementaryTypeName","src":"6461:5:179","typeDescriptions":{}}},"id":88935,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6461:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"expression":{"id":88930,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6444:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":88931,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6448:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"6444:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":88936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6444:42:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":88937,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"6488:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88924,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"6395:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":88926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6405:14:179","memberName":"setStaticField","nodeType":"MemberAccess","referencedDeclaration":11901,"src":"6395:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,uint8,bytes memory,FieldLayout)"}},"id":88938,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6395:106:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":88939,"nodeType":"ExpressionStatement","src":"6395:106:179"}]},"documentation":{"id":88871,"nodeType":"StructuredDocumentation","src":"6035:45:179","text":" @notice Set attackerArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"_setAttackerArchetype","nameLocation":"6092:21:179","parameters":{"id":88881,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88874,"mutability":"mutable","name":"attacker","nameLocation":"6136:8:179","nodeType":"VariableDeclaration","scope":88941,"src":"6119:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88873,"nodeType":"UserDefinedTypeName","pathNode":{"id":88872,"name":"CombatArchetypes","nameLocations":["6119:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"6119:16:179"},"referencedDeclaration":87309,"src":"6119:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88877,"mutability":"mutable","name":"defender","nameLocation":"6167:8:179","nodeType":"VariableDeclaration","scope":88941,"src":"6150:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88876,"nodeType":"UserDefinedTypeName","pathNode":{"id":88875,"name":"CombatArchetypes","nameLocations":["6150:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"6150:16:179"},"referencedDeclaration":87309,"src":"6150:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88880,"mutability":"mutable","name":"attackerArchetype","nameLocation":"6198:17:179","nodeType":"VariableDeclaration","scope":88941,"src":"6181:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88879,"nodeType":"UserDefinedTypeName","pathNode":{"id":88878,"name":"CombatArchetypes","nameLocations":["6181:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"6181:16:179"},"referencedDeclaration":87309,"src":"6181:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"6113:106:179"},"returnParameters":{"id":88882,"nodeType":"ParameterList","parameters":[],"src":"6229:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89016,"nodeType":"FunctionDefinition","src":"6558:457:179","nodes":[],"body":{"id":89015,"nodeType":"Block","src":"6713:302:179","nodes":[],"statements":[{"assignments":[88958],"declarations":[{"constant":false,"id":88958,"mutability":"mutable","name":"_keyTuple","nameLocation":"6736:9:179","nodeType":"VariableDeclaration","scope":89015,"src":"6719:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":88956,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6719:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88957,"nodeType":"ArrayTypeName","src":"6719:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":88964,"initialValue":{"arguments":[{"hexValue":"32","id":88962,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6762:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":88961,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"6748:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":88959,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6752:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88960,"nodeType":"ArrayTypeName","src":"6752:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":88963,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6748:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"6719:45:179"},{"expression":{"id":88978,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88965,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88958,"src":"6770:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88967,"indexExpression":{"hexValue":"30","id":88966,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6780:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6770:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88974,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88945,"src":"6807:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6801:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88972,"name":"uint8","nodeType":"ElementaryTypeName","src":"6801:5:179","typeDescriptions":{}}},"id":88975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6801:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88971,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6793:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88970,"name":"uint256","nodeType":"ElementaryTypeName","src":"6793:7:179","typeDescriptions":{}}},"id":88976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6793:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88969,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6785:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88968,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6785:7:179","typeDescriptions":{}}},"id":88977,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6785:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"6770:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88979,"nodeType":"ExpressionStatement","src":"6770:48:179"},{"expression":{"id":88993,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":88980,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88958,"src":"6824:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":88982,"indexExpression":{"hexValue":"31","id":88981,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6834:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6824:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":88989,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88948,"src":"6861:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":88988,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6855:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":88987,"name":"uint8","nodeType":"ElementaryTypeName","src":"6855:5:179","typeDescriptions":{}}},"id":88990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6855:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":88986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6847:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":88985,"name":"uint256","nodeType":"ElementaryTypeName","src":"6847:7:179","typeDescriptions":{}}},"id":88991,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6847:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":88984,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6839:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":88983,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6839:7:179","typeDescriptions":{}}},"id":88992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6839:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"6824:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":88994,"nodeType":"ExpressionStatement","src":"6824:48:179"},{"assignments":[88996],"declarations":[{"constant":false,"id":88996,"mutability":"mutable","name":"_blob","nameLocation":"6887:5:179","nodeType":"VariableDeclaration","scope":89015,"src":"6879:13:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":88995,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6879:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":89004,"initialValue":{"arguments":[{"id":88999,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"6922:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89000,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88958,"src":"6932:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"32","id":89001,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6943:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"id":89002,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"6946:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":88997,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"6895:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":88998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6907:14:179","memberName":"getStaticField","nodeType":"MemberAccess","referencedDeclaration":14319,"src":"6895:26:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes32_$","typeString":"function (ResourceId,bytes32[] memory,uint8,FieldLayout) view returns (bytes32)"}},"id":89003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6895:64:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"6879:80:179"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"id":89010,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88996,"src":"7002:5:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":89009,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6995:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":89008,"name":"bytes1","nodeType":"ElementaryTypeName","src":"6995:6:179","typeDescriptions":{}}},"id":89011,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6995:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":89007,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6989:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89006,"name":"uint8","nodeType":"ElementaryTypeName","src":"6989:5:179","typeDescriptions":{}}},"id":89012,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6989:20:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89005,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"6972:16:179","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_CombatArchetypes_$87309_$","typeString":"type(enum CombatArchetypes)"}},"id":89013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6972:38:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"functionReturnParameters":88953,"id":89014,"nodeType":"Return","src":"6965:45:179"}]},"documentation":{"id":88942,"nodeType":"StructuredDocumentation","src":"6510:45:179","text":" @notice Get defenderArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"getDefenderArchetype","nameLocation":"6567:20:179","parameters":{"id":88949,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88945,"mutability":"mutable","name":"attacker","nameLocation":"6610:8:179","nodeType":"VariableDeclaration","scope":89016,"src":"6593:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88944,"nodeType":"UserDefinedTypeName","pathNode":{"id":88943,"name":"CombatArchetypes","nameLocations":["6593:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"6593:16:179"},"referencedDeclaration":87309,"src":"6593:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":88948,"mutability":"mutable","name":"defender","nameLocation":"6641:8:179","nodeType":"VariableDeclaration","scope":89016,"src":"6624:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88947,"nodeType":"UserDefinedTypeName","pathNode":{"id":88946,"name":"CombatArchetypes","nameLocations":["6624:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"6624:16:179"},"referencedDeclaration":87309,"src":"6624:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"6587:66:179"},"returnParameters":{"id":88953,"nodeType":"ParameterList","parameters":[{"constant":false,"id":88952,"mutability":"mutable","name":"defenderArchetype","nameLocation":"6694:17:179","nodeType":"VariableDeclaration","scope":89016,"src":"6677:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":88951,"nodeType":"UserDefinedTypeName","pathNode":{"id":88950,"name":"CombatArchetypes","nameLocations":["6677:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"6677:16:179"},"referencedDeclaration":87309,"src":"6677:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"6676:36:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":89091,"nodeType":"FunctionDefinition","src":"7067:456:179","nodes":[],"body":{"id":89090,"nodeType":"Block","src":"7223:300:179","nodes":[],"statements":[{"assignments":[89033],"declarations":[{"constant":false,"id":89033,"mutability":"mutable","name":"_keyTuple","nameLocation":"7246:9:179","nodeType":"VariableDeclaration","scope":89090,"src":"7229:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89031,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7229:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89032,"nodeType":"ArrayTypeName","src":"7229:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89039,"initialValue":{"arguments":[{"hexValue":"32","id":89037,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7272:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89036,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"7258:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89034,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7262:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89035,"nodeType":"ArrayTypeName","src":"7262:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89038,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7258:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"7229:45:179"},{"expression":{"id":89053,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89040,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89033,"src":"7280:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89042,"indexExpression":{"hexValue":"30","id":89041,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7290:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"7280:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89049,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89020,"src":"7317:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89048,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7311:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89047,"name":"uint8","nodeType":"ElementaryTypeName","src":"7311:5:179","typeDescriptions":{}}},"id":89050,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7311:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89046,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7303:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89045,"name":"uint256","nodeType":"ElementaryTypeName","src":"7303:7:179","typeDescriptions":{}}},"id":89051,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7303:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7295:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89043,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7295:7:179","typeDescriptions":{}}},"id":89052,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7295:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"7280:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89054,"nodeType":"ExpressionStatement","src":"7280:48:179"},{"expression":{"id":89068,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89055,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89033,"src":"7334:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89057,"indexExpression":{"hexValue":"31","id":89056,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7344:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"7334:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89064,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89023,"src":"7371:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89063,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7365:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89062,"name":"uint8","nodeType":"ElementaryTypeName","src":"7365:5:179","typeDescriptions":{}}},"id":89065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7365:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89061,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7357:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89060,"name":"uint256","nodeType":"ElementaryTypeName","src":"7357:7:179","typeDescriptions":{}}},"id":89066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7357:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89059,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7349:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89058,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7349:7:179","typeDescriptions":{}}},"id":89067,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7349:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"7334:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89069,"nodeType":"ExpressionStatement","src":"7334:48:179"},{"assignments":[89071],"declarations":[{"constant":false,"id":89071,"mutability":"mutable","name":"_blob","nameLocation":"7397:5:179","nodeType":"VariableDeclaration","scope":89090,"src":"7389:13:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":89070,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7389:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":89079,"initialValue":{"arguments":[{"id":89074,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"7430:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89075,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89033,"src":"7440:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"32","id":89076,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7451:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"id":89077,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"7454:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89072,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"7405:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":89073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7415:14:179","memberName":"getStaticField","nodeType":"MemberAccess","referencedDeclaration":12483,"src":"7405:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes32_$","typeString":"function (ResourceId,bytes32[] memory,uint8,FieldLayout) view returns (bytes32)"}},"id":89078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7405:62:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"7389:78:179"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"id":89085,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89071,"src":"7510:5:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":89084,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7503:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":89083,"name":"bytes1","nodeType":"ElementaryTypeName","src":"7503:6:179","typeDescriptions":{}}},"id":89086,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7503:13:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":89082,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7497:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89081,"name":"uint8","nodeType":"ElementaryTypeName","src":"7497:5:179","typeDescriptions":{}}},"id":89087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7497:20:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89080,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"7480:16:179","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_CombatArchetypes_$87309_$","typeString":"type(enum CombatArchetypes)"}},"id":89088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7480:38:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"functionReturnParameters":89028,"id":89089,"nodeType":"Return","src":"7473:45:179"}]},"documentation":{"id":89017,"nodeType":"StructuredDocumentation","src":"7019:45:179","text":" @notice Get defenderArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"_getDefenderArchetype","nameLocation":"7076:21:179","parameters":{"id":89024,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89020,"mutability":"mutable","name":"attacker","nameLocation":"7120:8:179","nodeType":"VariableDeclaration","scope":89091,"src":"7103:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89019,"nodeType":"UserDefinedTypeName","pathNode":{"id":89018,"name":"CombatArchetypes","nameLocations":["7103:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"7103:16:179"},"referencedDeclaration":87309,"src":"7103:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89023,"mutability":"mutable","name":"defender","nameLocation":"7151:8:179","nodeType":"VariableDeclaration","scope":89091,"src":"7134:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89022,"nodeType":"UserDefinedTypeName","pathNode":{"id":89021,"name":"CombatArchetypes","nameLocations":["7134:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"7134:16:179"},"referencedDeclaration":87309,"src":"7134:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"7097:66:179"},"returnParameters":{"id":89028,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89027,"mutability":"mutable","name":"defenderArchetype","nameLocation":"7204:17:179","nodeType":"VariableDeclaration","scope":89091,"src":"7187:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89026,"nodeType":"UserDefinedTypeName","pathNode":{"id":89025,"name":"CombatArchetypes","nameLocations":["7187:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"7187:16:179"},"referencedDeclaration":87309,"src":"7187:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"7186:36:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":89162,"nodeType":"FunctionDefinition","src":"7575:424:179","nodes":[],"body":{"id":89161,"nodeType":"Block","src":"7720:279:179","nodes":[],"statements":[{"assignments":[89108],"declarations":[{"constant":false,"id":89108,"mutability":"mutable","name":"_keyTuple","nameLocation":"7743:9:179","nodeType":"VariableDeclaration","scope":89161,"src":"7726:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89106,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7726:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89107,"nodeType":"ArrayTypeName","src":"7726:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89114,"initialValue":{"arguments":[{"hexValue":"32","id":89112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7769:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89111,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"7755:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89109,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7759:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89110,"nodeType":"ArrayTypeName","src":"7759:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7755:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"7726:45:179"},{"expression":{"id":89128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89115,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89108,"src":"7777:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89117,"indexExpression":{"hexValue":"30","id":89116,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7787:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"7777:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89124,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89095,"src":"7814:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89123,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7808:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89122,"name":"uint8","nodeType":"ElementaryTypeName","src":"7808:5:179","typeDescriptions":{}}},"id":89125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7808:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89121,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7800:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89120,"name":"uint256","nodeType":"ElementaryTypeName","src":"7800:7:179","typeDescriptions":{}}},"id":89126,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7800:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89119,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7792:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89118,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7792:7:179","typeDescriptions":{}}},"id":89127,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7792:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"7777:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89129,"nodeType":"ExpressionStatement","src":"7777:48:179"},{"expression":{"id":89143,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89130,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89108,"src":"7831:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89132,"indexExpression":{"hexValue":"31","id":89131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7841:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"7831:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89139,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89098,"src":"7868:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89138,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7862:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89137,"name":"uint8","nodeType":"ElementaryTypeName","src":"7862:5:179","typeDescriptions":{}}},"id":89140,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7862:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89136,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7854:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89135,"name":"uint256","nodeType":"ElementaryTypeName","src":"7854:7:179","typeDescriptions":{}}},"id":89141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7854:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89134,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7846:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89133,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7846:7:179","typeDescriptions":{}}},"id":89142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7846:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"7831:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89144,"nodeType":"ExpressionStatement","src":"7831:48:179"},{"expression":{"arguments":[{"id":89148,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"7913:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89149,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89108,"src":"7923:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"32","id":89150,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7934:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"arguments":[{"arguments":[{"id":89155,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89101,"src":"7960:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89154,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7954:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89153,"name":"uint8","nodeType":"ElementaryTypeName","src":"7954:5:179","typeDescriptions":{}}},"id":89156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7954:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"expression":{"id":89151,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7937:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":89152,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"7941:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"7937:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":89157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7937:42:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89158,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"7981:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89145,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"7886:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":89147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7898:14:179","memberName":"setStaticField","nodeType":"MemberAccess","referencedDeclaration":13893,"src":"7886:26:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,uint8,bytes memory,FieldLayout)"}},"id":89159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7886:108:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89160,"nodeType":"ExpressionStatement","src":"7886:108:179"}]},"documentation":{"id":89092,"nodeType":"StructuredDocumentation","src":"7527:45:179","text":" @notice Set defenderArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"setDefenderArchetype","nameLocation":"7584:20:179","parameters":{"id":89102,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89095,"mutability":"mutable","name":"attacker","nameLocation":"7627:8:179","nodeType":"VariableDeclaration","scope":89162,"src":"7610:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89094,"nodeType":"UserDefinedTypeName","pathNode":{"id":89093,"name":"CombatArchetypes","nameLocations":["7610:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"7610:16:179"},"referencedDeclaration":87309,"src":"7610:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89098,"mutability":"mutable","name":"defender","nameLocation":"7658:8:179","nodeType":"VariableDeclaration","scope":89162,"src":"7641:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89097,"nodeType":"UserDefinedTypeName","pathNode":{"id":89096,"name":"CombatArchetypes","nameLocations":["7641:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"7641:16:179"},"referencedDeclaration":87309,"src":"7641:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89101,"mutability":"mutable","name":"defenderArchetype","nameLocation":"7689:17:179","nodeType":"VariableDeclaration","scope":89162,"src":"7672:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89100,"nodeType":"UserDefinedTypeName","pathNode":{"id":89099,"name":"CombatArchetypes","nameLocations":["7672:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"7672:16:179"},"referencedDeclaration":87309,"src":"7672:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"7604:106:179"},"returnParameters":{"id":89103,"nodeType":"ParameterList","parameters":[],"src":"7720:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89233,"nodeType":"FunctionDefinition","src":"8051:423:179","nodes":[],"body":{"id":89232,"nodeType":"Block","src":"8197:277:179","nodes":[],"statements":[{"assignments":[89179],"declarations":[{"constant":false,"id":89179,"mutability":"mutable","name":"_keyTuple","nameLocation":"8220:9:179","nodeType":"VariableDeclaration","scope":89232,"src":"8203:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89177,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8203:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89178,"nodeType":"ArrayTypeName","src":"8203:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89185,"initialValue":{"arguments":[{"hexValue":"32","id":89183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8246:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89182,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"8232:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89180,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8236:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89181,"nodeType":"ArrayTypeName","src":"8236:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8232:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"8203:45:179"},{"expression":{"id":89199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89186,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89179,"src":"8254:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89188,"indexExpression":{"hexValue":"30","id":89187,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8264:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8254:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89195,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89166,"src":"8291:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8285:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89193,"name":"uint8","nodeType":"ElementaryTypeName","src":"8285:5:179","typeDescriptions":{}}},"id":89196,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8285:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89192,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8277:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89191,"name":"uint256","nodeType":"ElementaryTypeName","src":"8277:7:179","typeDescriptions":{}}},"id":89197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8277:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89190,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8269:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89189,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8269:7:179","typeDescriptions":{}}},"id":89198,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8269:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"8254:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89200,"nodeType":"ExpressionStatement","src":"8254:48:179"},{"expression":{"id":89214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89201,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89179,"src":"8308:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89203,"indexExpression":{"hexValue":"31","id":89202,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8318:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8308:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89210,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89169,"src":"8345:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89209,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8339:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89208,"name":"uint8","nodeType":"ElementaryTypeName","src":"8339:5:179","typeDescriptions":{}}},"id":89211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8339:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89207,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8331:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89206,"name":"uint256","nodeType":"ElementaryTypeName","src":"8331:7:179","typeDescriptions":{}}},"id":89212,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8331:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89205,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8323:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89204,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8323:7:179","typeDescriptions":{}}},"id":89213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8323:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"8308:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89215,"nodeType":"ExpressionStatement","src":"8308:48:179"},{"expression":{"arguments":[{"id":89219,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"8388:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89220,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89179,"src":"8398:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"hexValue":"32","id":89221,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8409:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"arguments":[{"arguments":[{"id":89226,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89172,"src":"8435:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89225,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8429:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89224,"name":"uint8","nodeType":"ElementaryTypeName","src":"8429:5:179","typeDescriptions":{}}},"id":89227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8429:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"expression":{"id":89222,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"8412:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":89223,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"8416:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"8412:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":89228,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8412:42:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89229,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"8456:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89216,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"8363:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":89218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8373:14:179","memberName":"setStaticField","nodeType":"MemberAccess","referencedDeclaration":11901,"src":"8363:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_uint8_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,uint8,bytes memory,FieldLayout)"}},"id":89230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8363:106:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89231,"nodeType":"ExpressionStatement","src":"8363:106:179"}]},"documentation":{"id":89163,"nodeType":"StructuredDocumentation","src":"8003:45:179","text":" @notice Set defenderArchetype."},"implemented":true,"kind":"function","modifiers":[],"name":"_setDefenderArchetype","nameLocation":"8060:21:179","parameters":{"id":89173,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89166,"mutability":"mutable","name":"attacker","nameLocation":"8104:8:179","nodeType":"VariableDeclaration","scope":89233,"src":"8087:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89165,"nodeType":"UserDefinedTypeName","pathNode":{"id":89164,"name":"CombatArchetypes","nameLocations":["8087:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"8087:16:179"},"referencedDeclaration":87309,"src":"8087:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89169,"mutability":"mutable","name":"defender","nameLocation":"8135:8:179","nodeType":"VariableDeclaration","scope":89233,"src":"8118:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89168,"nodeType":"UserDefinedTypeName","pathNode":{"id":89167,"name":"CombatArchetypes","nameLocations":["8118:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"8118:16:179"},"referencedDeclaration":87309,"src":"8118:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89172,"mutability":"mutable","name":"defenderArchetype","nameLocation":"8166:17:179","nodeType":"VariableDeclaration","scope":89233,"src":"8149:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89171,"nodeType":"UserDefinedTypeName","pathNode":{"id":89170,"name":"CombatArchetypes","nameLocations":["8149:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"8149:16:179"},"referencedDeclaration":87309,"src":"8149:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"8081:106:179"},"returnParameters":{"id":89174,"nodeType":"ParameterList","parameters":[],"src":"8197:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89308,"nodeType":"FunctionDefinition","src":"8522:541:179","nodes":[],"body":{"id":89307,"nodeType":"Block","src":"8661:402:179","nodes":[],"statements":[{"assignments":[89250],"declarations":[{"constant":false,"id":89250,"mutability":"mutable","name":"_keyTuple","nameLocation":"8684:9:179","nodeType":"VariableDeclaration","scope":89307,"src":"8667:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89248,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8667:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89249,"nodeType":"ArrayTypeName","src":"8667:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89256,"initialValue":{"arguments":[{"hexValue":"32","id":89254,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8710:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89253,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"8696:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89251,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8700:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89252,"nodeType":"ArrayTypeName","src":"8700:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89255,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8696:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"8667:45:179"},{"expression":{"id":89270,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89257,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89250,"src":"8718:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89259,"indexExpression":{"hexValue":"30","id":89258,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8728:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8718:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89266,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89237,"src":"8755:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89265,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8749:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89264,"name":"uint8","nodeType":"ElementaryTypeName","src":"8749:5:179","typeDescriptions":{}}},"id":89267,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8749:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89263,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8741:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89262,"name":"uint256","nodeType":"ElementaryTypeName","src":"8741:7:179","typeDescriptions":{}}},"id":89268,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8741:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89261,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8733:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89260,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8733:7:179","typeDescriptions":{}}},"id":89269,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8733:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"8718:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89271,"nodeType":"ExpressionStatement","src":"8718:48:179"},{"expression":{"id":89285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89272,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89250,"src":"8772:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89274,"indexExpression":{"hexValue":"31","id":89273,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8782:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8772:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89281,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89240,"src":"8809:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89280,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8803:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89279,"name":"uint8","nodeType":"ElementaryTypeName","src":"8803:5:179","typeDescriptions":{}}},"id":89282,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8803:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89278,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8795:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89277,"name":"uint256","nodeType":"ElementaryTypeName","src":"8795:7:179","typeDescriptions":{}}},"id":89283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8795:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89276,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8787:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89275,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8787:7:179","typeDescriptions":{}}},"id":89284,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8787:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"8772:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89286,"nodeType":"ExpressionStatement","src":"8772:48:179"},{"assignments":[89288,89291,89293],"declarations":[{"constant":false,"id":89288,"mutability":"mutable","name":"_staticData","nameLocation":"8841:11:179","nodeType":"VariableDeclaration","scope":89307,"src":"8828:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89287,"name":"bytes","nodeType":"ElementaryTypeName","src":"8828:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":89291,"mutability":"mutable","name":"_encodedLengths","nameLocation":"8869:15:179","nodeType":"VariableDeclaration","scope":89307,"src":"8854:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89290,"nodeType":"UserDefinedTypeName","pathNode":{"id":89289,"name":"EncodedLengths","nameLocations":["8854:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"8854:14:179"},"referencedDeclaration":7251,"src":"8854:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"},{"constant":false,"id":89293,"mutability":"mutable","name":"_dynamicData","nameLocation":"8899:12:179","nodeType":"VariableDeclaration","scope":89307,"src":"8886:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89292,"name":"bytes","nodeType":"ElementaryTypeName","src":"8886:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89300,"initialValue":{"arguments":[{"id":89296,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"8944:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89297,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89250,"src":"8960:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89298,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"8977:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89294,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"8915:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":89295,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8927:9:179","memberName":"getRecord","nodeType":"MemberAccess","referencedDeclaration":14174,"src":"8915:21:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$","typeString":"function (ResourceId,bytes32[] memory,FieldLayout) view returns (bytes memory,EncodedLengths,bytes memory)"}},"id":89299,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8915:80:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,EncodedLengths,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"8827:168:179"},{"expression":{"arguments":[{"id":89302,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89288,"src":"9015:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89303,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89291,"src":"9028:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89304,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89293,"src":"9045:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":89301,"name":"decode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89805,"src":"9008:6:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$returns$_t_struct$_ArchetypeModifierData_$88235_memory_ptr_$","typeString":"function (bytes memory,EncodedLengths,bytes memory) pure returns (struct ArchetypeModifierData memory)"}},"id":89305,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9008:50:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"functionReturnParameters":89245,"id":89306,"nodeType":"Return","src":"9001:57:179"}]},"documentation":{"id":89234,"nodeType":"StructuredDocumentation","src":"8478:41:179","text":" @notice Get the full data."},"implemented":true,"kind":"function","modifiers":[],"name":"get","nameLocation":"8531:3:179","parameters":{"id":89241,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89237,"mutability":"mutable","name":"attacker","nameLocation":"8557:8:179","nodeType":"VariableDeclaration","scope":89308,"src":"8540:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89236,"nodeType":"UserDefinedTypeName","pathNode":{"id":89235,"name":"CombatArchetypes","nameLocations":["8540:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"8540:16:179"},"referencedDeclaration":87309,"src":"8540:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89240,"mutability":"mutable","name":"defender","nameLocation":"8588:8:179","nodeType":"VariableDeclaration","scope":89308,"src":"8571:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89239,"nodeType":"UserDefinedTypeName","pathNode":{"id":89238,"name":"CombatArchetypes","nameLocations":["8571:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"8571:16:179"},"referencedDeclaration":87309,"src":"8571:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"8534:66:179"},"returnParameters":{"id":89245,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89244,"mutability":"mutable","name":"_table","nameLocation":"8653:6:179","nodeType":"VariableDeclaration","scope":89308,"src":"8624:35:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData"},"typeName":{"id":89243,"nodeType":"UserDefinedTypeName","pathNode":{"id":89242,"name":"ArchetypeModifierData","nameLocations":["8624:21:179"],"nodeType":"IdentifierPath","referencedDeclaration":88235,"src":"8624:21:179"},"referencedDeclaration":88235,"src":"8624:21:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_storage_ptr","typeString":"struct ArchetypeModifierData"}},"visibility":"internal"}],"src":"8623:37:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":89383,"nodeType":"FunctionDefinition","src":"9111:540:179","nodes":[],"body":{"id":89382,"nodeType":"Block","src":"9251:400:179","nodes":[],"statements":[{"assignments":[89325],"declarations":[{"constant":false,"id":89325,"mutability":"mutable","name":"_keyTuple","nameLocation":"9274:9:179","nodeType":"VariableDeclaration","scope":89382,"src":"9257:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89323,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9257:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89324,"nodeType":"ArrayTypeName","src":"9257:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89331,"initialValue":{"arguments":[{"hexValue":"32","id":89329,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9300:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89328,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"9286:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89326,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9290:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89327,"nodeType":"ArrayTypeName","src":"9290:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89330,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9286:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"9257:45:179"},{"expression":{"id":89345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89332,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89325,"src":"9308:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89334,"indexExpression":{"hexValue":"30","id":89333,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9318:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9308:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89341,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89312,"src":"9345:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89340,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9339:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89339,"name":"uint8","nodeType":"ElementaryTypeName","src":"9339:5:179","typeDescriptions":{}}},"id":89342,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9339:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89338,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9331:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89337,"name":"uint256","nodeType":"ElementaryTypeName","src":"9331:7:179","typeDescriptions":{}}},"id":89343,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9331:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89336,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9323:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89335,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9323:7:179","typeDescriptions":{}}},"id":89344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9323:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"9308:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89346,"nodeType":"ExpressionStatement","src":"9308:48:179"},{"expression":{"id":89360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89347,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89325,"src":"9362:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89349,"indexExpression":{"hexValue":"31","id":89348,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9372:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9362:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89356,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89315,"src":"9399:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89355,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9393:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89354,"name":"uint8","nodeType":"ElementaryTypeName","src":"9393:5:179","typeDescriptions":{}}},"id":89357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9393:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89353,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9385:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89352,"name":"uint256","nodeType":"ElementaryTypeName","src":"9385:7:179","typeDescriptions":{}}},"id":89358,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9385:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89351,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9377:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89350,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9377:7:179","typeDescriptions":{}}},"id":89359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9377:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"9362:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89361,"nodeType":"ExpressionStatement","src":"9362:48:179"},{"assignments":[89363,89366,89368],"declarations":[{"constant":false,"id":89363,"mutability":"mutable","name":"_staticData","nameLocation":"9431:11:179","nodeType":"VariableDeclaration","scope":89382,"src":"9418:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89362,"name":"bytes","nodeType":"ElementaryTypeName","src":"9418:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":89366,"mutability":"mutable","name":"_encodedLengths","nameLocation":"9459:15:179","nodeType":"VariableDeclaration","scope":89382,"src":"9444:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89365,"nodeType":"UserDefinedTypeName","pathNode":{"id":89364,"name":"EncodedLengths","nameLocations":["9444:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"9444:14:179"},"referencedDeclaration":7251,"src":"9444:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"},{"constant":false,"id":89368,"mutability":"mutable","name":"_dynamicData","nameLocation":"9489:12:179","nodeType":"VariableDeclaration","scope":89382,"src":"9476:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89367,"name":"bytes","nodeType":"ElementaryTypeName","src":"9476:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89375,"initialValue":{"arguments":[{"id":89371,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"9532:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89372,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89325,"src":"9548:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89373,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"9565:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89369,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"9505:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":89370,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9515:9:179","memberName":"getRecord","nodeType":"MemberAccess","referencedDeclaration":12376,"src":"9505:19:179","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$","typeString":"function (ResourceId,bytes32[] memory,FieldLayout) view returns (bytes memory,EncodedLengths,bytes memory)"}},"id":89374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9505:78:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,EncodedLengths,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"9417:166:179"},{"expression":{"arguments":[{"id":89377,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89363,"src":"9603:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89378,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89366,"src":"9616:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89379,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89368,"src":"9633:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":89376,"name":"decode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89805,"src":"9596:6:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$returns$_t_struct$_ArchetypeModifierData_$88235_memory_ptr_$","typeString":"function (bytes memory,EncodedLengths,bytes memory) pure returns (struct ArchetypeModifierData memory)"}},"id":89380,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9596:50:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"functionReturnParameters":89320,"id":89381,"nodeType":"Return","src":"9589:57:179"}]},"documentation":{"id":89309,"nodeType":"StructuredDocumentation","src":"9067:41:179","text":" @notice Get the full data."},"implemented":true,"kind":"function","modifiers":[],"name":"_get","nameLocation":"9120:4:179","parameters":{"id":89316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89312,"mutability":"mutable","name":"attacker","nameLocation":"9147:8:179","nodeType":"VariableDeclaration","scope":89383,"src":"9130:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89311,"nodeType":"UserDefinedTypeName","pathNode":{"id":89310,"name":"CombatArchetypes","nameLocations":["9130:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"9130:16:179"},"referencedDeclaration":87309,"src":"9130:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89315,"mutability":"mutable","name":"defender","nameLocation":"9178:8:179","nodeType":"VariableDeclaration","scope":89383,"src":"9161:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89314,"nodeType":"UserDefinedTypeName","pathNode":{"id":89313,"name":"CombatArchetypes","nameLocations":["9161:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"9161:16:179"},"referencedDeclaration":87309,"src":"9161:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"9124:66:179"},"returnParameters":{"id":89320,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89319,"mutability":"mutable","name":"_table","nameLocation":"9243:6:179","nodeType":"VariableDeclaration","scope":89383,"src":"9214:35:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData"},"typeName":{"id":89318,"nodeType":"UserDefinedTypeName","pathNode":{"id":89317,"name":"ArchetypeModifierData","nameLocations":["9214:21:179"],"nodeType":"IdentifierPath","referencedDeclaration":88235,"src":"9214:21:179"},"referencedDeclaration":88235,"src":"9214:21:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_storage_ptr","typeString":"struct ArchetypeModifierData"}},"visibility":"internal"}],"src":"9213:37:179"},"scope":90044,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":89468,"nodeType":"FunctionDefinition","src":"9723:597:179","nodes":[],"body":{"id":89467,"nodeType":"Block","src":"9906:414:179","nodes":[],"statements":[{"assignments":[89402],"declarations":[{"constant":false,"id":89402,"mutability":"mutable","name":"_staticData","nameLocation":"9925:11:179","nodeType":"VariableDeclaration","scope":89467,"src":"9912:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89401,"name":"bytes","nodeType":"ElementaryTypeName","src":"9912:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89408,"initialValue":{"arguments":[{"id":89404,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89392,"src":"9952:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"id":89405,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89395,"src":"9957:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"id":89406,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89398,"src":"9976:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89403,"name":"encodeStatic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89946,"src":"9939:12:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$returns$_t_bytes_memory_ptr_$","typeString":"function (int32,enum CombatArchetypes,enum CombatArchetypes) pure returns (bytes memory)"}},"id":89407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9939:55:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"9912:82:179"},{"assignments":[89411],"declarations":[{"constant":false,"id":89411,"mutability":"mutable","name":"_encodedLengths","nameLocation":"10016:15:179","nodeType":"VariableDeclaration","scope":89467,"src":"10001:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89410,"nodeType":"UserDefinedTypeName","pathNode":{"id":89409,"name":"EncodedLengths","nameLocations":["10001:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"10001:14:179"},"referencedDeclaration":7251,"src":"10001:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"}],"id":89412,"nodeType":"VariableDeclarationStatement","src":"10001:30:179"},{"assignments":[89414],"declarations":[{"constant":false,"id":89414,"mutability":"mutable","name":"_dynamicData","nameLocation":"10050:12:179","nodeType":"VariableDeclaration","scope":89467,"src":"10037:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89413,"name":"bytes","nodeType":"ElementaryTypeName","src":"10037:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89415,"nodeType":"VariableDeclarationStatement","src":"10037:25:179"},{"assignments":[89420],"declarations":[{"constant":false,"id":89420,"mutability":"mutable","name":"_keyTuple","nameLocation":"10086:9:179","nodeType":"VariableDeclaration","scope":89467,"src":"10069:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89418,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10069:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89419,"nodeType":"ArrayTypeName","src":"10069:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89426,"initialValue":{"arguments":[{"hexValue":"32","id":89424,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10112:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89423,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"10098:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89421,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10102:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89422,"nodeType":"ArrayTypeName","src":"10102:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10098:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"10069:45:179"},{"expression":{"id":89440,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89427,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89420,"src":"10120:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89429,"indexExpression":{"hexValue":"30","id":89428,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10130:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10120:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89436,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89387,"src":"10157:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89435,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10151:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89434,"name":"uint8","nodeType":"ElementaryTypeName","src":"10151:5:179","typeDescriptions":{}}},"id":89437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10151:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89433,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10143:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89432,"name":"uint256","nodeType":"ElementaryTypeName","src":"10143:7:179","typeDescriptions":{}}},"id":89438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10143:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89431,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10135:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89430,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10135:7:179","typeDescriptions":{}}},"id":89439,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10135:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"10120:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89441,"nodeType":"ExpressionStatement","src":"10120:48:179"},{"expression":{"id":89455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89442,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89420,"src":"10174:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89444,"indexExpression":{"hexValue":"31","id":89443,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10184:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10174:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89451,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89390,"src":"10211:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89450,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10205:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89449,"name":"uint8","nodeType":"ElementaryTypeName","src":"10205:5:179","typeDescriptions":{}}},"id":89452,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10205:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10197:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89447,"name":"uint256","nodeType":"ElementaryTypeName","src":"10197:7:179","typeDescriptions":{}}},"id":89453,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10197:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89446,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10189:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89445,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10189:7:179","typeDescriptions":{}}},"id":89454,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10189:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"10174:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89456,"nodeType":"ExpressionStatement","src":"10174:48:179"},{"expression":{"arguments":[{"id":89460,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"10251:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89461,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89420,"src":"10261:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89462,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89402,"src":"10272:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89463,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89411,"src":"10285:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89464,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89414,"src":"10302:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":89457,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"10229:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":89459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10241:9:179","memberName":"setRecord","nodeType":"MemberAccess","referencedDeclaration":13635,"src":"10229:21:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,bytes memory,EncodedLengths,bytes memory)"}},"id":89465,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10229:86:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89466,"nodeType":"ExpressionStatement","src":"10229:86:179"}]},"documentation":{"id":89384,"nodeType":"StructuredDocumentation","src":"9655:65:179","text":" @notice Set the full data using individual values."},"implemented":true,"kind":"function","modifiers":[],"name":"set","nameLocation":"9732:3:179","parameters":{"id":89399,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89387,"mutability":"mutable","name":"attacker","nameLocation":"9758:8:179","nodeType":"VariableDeclaration","scope":89468,"src":"9741:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89386,"nodeType":"UserDefinedTypeName","pathNode":{"id":89385,"name":"CombatArchetypes","nameLocations":["9741:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"9741:16:179"},"referencedDeclaration":87309,"src":"9741:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89390,"mutability":"mutable","name":"defender","nameLocation":"9789:8:179","nodeType":"VariableDeclaration","scope":89468,"src":"9772:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89389,"nodeType":"UserDefinedTypeName","pathNode":{"id":89388,"name":"CombatArchetypes","nameLocations":["9772:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"9772:16:179"},"referencedDeclaration":87309,"src":"9772:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89392,"mutability":"mutable","name":"mod","nameLocation":"9809:3:179","nodeType":"VariableDeclaration","scope":89468,"src":"9803:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":89391,"name":"int32","nodeType":"ElementaryTypeName","src":"9803:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"},{"constant":false,"id":89395,"mutability":"mutable","name":"attackerArchetype","nameLocation":"9835:17:179","nodeType":"VariableDeclaration","scope":89468,"src":"9818:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89394,"nodeType":"UserDefinedTypeName","pathNode":{"id":89393,"name":"CombatArchetypes","nameLocations":["9818:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"9818:16:179"},"referencedDeclaration":87309,"src":"9818:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89398,"mutability":"mutable","name":"defenderArchetype","nameLocation":"9875:17:179","nodeType":"VariableDeclaration","scope":89468,"src":"9858:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89397,"nodeType":"UserDefinedTypeName","pathNode":{"id":89396,"name":"CombatArchetypes","nameLocations":["9858:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"9858:16:179"},"referencedDeclaration":87309,"src":"9858:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"9735:161:179"},"returnParameters":{"id":89400,"nodeType":"ParameterList","parameters":[],"src":"9906:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89554,"nodeType":"FunctionDefinition","src":"10392:610:179","nodes":[],"body":{"id":89553,"nodeType":"Block","src":"10576:426:179","nodes":[],"statements":[{"assignments":[89487],"declarations":[{"constant":false,"id":89487,"mutability":"mutable","name":"_staticData","nameLocation":"10595:11:179","nodeType":"VariableDeclaration","scope":89553,"src":"10582:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89486,"name":"bytes","nodeType":"ElementaryTypeName","src":"10582:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89493,"initialValue":{"arguments":[{"id":89489,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89477,"src":"10622:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"id":89490,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89480,"src":"10627:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"id":89491,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89483,"src":"10646:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89488,"name":"encodeStatic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89946,"src":"10609:12:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$returns$_t_bytes_memory_ptr_$","typeString":"function (int32,enum CombatArchetypes,enum CombatArchetypes) pure returns (bytes memory)"}},"id":89492,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10609:55:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"10582:82:179"},{"assignments":[89496],"declarations":[{"constant":false,"id":89496,"mutability":"mutable","name":"_encodedLengths","nameLocation":"10686:15:179","nodeType":"VariableDeclaration","scope":89553,"src":"10671:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89495,"nodeType":"UserDefinedTypeName","pathNode":{"id":89494,"name":"EncodedLengths","nameLocations":["10671:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"10671:14:179"},"referencedDeclaration":7251,"src":"10671:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"}],"id":89497,"nodeType":"VariableDeclarationStatement","src":"10671:30:179"},{"assignments":[89499],"declarations":[{"constant":false,"id":89499,"mutability":"mutable","name":"_dynamicData","nameLocation":"10720:12:179","nodeType":"VariableDeclaration","scope":89553,"src":"10707:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89498,"name":"bytes","nodeType":"ElementaryTypeName","src":"10707:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89500,"nodeType":"VariableDeclarationStatement","src":"10707:25:179"},{"assignments":[89505],"declarations":[{"constant":false,"id":89505,"mutability":"mutable","name":"_keyTuple","nameLocation":"10756:9:179","nodeType":"VariableDeclaration","scope":89553,"src":"10739:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89503,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10739:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89504,"nodeType":"ArrayTypeName","src":"10739:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89511,"initialValue":{"arguments":[{"hexValue":"32","id":89509,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10782:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89508,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"10768:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89506,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10772:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89507,"nodeType":"ArrayTypeName","src":"10772:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10768:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"10739:45:179"},{"expression":{"id":89525,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89512,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89505,"src":"10790:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89514,"indexExpression":{"hexValue":"30","id":89513,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10800:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10790:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89521,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89472,"src":"10827:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89520,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10821:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89519,"name":"uint8","nodeType":"ElementaryTypeName","src":"10821:5:179","typeDescriptions":{}}},"id":89522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10821:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89518,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10813:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89517,"name":"uint256","nodeType":"ElementaryTypeName","src":"10813:7:179","typeDescriptions":{}}},"id":89523,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10813:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89516,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10805:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89515,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10805:7:179","typeDescriptions":{}}},"id":89524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10805:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"10790:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89526,"nodeType":"ExpressionStatement","src":"10790:48:179"},{"expression":{"id":89540,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89527,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89505,"src":"10844:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89529,"indexExpression":{"hexValue":"31","id":89528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10854:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10844:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89536,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89475,"src":"10881:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89535,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10875:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89534,"name":"uint8","nodeType":"ElementaryTypeName","src":"10875:5:179","typeDescriptions":{}}},"id":89537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10875:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10867:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89532,"name":"uint256","nodeType":"ElementaryTypeName","src":"10867:7:179","typeDescriptions":{}}},"id":89538,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10867:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89531,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10859:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89530,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10859:7:179","typeDescriptions":{}}},"id":89539,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10859:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"10844:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89541,"nodeType":"ExpressionStatement","src":"10844:48:179"},{"expression":{"arguments":[{"id":89545,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"10919:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89546,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89505,"src":"10929:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89547,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89487,"src":"10940:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89548,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89496,"src":"10953:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89549,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89499,"src":"10970:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89550,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"10984:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89542,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"10899:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":89544,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10909:9:179","memberName":"setRecord","nodeType":"MemberAccess","referencedDeclaration":11614,"src":"10899:19:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,bytes memory,EncodedLengths,bytes memory,FieldLayout)"}},"id":89551,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10899:98:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89552,"nodeType":"ExpressionStatement","src":"10899:98:179"}]},"documentation":{"id":89469,"nodeType":"StructuredDocumentation","src":"10324:65:179","text":" @notice Set the full data using individual values."},"implemented":true,"kind":"function","modifiers":[],"name":"_set","nameLocation":"10401:4:179","parameters":{"id":89484,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89472,"mutability":"mutable","name":"attacker","nameLocation":"10428:8:179","nodeType":"VariableDeclaration","scope":89554,"src":"10411:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89471,"nodeType":"UserDefinedTypeName","pathNode":{"id":89470,"name":"CombatArchetypes","nameLocations":["10411:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"10411:16:179"},"referencedDeclaration":87309,"src":"10411:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89475,"mutability":"mutable","name":"defender","nameLocation":"10459:8:179","nodeType":"VariableDeclaration","scope":89554,"src":"10442:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89474,"nodeType":"UserDefinedTypeName","pathNode":{"id":89473,"name":"CombatArchetypes","nameLocations":["10442:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"10442:16:179"},"referencedDeclaration":87309,"src":"10442:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89477,"mutability":"mutable","name":"mod","nameLocation":"10479:3:179","nodeType":"VariableDeclaration","scope":89554,"src":"10473:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":89476,"name":"int32","nodeType":"ElementaryTypeName","src":"10473:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"},{"constant":false,"id":89480,"mutability":"mutable","name":"attackerArchetype","nameLocation":"10505:17:179","nodeType":"VariableDeclaration","scope":89554,"src":"10488:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89479,"nodeType":"UserDefinedTypeName","pathNode":{"id":89478,"name":"CombatArchetypes","nameLocations":["10488:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"10488:16:179"},"referencedDeclaration":87309,"src":"10488:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89483,"mutability":"mutable","name":"defenderArchetype","nameLocation":"10545:17:179","nodeType":"VariableDeclaration","scope":89554,"src":"10528:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89482,"nodeType":"UserDefinedTypeName","pathNode":{"id":89481,"name":"CombatArchetypes","nameLocations":["10528:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"10528:16:179"},"referencedDeclaration":87309,"src":"10528:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"10405:161:179"},"returnParameters":{"id":89485,"nodeType":"ParameterList","parameters":[],"src":"10576:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89637,"nodeType":"FunctionDefinition","src":"11072:548:179","nodes":[],"body":{"id":89636,"nodeType":"Block","src":"11185:435:179","nodes":[],"statements":[{"assignments":[89568],"declarations":[{"constant":false,"id":89568,"mutability":"mutable","name":"_staticData","nameLocation":"11204:11:179","nodeType":"VariableDeclaration","scope":89636,"src":"11191:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89567,"name":"bytes","nodeType":"ElementaryTypeName","src":"11191:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89577,"initialValue":{"arguments":[{"expression":{"id":89570,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89564,"src":"11231:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89571,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11238:3:179","memberName":"mod","nodeType":"MemberAccess","referencedDeclaration":88228,"src":"11231:10:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"expression":{"id":89572,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89564,"src":"11243:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89573,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11250:17:179","memberName":"attackerArchetype","nodeType":"MemberAccess","referencedDeclaration":88231,"src":"11243:24:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"expression":{"id":89574,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89564,"src":"11269:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89575,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11276:17:179","memberName":"defenderArchetype","nodeType":"MemberAccess","referencedDeclaration":88234,"src":"11269:24:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89569,"name":"encodeStatic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89946,"src":"11218:12:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$returns$_t_bytes_memory_ptr_$","typeString":"function (int32,enum CombatArchetypes,enum CombatArchetypes) pure returns (bytes memory)"}},"id":89576,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11218:76:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"11191:103:179"},{"assignments":[89580],"declarations":[{"constant":false,"id":89580,"mutability":"mutable","name":"_encodedLengths","nameLocation":"11316:15:179","nodeType":"VariableDeclaration","scope":89636,"src":"11301:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89579,"nodeType":"UserDefinedTypeName","pathNode":{"id":89578,"name":"EncodedLengths","nameLocations":["11301:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"11301:14:179"},"referencedDeclaration":7251,"src":"11301:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"}],"id":89581,"nodeType":"VariableDeclarationStatement","src":"11301:30:179"},{"assignments":[89583],"declarations":[{"constant":false,"id":89583,"mutability":"mutable","name":"_dynamicData","nameLocation":"11350:12:179","nodeType":"VariableDeclaration","scope":89636,"src":"11337:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89582,"name":"bytes","nodeType":"ElementaryTypeName","src":"11337:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89584,"nodeType":"VariableDeclarationStatement","src":"11337:25:179"},{"assignments":[89589],"declarations":[{"constant":false,"id":89589,"mutability":"mutable","name":"_keyTuple","nameLocation":"11386:9:179","nodeType":"VariableDeclaration","scope":89636,"src":"11369:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89587,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11369:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89588,"nodeType":"ArrayTypeName","src":"11369:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89595,"initialValue":{"arguments":[{"hexValue":"32","id":89593,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11412:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89592,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11398:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89590,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11402:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89591,"nodeType":"ArrayTypeName","src":"11402:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89594,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11398:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11369:45:179"},{"expression":{"id":89609,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89596,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89589,"src":"11420:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89598,"indexExpression":{"hexValue":"30","id":89597,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11430:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11420:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89605,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89558,"src":"11457:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89604,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11451:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89603,"name":"uint8","nodeType":"ElementaryTypeName","src":"11451:5:179","typeDescriptions":{}}},"id":89606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11451:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89602,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11443:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89601,"name":"uint256","nodeType":"ElementaryTypeName","src":"11443:7:179","typeDescriptions":{}}},"id":89607,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11443:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89600,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11435:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89599,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11435:7:179","typeDescriptions":{}}},"id":89608,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11435:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11420:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89610,"nodeType":"ExpressionStatement","src":"11420:48:179"},{"expression":{"id":89624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89611,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89589,"src":"11474:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89613,"indexExpression":{"hexValue":"31","id":89612,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11484:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11474:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89620,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89561,"src":"11511:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89619,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11505:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89618,"name":"uint8","nodeType":"ElementaryTypeName","src":"11505:5:179","typeDescriptions":{}}},"id":89621,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11505:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89617,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11497:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89616,"name":"uint256","nodeType":"ElementaryTypeName","src":"11497:7:179","typeDescriptions":{}}},"id":89622,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11497:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89615,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11489:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89614,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11489:7:179","typeDescriptions":{}}},"id":89623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11489:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11474:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89625,"nodeType":"ExpressionStatement","src":"11474:48:179"},{"expression":{"arguments":[{"id":89629,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"11551:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89630,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89589,"src":"11561:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89631,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89568,"src":"11572:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89632,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89580,"src":"11585:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89633,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89583,"src":"11602:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":89626,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"11529:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":89628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11541:9:179","memberName":"setRecord","nodeType":"MemberAccess","referencedDeclaration":13635,"src":"11529:21:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,bytes memory,EncodedLengths,bytes memory)"}},"id":89634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11529:86:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89635,"nodeType":"ExpressionStatement","src":"11529:86:179"}]},"documentation":{"id":89555,"nodeType":"StructuredDocumentation","src":"11006:63:179","text":" @notice Set the full data using the data struct."},"implemented":true,"kind":"function","modifiers":[],"name":"set","nameLocation":"11081:3:179","parameters":{"id":89565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89558,"mutability":"mutable","name":"attacker","nameLocation":"11102:8:179","nodeType":"VariableDeclaration","scope":89637,"src":"11085:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89557,"nodeType":"UserDefinedTypeName","pathNode":{"id":89556,"name":"CombatArchetypes","nameLocations":["11085:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"11085:16:179"},"referencedDeclaration":87309,"src":"11085:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89561,"mutability":"mutable","name":"defender","nameLocation":"11129:8:179","nodeType":"VariableDeclaration","scope":89637,"src":"11112:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89560,"nodeType":"UserDefinedTypeName","pathNode":{"id":89559,"name":"CombatArchetypes","nameLocations":["11112:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"11112:16:179"},"referencedDeclaration":87309,"src":"11112:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89564,"mutability":"mutable","name":"_table","nameLocation":"11168:6:179","nodeType":"VariableDeclaration","scope":89637,"src":"11139:35:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData"},"typeName":{"id":89563,"nodeType":"UserDefinedTypeName","pathNode":{"id":89562,"name":"ArchetypeModifierData","nameLocations":["11139:21:179"],"nodeType":"IdentifierPath","referencedDeclaration":88235,"src":"11139:21:179"},"referencedDeclaration":88235,"src":"11139:21:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_storage_ptr","typeString":"struct ArchetypeModifierData"}},"visibility":"internal"}],"src":"11084:91:179"},"returnParameters":{"id":89566,"nodeType":"ParameterList","parameters":[],"src":"11185:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89721,"nodeType":"FunctionDefinition","src":"11690:561:179","nodes":[],"body":{"id":89720,"nodeType":"Block","src":"11804:447:179","nodes":[],"statements":[{"assignments":[89651],"declarations":[{"constant":false,"id":89651,"mutability":"mutable","name":"_staticData","nameLocation":"11823:11:179","nodeType":"VariableDeclaration","scope":89720,"src":"11810:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89650,"name":"bytes","nodeType":"ElementaryTypeName","src":"11810:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89660,"initialValue":{"arguments":[{"expression":{"id":89653,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89647,"src":"11850:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89654,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11857:3:179","memberName":"mod","nodeType":"MemberAccess","referencedDeclaration":88228,"src":"11850:10:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"expression":{"id":89655,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89647,"src":"11862:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89656,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11869:17:179","memberName":"attackerArchetype","nodeType":"MemberAccess","referencedDeclaration":88231,"src":"11862:24:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"expression":{"id":89657,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89647,"src":"11888:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89658,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11895:17:179","memberName":"defenderArchetype","nodeType":"MemberAccess","referencedDeclaration":88234,"src":"11888:24:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89652,"name":"encodeStatic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89946,"src":"11837:12:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$returns$_t_bytes_memory_ptr_$","typeString":"function (int32,enum CombatArchetypes,enum CombatArchetypes) pure returns (bytes memory)"}},"id":89659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11837:76:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"11810:103:179"},{"assignments":[89663],"declarations":[{"constant":false,"id":89663,"mutability":"mutable","name":"_encodedLengths","nameLocation":"11935:15:179","nodeType":"VariableDeclaration","scope":89720,"src":"11920:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89662,"nodeType":"UserDefinedTypeName","pathNode":{"id":89661,"name":"EncodedLengths","nameLocations":["11920:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"11920:14:179"},"referencedDeclaration":7251,"src":"11920:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"}],"id":89664,"nodeType":"VariableDeclarationStatement","src":"11920:30:179"},{"assignments":[89666],"declarations":[{"constant":false,"id":89666,"mutability":"mutable","name":"_dynamicData","nameLocation":"11969:12:179","nodeType":"VariableDeclaration","scope":89720,"src":"11956:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89665,"name":"bytes","nodeType":"ElementaryTypeName","src":"11956:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89667,"nodeType":"VariableDeclarationStatement","src":"11956:25:179"},{"assignments":[89672],"declarations":[{"constant":false,"id":89672,"mutability":"mutable","name":"_keyTuple","nameLocation":"12005:9:179","nodeType":"VariableDeclaration","scope":89720,"src":"11988:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89670,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11988:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89671,"nodeType":"ArrayTypeName","src":"11988:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89678,"initialValue":{"arguments":[{"hexValue":"32","id":89676,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12031:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89675,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12017:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89673,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12021:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89674,"nodeType":"ArrayTypeName","src":"12021:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89677,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12017:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11988:45:179"},{"expression":{"id":89692,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89679,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89672,"src":"12039:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89681,"indexExpression":{"hexValue":"30","id":89680,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12049:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12039:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89688,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89641,"src":"12076:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89687,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12070:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89686,"name":"uint8","nodeType":"ElementaryTypeName","src":"12070:5:179","typeDescriptions":{}}},"id":89689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12070:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89685,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12062:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89684,"name":"uint256","nodeType":"ElementaryTypeName","src":"12062:7:179","typeDescriptions":{}}},"id":89690,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12062:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89683,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12054:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89682,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12054:7:179","typeDescriptions":{}}},"id":89691,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12054:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"12039:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89693,"nodeType":"ExpressionStatement","src":"12039:48:179"},{"expression":{"id":89707,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89694,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89672,"src":"12093:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89696,"indexExpression":{"hexValue":"31","id":89695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12103:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12093:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89703,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89644,"src":"12130:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89702,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12124:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89701,"name":"uint8","nodeType":"ElementaryTypeName","src":"12124:5:179","typeDescriptions":{}}},"id":89704,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12124:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89700,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12116:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89699,"name":"uint256","nodeType":"ElementaryTypeName","src":"12116:7:179","typeDescriptions":{}}},"id":89705,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12116:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89698,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12108:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89697,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12108:7:179","typeDescriptions":{}}},"id":89706,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12108:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"12093:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89708,"nodeType":"ExpressionStatement","src":"12093:48:179"},{"expression":{"arguments":[{"id":89712,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"12168:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89713,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89672,"src":"12178:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89714,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89651,"src":"12189:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89715,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89663,"src":"12202:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89716,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89666,"src":"12219:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89717,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"12233:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89709,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"12148:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":89711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12158:9:179","memberName":"setRecord","nodeType":"MemberAccess","referencedDeclaration":11614,"src":"12148:19:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,bytes memory,EncodedLengths,bytes memory,FieldLayout)"}},"id":89718,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12148:98:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89719,"nodeType":"ExpressionStatement","src":"12148:98:179"}]},"documentation":{"id":89638,"nodeType":"StructuredDocumentation","src":"11624:63:179","text":" @notice Set the full data using the data struct."},"implemented":true,"kind":"function","modifiers":[],"name":"_set","nameLocation":"11699:4:179","parameters":{"id":89648,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89641,"mutability":"mutable","name":"attacker","nameLocation":"11721:8:179","nodeType":"VariableDeclaration","scope":89721,"src":"11704:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89640,"nodeType":"UserDefinedTypeName","pathNode":{"id":89639,"name":"CombatArchetypes","nameLocations":["11704:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"11704:16:179"},"referencedDeclaration":87309,"src":"11704:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89644,"mutability":"mutable","name":"defender","nameLocation":"11748:8:179","nodeType":"VariableDeclaration","scope":89721,"src":"11731:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89643,"nodeType":"UserDefinedTypeName","pathNode":{"id":89642,"name":"CombatArchetypes","nameLocations":["11731:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"11731:16:179"},"referencedDeclaration":87309,"src":"11731:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89647,"mutability":"mutable","name":"_table","nameLocation":"11787:6:179","nodeType":"VariableDeclaration","scope":89721,"src":"11758:35:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData"},"typeName":{"id":89646,"nodeType":"UserDefinedTypeName","pathNode":{"id":89645,"name":"ArchetypeModifierData","nameLocations":["11758:21:179"],"nodeType":"IdentifierPath","referencedDeclaration":88235,"src":"11758:21:179"},"referencedDeclaration":88235,"src":"11758:21:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_storage_ptr","typeString":"struct ArchetypeModifierData"}},"visibility":"internal"}],"src":"11703:91:179"},"returnParameters":{"id":89649,"nodeType":"ParameterList","parameters":[],"src":"11804:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89777,"nodeType":"FunctionDefinition","src":"12359:369:179","nodes":[],"body":{"id":89776,"nodeType":"Block","src":"12515:213:179","nodes":[],"statements":[{"expression":{"id":89748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":89735,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89727,"src":"12521:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"components":[{"arguments":[{"arguments":[{"arguments":[{"id":89742,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89724,"src":"12557:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"hexValue":"30","id":89743,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12564:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":89740,"name":"Bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7243,"src":"12541:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Bytes_$7243_$","typeString":"type(library Bytes)"}},"id":89741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12547:9:179","memberName":"getBytes4","nodeType":"MemberAccess","referencedDeclaration":6558,"src":"12541:15:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes4_$","typeString":"function (bytes memory,uint256) pure returns (bytes4)"}},"id":89744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12541:25:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"id":89739,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12534:6:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":89738,"name":"uint32","nodeType":"ElementaryTypeName","src":"12534:6:179","typeDescriptions":{}}},"id":89745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12534:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":89737,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12528:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":89736,"name":"int32","nodeType":"ElementaryTypeName","src":"12528:5:179","typeDescriptions":{}}},"id":89746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12528:40:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"id":89747,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"12527:42:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"src":"12521:48:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":89749,"nodeType":"ExpressionStatement","src":"12521:48:179"},{"expression":{"id":89761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":89750,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89730,"src":"12576:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89756,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89724,"src":"12635:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"hexValue":"34","id":89757,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12642:1:179","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"}],"expression":{"id":89754,"name":"Bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7243,"src":"12619:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Bytes_$7243_$","typeString":"type(library Bytes)"}},"id":89755,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12625:9:179","memberName":"getBytes1","nodeType":"MemberAccess","referencedDeclaration":6486,"src":"12619:15:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes1_$","typeString":"function (bytes memory,uint256) pure returns (bytes1)"}},"id":89758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12619:25:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":89753,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12613:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89752,"name":"uint8","nodeType":"ElementaryTypeName","src":"12613:5:179","typeDescriptions":{}}},"id":89759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12613:32:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89751,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"12596:16:179","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_CombatArchetypes_$87309_$","typeString":"type(enum CombatArchetypes)"}},"id":89760,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12596:50:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"src":"12576:70:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"id":89762,"nodeType":"ExpressionStatement","src":"12576:70:179"},{"expression":{"id":89774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":89763,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89733,"src":"12653:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89769,"name":"_blob","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89724,"src":"12712:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"hexValue":"35","id":89770,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12719:1:179","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"}],"expression":{"id":89767,"name":"Bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7243,"src":"12696:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Bytes_$7243_$","typeString":"type(library Bytes)"}},"id":89768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12702:9:179","memberName":"getBytes1","nodeType":"MemberAccess","referencedDeclaration":6486,"src":"12696:15:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes1_$","typeString":"function (bytes memory,uint256) pure returns (bytes1)"}},"id":89771,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12696:25:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":89766,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12690:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89765,"name":"uint8","nodeType":"ElementaryTypeName","src":"12690:5:179","typeDescriptions":{}}},"id":89772,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12690:32:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89764,"name":"CombatArchetypes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":87309,"src":"12673:16:179","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_CombatArchetypes_$87309_$","typeString":"type(enum CombatArchetypes)"}},"id":89773,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12673:50:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"src":"12653:70:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"id":89775,"nodeType":"ExpressionStatement","src":"12653:70:179"}]},"documentation":{"id":89722,"nodeType":"StructuredDocumentation","src":"12255:101:179","text":" @notice Decode the tightly packed blob of static data using this table's field layout."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeStatic","nameLocation":"12368:12:179","parameters":{"id":89725,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89724,"mutability":"mutable","name":"_blob","nameLocation":"12399:5:179","nodeType":"VariableDeclaration","scope":89777,"src":"12386:18:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89723,"name":"bytes","nodeType":"ElementaryTypeName","src":"12386:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"12380:28:179"},"returnParameters":{"id":89734,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89727,"mutability":"mutable","name":"mod","nameLocation":"12438:3:179","nodeType":"VariableDeclaration","scope":89777,"src":"12432:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":89726,"name":"int32","nodeType":"ElementaryTypeName","src":"12432:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"},{"constant":false,"id":89730,"mutability":"mutable","name":"attackerArchetype","nameLocation":"12460:17:179","nodeType":"VariableDeclaration","scope":89777,"src":"12443:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89729,"nodeType":"UserDefinedTypeName","pathNode":{"id":89728,"name":"CombatArchetypes","nameLocations":["12443:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"12443:16:179"},"referencedDeclaration":87309,"src":"12443:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89733,"mutability":"mutable","name":"defenderArchetype","nameLocation":"12496:17:179","nodeType":"VariableDeclaration","scope":89777,"src":"12479:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89732,"nodeType":"UserDefinedTypeName","pathNode":{"id":89731,"name":"CombatArchetypes","nameLocations":["12479:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"12479:16:179"},"referencedDeclaration":87309,"src":"12479:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"12431:83:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":89805,"nodeType":"FunctionDefinition","src":"12886:251:179","nodes":[],"body":{"id":89804,"nodeType":"Block","src":"13034:103:179","nodes":[],"statements":[{"expression":{"id":89802,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"expression":{"id":89791,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89789,"src":"13041:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"13048:3:179","memberName":"mod","nodeType":"MemberAccess","referencedDeclaration":88228,"src":"13041:10:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"expression":{"id":89794,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89789,"src":"13053:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89795,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"13060:17:179","memberName":"attackerArchetype","nodeType":"MemberAccess","referencedDeclaration":88231,"src":"13053:24:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"expression":{"id":89796,"name":"_table","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89789,"src":"13079:6:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData memory"}},"id":89797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"13086:17:179","memberName":"defenderArchetype","nodeType":"MemberAccess","referencedDeclaration":88234,"src":"13079:24:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"id":89798,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"13040:64:179","typeDescriptions":{"typeIdentifier":"t_tuple$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$","typeString":"tuple(int32,enum CombatArchetypes,enum CombatArchetypes)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":89800,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89780,"src":"13120:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":89799,"name":"decodeStatic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89777,"src":"13107:12:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$","typeString":"function (bytes memory) pure returns (int32,enum CombatArchetypes,enum CombatArchetypes)"}},"id":89801,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13107:25:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$","typeString":"tuple(int32,enum CombatArchetypes,enum CombatArchetypes)"}},"src":"13040:92:179","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89803,"nodeType":"ExpressionStatement","src":"13040:92:179"}]},"documentation":{"id":89778,"nodeType":"StructuredDocumentation","src":"12732:151:179","text":" @notice Decode the tightly packed blobs using this table's field layout.\n @param _staticData Tightly packed static fields."},"implemented":true,"kind":"function","modifiers":[],"name":"decode","nameLocation":"12895:6:179","parameters":{"id":89786,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89780,"mutability":"mutable","name":"_staticData","nameLocation":"12920:11:179","nodeType":"VariableDeclaration","scope":89805,"src":"12907:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89779,"name":"bytes","nodeType":"ElementaryTypeName","src":"12907:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":89783,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":89805,"src":"12937:14:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89782,"nodeType":"UserDefinedTypeName","pathNode":{"id":89781,"name":"EncodedLengths","nameLocations":["12937:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"12937:14:179"},"referencedDeclaration":7251,"src":"12937:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"},{"constant":false,"id":89785,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":89805,"src":"12957:12:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89784,"name":"bytes","nodeType":"ElementaryTypeName","src":"12957:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"12901:72:179"},"returnParameters":{"id":89790,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89789,"mutability":"mutable","name":"_table","nameLocation":"13026:6:179","nodeType":"VariableDeclaration","scope":89805,"src":"12997:35:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_memory_ptr","typeString":"struct ArchetypeModifierData"},"typeName":{"id":89788,"nodeType":"UserDefinedTypeName","pathNode":{"id":89787,"name":"ArchetypeModifierData","nameLocations":["12997:21:179"],"nodeType":"IdentifierPath","referencedDeclaration":88235,"src":"12997:21:179"},"referencedDeclaration":88235,"src":"12997:21:179","typeDescriptions":{"typeIdentifier":"t_struct$_ArchetypeModifierData_$88235_storage_ptr","typeString":"struct ArchetypeModifierData"}},"visibility":"internal"}],"src":"12996:37:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":89864,"nodeType":"FunctionDefinition","src":"13198:301:179","nodes":[],"body":{"id":89863,"nodeType":"Block","src":"13283:216:179","nodes":[],"statements":[{"assignments":[89819],"declarations":[{"constant":false,"id":89819,"mutability":"mutable","name":"_keyTuple","nameLocation":"13306:9:179","nodeType":"VariableDeclaration","scope":89863,"src":"13289:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89817,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13289:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89818,"nodeType":"ArrayTypeName","src":"13289:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89825,"initialValue":{"arguments":[{"hexValue":"32","id":89823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13332:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"13318:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89820,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13322:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89821,"nodeType":"ArrayTypeName","src":"13322:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89824,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13318:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"13289:45:179"},{"expression":{"id":89839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89826,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89819,"src":"13340:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89828,"indexExpression":{"hexValue":"30","id":89827,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13350:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13340:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89835,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89809,"src":"13377:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89834,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13371:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89833,"name":"uint8","nodeType":"ElementaryTypeName","src":"13371:5:179","typeDescriptions":{}}},"id":89836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13371:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13363:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89831,"name":"uint256","nodeType":"ElementaryTypeName","src":"13363:7:179","typeDescriptions":{}}},"id":89837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13363:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13355:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89829,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13355:7:179","typeDescriptions":{}}},"id":89838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13355:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"13340:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89840,"nodeType":"ExpressionStatement","src":"13340:48:179"},{"expression":{"id":89854,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89841,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89819,"src":"13394:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89843,"indexExpression":{"hexValue":"31","id":89842,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13404:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13394:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89850,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89812,"src":"13431:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89849,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13425:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89848,"name":"uint8","nodeType":"ElementaryTypeName","src":"13425:5:179","typeDescriptions":{}}},"id":89851,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13425:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89847,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13417:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89846,"name":"uint256","nodeType":"ElementaryTypeName","src":"13417:7:179","typeDescriptions":{}}},"id":89852,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13417:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13409:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89844,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13409:7:179","typeDescriptions":{}}},"id":89853,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13409:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"13394:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89855,"nodeType":"ExpressionStatement","src":"13394:48:179"},{"expression":{"arguments":[{"id":89859,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"13474:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89860,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89819,"src":"13484:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}],"expression":{"id":89856,"name":"StoreSwitch","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14558,"src":"13449:11:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreSwitch_$14558_$","typeString":"type(library StoreSwitch)"}},"id":89858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13461:12:179","memberName":"deleteRecord","nodeType":"MemberAccess","referencedDeclaration":14077,"src":"13449:24:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$__$","typeString":"function (ResourceId,bytes32[] memory)"}},"id":89861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13449:45:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89862,"nodeType":"ExpressionStatement","src":"13449:45:179"}]},"documentation":{"id":89806,"nodeType":"StructuredDocumentation","src":"13141:54:179","text":" @notice Delete all data for given keys."},"implemented":true,"kind":"function","modifiers":[],"name":"deleteRecord","nameLocation":"13207:12:179","parameters":{"id":89813,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89809,"mutability":"mutable","name":"attacker","nameLocation":"13237:8:179","nodeType":"VariableDeclaration","scope":89864,"src":"13220:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89808,"nodeType":"UserDefinedTypeName","pathNode":{"id":89807,"name":"CombatArchetypes","nameLocations":["13220:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"13220:16:179"},"referencedDeclaration":87309,"src":"13220:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89812,"mutability":"mutable","name":"defender","nameLocation":"13264:8:179","nodeType":"VariableDeclaration","scope":89864,"src":"13247:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89811,"nodeType":"UserDefinedTypeName","pathNode":{"id":89810,"name":"CombatArchetypes","nameLocations":["13247:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"13247:16:179"},"referencedDeclaration":87309,"src":"13247:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"13219:54:179"},"returnParameters":{"id":89814,"nodeType":"ParameterList","parameters":[],"src":"13283:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89924,"nodeType":"FunctionDefinition","src":"13560:314:179","nodes":[],"body":{"id":89923,"nodeType":"Block","src":"13646:228:179","nodes":[],"statements":[{"assignments":[89878],"declarations":[{"constant":false,"id":89878,"mutability":"mutable","name":"_keyTuple","nameLocation":"13669:9:179","nodeType":"VariableDeclaration","scope":89923,"src":"13652:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89876,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13652:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89877,"nodeType":"ArrayTypeName","src":"13652:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":89884,"initialValue":{"arguments":[{"hexValue":"32","id":89882,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13695:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":89881,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"13681:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":89879,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13685:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89880,"nodeType":"ArrayTypeName","src":"13685:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":89883,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13681:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"13652:45:179"},{"expression":{"id":89898,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89885,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89878,"src":"13703:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89887,"indexExpression":{"hexValue":"30","id":89886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13713:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13703:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89894,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89868,"src":"13740:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89893,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13734:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89892,"name":"uint8","nodeType":"ElementaryTypeName","src":"13734:5:179","typeDescriptions":{}}},"id":89895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13734:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89891,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13726:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89890,"name":"uint256","nodeType":"ElementaryTypeName","src":"13726:7:179","typeDescriptions":{}}},"id":89896,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13726:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89889,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13718:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89888,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13718:7:179","typeDescriptions":{}}},"id":89897,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13718:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"13703:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89899,"nodeType":"ExpressionStatement","src":"13703:48:179"},{"expression":{"id":89913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":89900,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89878,"src":"13757:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":89902,"indexExpression":{"hexValue":"31","id":89901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13767:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13757:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":89909,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89871,"src":"13794:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89908,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13788:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":89907,"name":"uint8","nodeType":"ElementaryTypeName","src":"13788:5:179","typeDescriptions":{}}},"id":89910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13788:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":89906,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13780:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":89905,"name":"uint256","nodeType":"ElementaryTypeName","src":"13780:7:179","typeDescriptions":{}}},"id":89911,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13780:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":89904,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13772:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":89903,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13772:7:179","typeDescriptions":{}}},"id":89912,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13772:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"13757:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89914,"nodeType":"ExpressionStatement","src":"13757:48:179"},{"expression":{"arguments":[{"id":89918,"name":"_tableId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88242,"src":"13835:8:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},{"id":89919,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89878,"src":"13845:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},{"id":89920,"name":"_fieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":88249,"src":"13856:12:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"},{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}],"expression":{"id":89915,"name":"StoreCore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":12701,"src":"13812:9:179","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_StoreCore_$12701_$","typeString":"type(library StoreCore)"}},"id":89917,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13822:12:179","memberName":"deleteRecord","nodeType":"MemberAccess","referencedDeclaration":12133,"src":"13812:22:179","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_userDefinedValueType$_ResourceId_$9486_$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_userDefinedValueType$_FieldLayout_$7885_$returns$__$","typeString":"function (ResourceId,bytes32[] memory,FieldLayout)"}},"id":89921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13812:57:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":89922,"nodeType":"ExpressionStatement","src":"13812:57:179"}]},"documentation":{"id":89865,"nodeType":"StructuredDocumentation","src":"13503:54:179","text":" @notice Delete all data for given keys."},"implemented":true,"kind":"function","modifiers":[],"name":"_deleteRecord","nameLocation":"13569:13:179","parameters":{"id":89872,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89868,"mutability":"mutable","name":"attacker","nameLocation":"13600:8:179","nodeType":"VariableDeclaration","scope":89924,"src":"13583:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89867,"nodeType":"UserDefinedTypeName","pathNode":{"id":89866,"name":"CombatArchetypes","nameLocations":["13583:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"13583:16:179"},"referencedDeclaration":87309,"src":"13583:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89871,"mutability":"mutable","name":"defender","nameLocation":"13627:8:179","nodeType":"VariableDeclaration","scope":89924,"src":"13610:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89870,"nodeType":"UserDefinedTypeName","pathNode":{"id":89869,"name":"CombatArchetypes","nameLocations":["13610:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"13610:16:179"},"referencedDeclaration":87309,"src":"13610:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"13582:54:179"},"returnParameters":{"id":89873,"nodeType":"ParameterList","parameters":[],"src":"13646:0:179"},"scope":90044,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":89946,"nodeType":"FunctionDefinition","src":"14034:235:179","nodes":[],"body":{"id":89945,"nodeType":"Block","src":"14192:77:179","nodes":[],"statements":[{"expression":{"arguments":[{"id":89940,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89927,"src":"14222:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"id":89941,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89930,"src":"14227:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"id":89942,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89933,"src":"14246:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"expression":{"id":89938,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14205:3:179","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":89939,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14209:12:179","memberName":"encodePacked","nodeType":"MemberAccess","src":"14205:16:179","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":89943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14205:59:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":89937,"id":89944,"nodeType":"Return","src":"14198:66:179"}]},"documentation":{"id":89925,"nodeType":"StructuredDocumentation","src":"13878:153:179","text":" @notice Tightly pack static (fixed length) data using this table's schema.\n @return The static data, encoded into a sequence of bytes."},"implemented":true,"kind":"function","modifiers":[],"name":"encodeStatic","nameLocation":"14043:12:179","parameters":{"id":89934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89927,"mutability":"mutable","name":"mod","nameLocation":"14067:3:179","nodeType":"VariableDeclaration","scope":89946,"src":"14061:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":89926,"name":"int32","nodeType":"ElementaryTypeName","src":"14061:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"},{"constant":false,"id":89930,"mutability":"mutable","name":"attackerArchetype","nameLocation":"14093:17:179","nodeType":"VariableDeclaration","scope":89946,"src":"14076:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89929,"nodeType":"UserDefinedTypeName","pathNode":{"id":89928,"name":"CombatArchetypes","nameLocations":["14076:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"14076:16:179"},"referencedDeclaration":87309,"src":"14076:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89933,"mutability":"mutable","name":"defenderArchetype","nameLocation":"14133:17:179","nodeType":"VariableDeclaration","scope":89946,"src":"14116:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89932,"nodeType":"UserDefinedTypeName","pathNode":{"id":89931,"name":"CombatArchetypes","nameLocations":["14116:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"14116:16:179"},"referencedDeclaration":87309,"src":"14116:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"14055:99:179"},"returnParameters":{"id":89937,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89936,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":89946,"src":"14178:12:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89935,"name":"bytes","nodeType":"ElementaryTypeName","src":"14178:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"14177:14:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":89986,"nodeType":"FunctionDefinition","src":"14578:401:179","nodes":[],"body":{"id":89985,"nodeType":"Block","src":"14760:219:179","nodes":[],"statements":[{"assignments":[89966],"declarations":[{"constant":false,"id":89966,"mutability":"mutable","name":"_staticData","nameLocation":"14779:11:179","nodeType":"VariableDeclaration","scope":89985,"src":"14766:24:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89965,"name":"bytes","nodeType":"ElementaryTypeName","src":"14766:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89972,"initialValue":{"arguments":[{"id":89968,"name":"mod","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89949,"src":"14806:3:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},{"id":89969,"name":"attackerArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89952,"src":"14811:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},{"id":89970,"name":"defenderArchetype","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89955,"src":"14830:17:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":89967,"name":"encodeStatic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89946,"src":"14793:12:179","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_int32_$_t_enum$_CombatArchetypes_$87309_$_t_enum$_CombatArchetypes_$87309_$returns$_t_bytes_memory_ptr_$","typeString":"function (int32,enum CombatArchetypes,enum CombatArchetypes) pure returns (bytes memory)"}},"id":89971,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14793:55:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"14766:82:179"},{"assignments":[89975],"declarations":[{"constant":false,"id":89975,"mutability":"mutable","name":"_encodedLengths","nameLocation":"14870:15:179","nodeType":"VariableDeclaration","scope":89985,"src":"14855:30:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89974,"nodeType":"UserDefinedTypeName","pathNode":{"id":89973,"name":"EncodedLengths","nameLocations":["14855:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"14855:14:179"},"referencedDeclaration":7251,"src":"14855:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"}],"id":89976,"nodeType":"VariableDeclarationStatement","src":"14855:30:179"},{"assignments":[89978],"declarations":[{"constant":false,"id":89978,"mutability":"mutable","name":"_dynamicData","nameLocation":"14904:12:179","nodeType":"VariableDeclaration","scope":89985,"src":"14891:25:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89977,"name":"bytes","nodeType":"ElementaryTypeName","src":"14891:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":89979,"nodeType":"VariableDeclarationStatement","src":"14891:25:179"},{"expression":{"components":[{"id":89980,"name":"_staticData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89966,"src":"14931:11:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":89981,"name":"_encodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89975,"src":"14944:15:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},{"id":89982,"name":"_dynamicData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89978,"src":"14961:12:179","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"id":89983,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14930:44:179","typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_userDefinedValueType$_EncodedLengths_$7251_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,EncodedLengths,bytes memory)"}},"functionReturnParameters":89964,"id":89984,"nodeType":"Return","src":"14923:51:179"}]},"documentation":{"id":89947,"nodeType":"StructuredDocumentation","src":"14273:302:179","text":" @notice Encode all of a record's fields.\n @return The static (fixed length) data, encoded into a sequence of bytes.\n @return The lengths of the dynamic fields (packed into a single bytes32 value).\n @return The dynamic (variable length) data, encoded into a sequence of bytes."},"implemented":true,"kind":"function","modifiers":[],"name":"encode","nameLocation":"14587:6:179","parameters":{"id":89956,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89949,"mutability":"mutable","name":"mod","nameLocation":"14605:3:179","nodeType":"VariableDeclaration","scope":89986,"src":"14599:9:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":89948,"name":"int32","nodeType":"ElementaryTypeName","src":"14599:5:179","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"},{"constant":false,"id":89952,"mutability":"mutable","name":"attackerArchetype","nameLocation":"14631:17:179","nodeType":"VariableDeclaration","scope":89986,"src":"14614:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89951,"nodeType":"UserDefinedTypeName","pathNode":{"id":89950,"name":"CombatArchetypes","nameLocations":["14614:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"14614:16:179"},"referencedDeclaration":87309,"src":"14614:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89955,"mutability":"mutable","name":"defenderArchetype","nameLocation":"14671:17:179","nodeType":"VariableDeclaration","scope":89986,"src":"14654:34:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89954,"nodeType":"UserDefinedTypeName","pathNode":{"id":89953,"name":"CombatArchetypes","nameLocations":["14654:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"14654:16:179"},"referencedDeclaration":87309,"src":"14654:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"14593:99:179"},"returnParameters":{"id":89964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89958,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":89986,"src":"14716:12:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89957,"name":"bytes","nodeType":"ElementaryTypeName","src":"14716:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":89961,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":89986,"src":"14730:14:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":89960,"nodeType":"UserDefinedTypeName","pathNode":{"id":89959,"name":"EncodedLengths","nameLocations":["14730:14:179"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"14730:14:179"},"referencedDeclaration":7251,"src":"14730:14:179","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"},{"constant":false,"id":89963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":89986,"src":"14746:12:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":89962,"name":"bytes","nodeType":"ElementaryTypeName","src":"14746:5:179","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"14715:44:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":90043,"nodeType":"FunctionDefinition","src":"15072:318:179","nodes":[],"body":{"id":90042,"nodeType":"Block","src":"15203:187:179","nodes":[],"statements":[{"assignments":[90003],"declarations":[{"constant":false,"id":90003,"mutability":"mutable","name":"_keyTuple","nameLocation":"15226:9:179","nodeType":"VariableDeclaration","scope":90042,"src":"15209:26:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":90001,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15209:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":90002,"nodeType":"ArrayTypeName","src":"15209:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":90009,"initialValue":{"arguments":[{"hexValue":"32","id":90007,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15252:1:179","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":90006,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"15238:13:179","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes32[] memory)"},"typeName":{"baseType":{"id":90004,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15242:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":90005,"nodeType":"ArrayTypeName","src":"15242:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}}},"id":90008,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15238:16:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"15209:45:179"},{"expression":{"id":90023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":90010,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":90003,"src":"15260:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":90012,"indexExpression":{"hexValue":"30","id":90011,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15270:1:179","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15260:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":90019,"name":"attacker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89990,"src":"15297:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":90018,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15291:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":90017,"name":"uint8","nodeType":"ElementaryTypeName","src":"15291:5:179","typeDescriptions":{}}},"id":90020,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15291:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":90016,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15283:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":90015,"name":"uint256","nodeType":"ElementaryTypeName","src":"15283:7:179","typeDescriptions":{}}},"id":90021,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15283:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":90014,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15275:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":90013,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15275:7:179","typeDescriptions":{}}},"id":90022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15275:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"15260:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":90024,"nodeType":"ExpressionStatement","src":"15260:48:179"},{"expression":{"id":90038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":90025,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":90003,"src":"15314:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"id":90027,"indexExpression":{"hexValue":"31","id":90026,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15324:1:179","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15314:12:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":90034,"name":"defender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":89993,"src":"15351:8:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}],"id":90033,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15345:5:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":90032,"name":"uint8","nodeType":"ElementaryTypeName","src":"15345:5:179","typeDescriptions":{}}},"id":90035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15345:15:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":90031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15337:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":90030,"name":"uint256","nodeType":"ElementaryTypeName","src":"15337:7:179","typeDescriptions":{}}},"id":90036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15337:24:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":90029,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15329:7:179","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":90028,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15329:7:179","typeDescriptions":{}}},"id":90037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15329:33:179","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"15314:48:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":90039,"nodeType":"ExpressionStatement","src":"15314:48:179"},{"expression":{"id":90040,"name":"_keyTuple","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":90003,"src":"15376:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"functionReturnParameters":89998,"id":90041,"nodeType":"Return","src":"15369:16:179"}]},"documentation":{"id":89987,"nodeType":"StructuredDocumentation","src":"14983:86:179","text":" @notice Encode keys as a bytes32 array using this table's field layout."},"implemented":true,"kind":"function","modifiers":[],"name":"encodeKeyTuple","nameLocation":"15081:14:179","parameters":{"id":89994,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89990,"mutability":"mutable","name":"attacker","nameLocation":"15118:8:179","nodeType":"VariableDeclaration","scope":90043,"src":"15101:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89989,"nodeType":"UserDefinedTypeName","pathNode":{"id":89988,"name":"CombatArchetypes","nameLocations":["15101:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"15101:16:179"},"referencedDeclaration":87309,"src":"15101:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"},{"constant":false,"id":89993,"mutability":"mutable","name":"defender","nameLocation":"15149:8:179","nodeType":"VariableDeclaration","scope":90043,"src":"15132:25:179","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"},"typeName":{"id":89992,"nodeType":"UserDefinedTypeName","pathNode":{"id":89991,"name":"CombatArchetypes","nameLocations":["15132:16:179"],"nodeType":"IdentifierPath","referencedDeclaration":87309,"src":"15132:16:179"},"referencedDeclaration":87309,"src":"15132:16:179","typeDescriptions":{"typeIdentifier":"t_enum$_CombatArchetypes_$87309","typeString":"enum CombatArchetypes"}},"visibility":"internal"}],"src":"15095:66:179"},"returnParameters":{"id":89998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":89997,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":90043,"src":"15185:16:179","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":89995,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15185:7:179","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":89996,"nodeType":"ArrayTypeName","src":"15185:9:179","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"src":"15184:18:179"},"scope":90044,"stateMutability":"pure","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[],"canonicalName":"ArchetypeModifier","contractDependencies":[],"contractKind":"library","fullyImplemented":true,"linearizedBaseContracts":[90044],"name":"ArchetypeModifier","nameLocation":"1078:17:179","scope":90045,"usedErrors":[],"usedEvents":[]}],"license":"MIT"},"id":179}