{"abi":[],"bytecode":{"object":"0x","linkReferences":{}},"deployedBytecode":{"object":"0x","linkReferences":{}},"ast":{"absolutePath":"node_modules/@dk1a/solidity-stringutils/src/utils/unicode.sol","id":5665,"exportedSymbols":{"MASK_CONT":[5238],"MAX":[5214],"MAX_ONE_B":[5217],"MAX_THREE_B":[5223],"MAX_TWO_B":[5220],"TAG_CONT":[5226],"TAG_FOUR_B":[5235],"TAG_THREE_B":[5232],"TAG_TWO_B":[5229],"Unicode__InvalidCode":[5210],"decodeUtf8":[5606],"encodeUtf8":[5415],"isValidCodePoint":[5664],"lenUtf8":[5639],"utf8CharWidth":[5713]},"nodeType":"SourceUnit","src":"33:4499:10","nodes":[{"id":5206,"nodeType":"PragmaDirective","src":"33:24:10","nodes":[],"literals":["solidity","^","0.8",".17"]},{"id":5208,"nodeType":"ImportDirective","src":"59:43:10","nodes":[],"absolutePath":"node_modules/@dk1a/solidity-stringutils/src/utils/utf8.sol","file":"./utf8.sol","nameLocation":"-1:-1:-1","scope":5665,"sourceUnit":5965,"symbolAliases":[{"foreign":{"id":5207,"name":"utf8CharWidth","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5713,"src":"68:13:10","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5210,"nodeType":"ErrorDefinition","src":"449:29:10","nodes":[],"errorSelector":"3bb03d5c","name":"Unicode__InvalidCode","nameLocation":"455:20:10","parameters":{"id":5209,"nodeType":"ParameterList","parameters":[],"src":"475:2:10"}},{"id":5214,"nodeType":"VariableDeclaration","src":"519:31:10","nodes":[],"constant":true,"mutability":"constant","name":"MAX","nameLocation":"536:3:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5212,"name":"uint256","nodeType":"ElementaryTypeName","src":"519:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313046464646","id":5213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"542:8:10","typeDescriptions":{"typeIdentifier":"t_rational_1114111_by_1","typeString":"int_const 1114111"},"value":"0x10FFFF"},"visibility":"internal"},{"id":5217,"nodeType":"VariableDeclaration","src":"569:33:10","nodes":[],"constant":true,"mutability":"constant","name":"MAX_ONE_B","nameLocation":"586:9:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5215,"name":"uint256","nodeType":"ElementaryTypeName","src":"569:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830","id":5216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"598:4:10","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"0x80"},"visibility":"internal"},{"id":5220,"nodeType":"VariableDeclaration","src":"604:34:10","nodes":[],"constant":true,"mutability":"constant","name":"MAX_TWO_B","nameLocation":"621:9:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5218,"name":"uint256","nodeType":"ElementaryTypeName","src":"604:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078383030","id":5219,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"633:5:10","typeDescriptions":{"typeIdentifier":"t_rational_2048_by_1","typeString":"int_const 2048"},"value":"0x800"},"visibility":"internal"},{"id":5223,"nodeType":"VariableDeclaration","src":"640:38:10","nodes":[],"constant":true,"mutability":"constant","name":"MAX_THREE_B","nameLocation":"657:11:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5221,"name":"uint256","nodeType":"ElementaryTypeName","src":"640:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030","id":5222,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"671:7:10","typeDescriptions":{"typeIdentifier":"t_rational_65536_by_1","typeString":"int_const 65536"},"value":"0x10000"},"visibility":"internal"},{"id":5226,"nodeType":"VariableDeclaration","src":"716:32:10","nodes":[],"constant":true,"mutability":"constant","name":"TAG_CONT","nameLocation":"733:8:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5224,"name":"uint256","nodeType":"ElementaryTypeName","src":"716:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830","id":5225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"744:4:10","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"0x80"},"visibility":"internal"},{"id":5229,"nodeType":"VariableDeclaration","src":"750:33:10","nodes":[],"constant":true,"mutability":"constant","name":"TAG_TWO_B","nameLocation":"767:9:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5227,"name":"uint256","nodeType":"ElementaryTypeName","src":"750:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30784330","id":5228,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"779:4:10","typeDescriptions":{"typeIdentifier":"t_rational_192_by_1","typeString":"int_const 192"},"value":"0xC0"},"visibility":"internal"},{"id":5232,"nodeType":"VariableDeclaration","src":"785:35:10","nodes":[],"constant":true,"mutability":"constant","name":"TAG_THREE_B","nameLocation":"802:11:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5230,"name":"uint256","nodeType":"ElementaryTypeName","src":"785:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30784530","id":5231,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"816:4:10","typeDescriptions":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"},"value":"0xE0"},"visibility":"internal"},{"id":5235,"nodeType":"VariableDeclaration","src":"822:34:10","nodes":[],"constant":true,"mutability":"constant","name":"TAG_FOUR_B","nameLocation":"839:10:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5233,"name":"uint256","nodeType":"ElementaryTypeName","src":"822:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30784630","id":5234,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"852:4:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"value":"0xF0"},"visibility":"internal"},{"id":5238,"nodeType":"VariableDeclaration","src":"888:33:10","nodes":[],"constant":true,"mutability":"constant","name":"MASK_CONT","nameLocation":"905:9:10","scope":5665,"stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5236,"name":"uint256","nodeType":"ElementaryTypeName","src":"888:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783346","id":5237,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"917:4:10","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3F"},"visibility":"internal"},{"id":5415,"nodeType":"FunctionDefinition","src":"1064:1253:10","nodes":[],"body":{"id":5414,"nodeType":"Block","src":"1121:1196:10","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5248,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5246,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1131:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5247,"name":"MAX_ONE_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5217,"src":"1138:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1131:16:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5263,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5261,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1264:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5262,"name":"MAX_TWO_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5220,"src":"1271:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1264:16:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5292,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1462:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5293,"name":"MAX_THREE_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5223,"src":"1469:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1462:18:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5349,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5347,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1950:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":5348,"name":"MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"1958:3:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1950:11:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5409,"nodeType":"Block","src":"2269:46:10","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":5406,"name":"Unicode__InvalidCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5210,"src":"2286:20:10","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":5407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2286:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5408,"nodeType":"RevertStatement","src":"2279:29:10"}]},"id":5410,"nodeType":"IfStatement","src":"1946:369:10","trueBody":{"id":5405,"nodeType":"Block","src":"1963:300:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5362,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5354,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5352,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"2002:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3138","id":5353,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2010:2:10","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"2002:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5355,"name":"TAG_FOUR_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5235,"src":"2027:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2002:35:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5357,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2001:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"id":5360,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3331","id":5358,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2044:2:10","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2049:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"2044:6:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}}],"id":5361,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2043:8:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}},"src":"2001:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5375,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5369,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5367,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5363,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"2067:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3132","id":5364,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2075:2:10","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"2067:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5366,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"2080:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2067:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5368,"name":"TAG_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5226,"src":"2092:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2067:33:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5370,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2066:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"id":5373,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3330","id":5371,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2109:2:10","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5372,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2114:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"2109:6:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}}],"id":5374,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2108:8:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}},"src":"2066:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2001:115:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5389,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5377,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"2132:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"36","id":5378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2140:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"2132:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5380,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"2145:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2132:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5382,"name":"TAG_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5226,"src":"2157:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2132:33:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5384,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2131:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"},"id":5387,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3239","id":5385,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2174:2:10","typeDescriptions":{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},"value":"29"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5386,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2179:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"2174:6:10","typeDescriptions":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"}}],"id":5388,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2173:8:10","typeDescriptions":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"}},"src":"2131:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2001:180:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5401,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5395,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5391,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"2197:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5392,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"2210:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2197:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5394,"name":"TAG_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5226,"src":"2222:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2197:33:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5396,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2196:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"},"id":5399,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3238","id":5397,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2239:2:10","typeDescriptions":{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},"value":"28"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5398,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2244:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"2239:6:10","typeDescriptions":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"}}],"id":5400,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2238:8:10","typeDescriptions":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"}},"src":"2196:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2001:245:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5351,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1980:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":5350,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1980:7:10","typeDescriptions":{}}},"id":5403,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1980:276:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5245,"id":5404,"nodeType":"Return","src":"1973:283:10"}]}},"id":5411,"nodeType":"IfStatement","src":"1458:857:10","trueBody":{"id":5346,"nodeType":"Block","src":"1482:458:10","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5297,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5295,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1496:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"307846383030","id":5296,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1503:6:10","typeDescriptions":{"typeIdentifier":"t_rational_63488_by_1","typeString":"int_const 63488"},"value":"0xF800"},"src":"1496:13:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"307844383030","id":5298,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1513:6:10","typeDescriptions":{"typeIdentifier":"t_rational_55296_by_1","typeString":"int_const 55296"},"value":"0xD800"},"src":"1496:23:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5304,"nodeType":"IfStatement","src":"1492:214:10","trueBody":{"id":5303,"nodeType":"Block","src":"1521:185:10","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":5300,"name":"Unicode__InvalidCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5210,"src":"1673:20:10","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":5301,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1673:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5302,"nodeType":"RevertStatement","src":"1666:29:10"}]}},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5331,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5309,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5307,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1744:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3132","id":5308,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1752:2:10","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"1744:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5310,"name":"TAG_THREE_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5232,"src":"1769:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1744:36:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5312,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"1743:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"id":5315,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3331","id":5313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1786:2:10","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5314,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1791:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"1786:6:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}}],"id":5316,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1785:8:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}},"src":"1743:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5330,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5324,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5322,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5320,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5318,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1809:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"36","id":5319,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1817:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"1809:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5321,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"1822:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1809:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5323,"name":"TAG_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5226,"src":"1834:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1809:33:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5325,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"1808:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"id":5328,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3330","id":5326,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1851:2:10","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5327,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1856:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"1851:6:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}}],"id":5329,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1850:8:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}},"src":"1808:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1743:115:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5334,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5332,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1874:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5333,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"1887:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1874:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5335,"name":"TAG_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5226,"src":"1899:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1874:33:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5337,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"1873:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"},"id":5340,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3239","id":5338,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1916:2:10","typeDescriptions":{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},"value":"29"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1921:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"1916:6:10","typeDescriptions":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"}}],"id":5341,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1915:8:10","typeDescriptions":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"}},"src":"1873:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1743:180:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5306,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1722:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":5305,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1722:7:10","typeDescriptions":{}}},"id":5344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1722:211:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5245,"id":5345,"nodeType":"Return","src":"1715:218:10"}]}},"id":5412,"nodeType":"IfStatement","src":"1260:1055:10","trueBody":{"id":5291,"nodeType":"Block","src":"1282:170:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5270,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5266,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1321:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"36","id":5267,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1329:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"1321:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5269,"name":"TAG_TWO_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5229,"src":"1346:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1321:34:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5271,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"1320:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"id":5274,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3331","id":5272,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1363:2:10","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5273,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1368:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"1363:6:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}}],"id":5275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1362:8:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}},"src":"1320:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5277,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1386:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5278,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"1399:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1386:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"id":5280,"name":"TAG_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5226,"src":"1411:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1386:33:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5282,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"1385:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"id":5285,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3330","id":5283,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1428:2:10","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5284,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1433:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"1428:6:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}}],"id":5286,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1427:8:10","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}},"src":"1385:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1320:115:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5265,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1299:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":5264,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1299:7:10","typeDescriptions":{}}},"id":5289,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1299:146:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5245,"id":5290,"nodeType":"Return","src":"1292:153:10"}]}},"id":5413,"nodeType":"IfStatement","src":"1127:1188:10","trueBody":{"id":5260,"nodeType":"Block","src":"1149:105:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5257,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"id":5251,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5241,"src":"1188:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5252,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"1187:38:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"id":5255,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3331","id":5253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1230:2:10","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5254,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1235:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"1230:6:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}}],"id":5256,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1229:8:10","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}},"src":"1187:50:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":5249,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1166:7:10","typeDescriptions":{}}},"id":5258,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:81:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5245,"id":5259,"nodeType":"Return","src":"1159:88:10"}]}}]},"documentation":{"id":5239,"nodeType":"StructuredDocumentation","src":"924:139:10","text":" @dev Encodes a unicode code point as UTF-8.\n Reverts if the code point is invalid.\n The result is 1-4 bytes starting at MSB."},"implemented":true,"kind":"freeFunction","modifiers":[],"name":"encodeUtf8","nameLocation":"1073:10:10","parameters":{"id":5242,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5241,"mutability":"mutable","name":"code","nameLocation":"1092:4:10","nodeType":"VariableDeclaration","scope":5415,"src":"1084:12:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5240,"name":"uint256","nodeType":"ElementaryTypeName","src":"1084:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1083:14:10"},"returnParameters":{"id":5245,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5244,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5415,"src":"1112:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5243,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1112:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1111:9:10"},"scope":5665,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":5606,"nodeType":"FunctionDefinition","src":"2525:1231:10","nodes":[],"body":{"id":5605,"nodeType":"Block","src":"2581:1175:10","nodes":[],"statements":[{"assignments":[5424],"declarations":[{"constant":false,"id":5424,"mutability":"mutable","name":"leadingByte","nameLocation":"2595:11:10","nodeType":"VariableDeclaration","scope":5605,"src":"2587:19:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5423,"name":"uint256","nodeType":"ElementaryTypeName","src":"2587:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5434,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5429,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"2623:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5431,"indexExpression":{"hexValue":"30","id":5430,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2627:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2623:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5428,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2617:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5427,"name":"uint8","nodeType":"ElementaryTypeName","src":"2617:5:10","typeDescriptions":{}}},"id":5432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2617:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5426,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2609:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5425,"name":"uint256","nodeType":"ElementaryTypeName","src":"2609:7:10","typeDescriptions":{}}},"id":5433,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2609:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2587:44:10"},{"assignments":[5436],"declarations":[{"constant":false,"id":5436,"mutability":"mutable","name":"width","nameLocation":"2645:5:10","nodeType":"VariableDeclaration","scope":5605,"src":"2637:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5435,"name":"uint256","nodeType":"ElementaryTypeName","src":"2637:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5440,"initialValue":{"arguments":[{"id":5438,"name":"leadingByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5424,"src":"2667:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5437,"name":"utf8CharWidth","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5713,"src":"2653:13:10","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":5439,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2653:26:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2637:42:10"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5443,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5441,"name":"width","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5436,"src":"2690:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":5442,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2699:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"2690:10:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5447,"name":"width","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5436,"src":"2747:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":5448,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2756:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"2747:10:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5478,"name":"width","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5436,"src":"2974:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"33","id":5479,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2983:1:10","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"src":"2974:10:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5528,"name":"width","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5436,"src":"3296:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"34","id":5529,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3305:1:10","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"3296:10:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5600,"nodeType":"Block","src":"3708:46:10","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":5597,"name":"Unicode__InvalidCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5210,"src":"3725:20:10","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":5598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3725:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5599,"nodeType":"RevertStatement","src":"3718:29:10"}]},"id":5601,"nodeType":"IfStatement","src":"3292:462:10","trueBody":{"id":5596,"nodeType":"Block","src":"3308:394:10","statements":[{"assignments":[5532],"declarations":[{"constant":false,"id":5532,"mutability":"mutable","name":"byte1","nameLocation":"3326:5:10","nodeType":"VariableDeclaration","scope":5596,"src":"3318:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5531,"name":"uint256","nodeType":"ElementaryTypeName","src":"3318:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5542,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5537,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"3348:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5539,"indexExpression":{"hexValue":"31","id":5538,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3352:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3348:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5536,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3342:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5535,"name":"uint8","nodeType":"ElementaryTypeName","src":"3342:5:10","typeDescriptions":{}}},"id":5540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3342:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5534,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3334:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5533,"name":"uint256","nodeType":"ElementaryTypeName","src":"3334:7:10","typeDescriptions":{}}},"id":5541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3334:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3318:38:10"},{"assignments":[5544],"declarations":[{"constant":false,"id":5544,"mutability":"mutable","name":"byte2","nameLocation":"3374:5:10","nodeType":"VariableDeclaration","scope":5596,"src":"3366:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5543,"name":"uint256","nodeType":"ElementaryTypeName","src":"3366:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5554,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5549,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"3396:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5551,"indexExpression":{"hexValue":"32","id":5550,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3400:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3396:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5548,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3390:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5547,"name":"uint8","nodeType":"ElementaryTypeName","src":"3390:5:10","typeDescriptions":{}}},"id":5552,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3390:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3382:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5545,"name":"uint256","nodeType":"ElementaryTypeName","src":"3382:7:10","typeDescriptions":{}}},"id":5553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3382:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3366:38:10"},{"assignments":[5556],"declarations":[{"constant":false,"id":5556,"mutability":"mutable","name":"byte3","nameLocation":"3422:5:10","nodeType":"VariableDeclaration","scope":5596,"src":"3414:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5555,"name":"uint256","nodeType":"ElementaryTypeName","src":"3414:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5566,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5561,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"3444:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5563,"indexExpression":{"hexValue":"33","id":5562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3448:1:10","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3444:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5560,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3438:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5559,"name":"uint8","nodeType":"ElementaryTypeName","src":"3438:5:10","typeDescriptions":{}}},"id":5564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3438:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5558,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3430:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5557,"name":"uint256","nodeType":"ElementaryTypeName","src":"3430:7:10","typeDescriptions":{}}},"id":5565,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3430:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3414:38:10"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5569,"name":"leadingByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5424,"src":"3523:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783037","id":5570,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3537:4:10","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"0x07"},"src":"3523:18:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5572,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3522:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"3138","id":5573,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3551:2:10","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"3522:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5577,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5575,"name":"byte1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5532,"src":"3569:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5576,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"3583:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3569:23:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5578,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3568:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"3132","id":5579,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3597:2:10","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"3568:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3522:77:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5587,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5582,"name":"byte2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5544,"src":"3615:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5583,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"3629:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3615:23:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5585,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3614:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"36","id":5586,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3643:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"3614:30:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3522:122:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5589,"name":"byte3","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5556,"src":"3661:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5590,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"3675:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3661:23:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5592,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3660:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3522:163:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5568,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3469:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5567,"name":"uint256","nodeType":"ElementaryTypeName","src":"3469:7:10","typeDescriptions":{}}},"id":5594,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3469:226:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":5422,"id":5595,"nodeType":"Return","src":"3462:233:10"}]}},"id":5602,"nodeType":"IfStatement","src":"2970:784:10","trueBody":{"id":5527,"nodeType":"Block","src":"2986:300:10","statements":[{"assignments":[5482],"declarations":[{"constant":false,"id":5482,"mutability":"mutable","name":"byte1","nameLocation":"3004:5:10","nodeType":"VariableDeclaration","scope":5527,"src":"2996:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5481,"name":"uint256","nodeType":"ElementaryTypeName","src":"2996:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5492,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5487,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"3026:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5489,"indexExpression":{"hexValue":"31","id":5488,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3030:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3026:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5486,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3020:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5485,"name":"uint8","nodeType":"ElementaryTypeName","src":"3020:5:10","typeDescriptions":{}}},"id":5490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3020:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5484,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3012:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5483,"name":"uint256","nodeType":"ElementaryTypeName","src":"3012:7:10","typeDescriptions":{}}},"id":5491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3012:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2996:38:10"},{"assignments":[5494],"declarations":[{"constant":false,"id":5494,"mutability":"mutable","name":"byte2","nameLocation":"3052:5:10","nodeType":"VariableDeclaration","scope":5527,"src":"3044:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5493,"name":"uint256","nodeType":"ElementaryTypeName","src":"3044:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5504,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5499,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"3074:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5501,"indexExpression":{"hexValue":"32","id":5500,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3078:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3074:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5498,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3068:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5497,"name":"uint8","nodeType":"ElementaryTypeName","src":"3068:5:10","typeDescriptions":{}}},"id":5502,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3068:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3060:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5495,"name":"uint256","nodeType":"ElementaryTypeName","src":"3060:7:10","typeDescriptions":{}}},"id":5503,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3060:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3044:38:10"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5524,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5507,"name":"leadingByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5424,"src":"3153:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783046","id":5508,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3167:4:10","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"0x0F"},"src":"3153:18:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5510,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3152:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"3132","id":5511,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3181:2:10","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"3152:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5518,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5513,"name":"byte1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5482,"src":"3199:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5514,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"3213:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3199:23:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5516,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3198:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"36","id":5517,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3227:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"3198:30:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3152:76:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5520,"name":"byte2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5494,"src":"3245:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5521,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"3259:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3245:23:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5523,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3244:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3152:117:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5506,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3099:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5505,"name":"uint256","nodeType":"ElementaryTypeName","src":"3099:7:10","typeDescriptions":{}}},"id":5525,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3099:180:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":5422,"id":5526,"nodeType":"Return","src":"3092:187:10"}]}},"id":5603,"nodeType":"IfStatement","src":"2743:1011:10","trueBody":{"id":5477,"nodeType":"Block","src":"2759:205:10","statements":[{"assignments":[5451],"declarations":[{"constant":false,"id":5451,"mutability":"mutable","name":"byte1","nameLocation":"2777:5:10","nodeType":"VariableDeclaration","scope":5477,"src":"2769:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5450,"name":"uint256","nodeType":"ElementaryTypeName","src":"2769:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5461,"initialValue":{"arguments":[{"arguments":[{"baseExpression":{"id":5456,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5418,"src":"2799:3:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5458,"indexExpression":{"hexValue":"31","id":5457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2803:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2799:6:10","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5455,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2793:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":5454,"name":"uint8","nodeType":"ElementaryTypeName","src":"2793:5:10","typeDescriptions":{}}},"id":5459,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2793:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5453,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2785:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5452,"name":"uint256","nodeType":"ElementaryTypeName","src":"2785:7:10","typeDescriptions":{}}},"id":5460,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2785:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2769:38:10"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5464,"name":"leadingByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5424,"src":"2878:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783146","id":5465,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2892:4:10","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"0x1F"},"src":"2878:18:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5467,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2877:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"36","id":5468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2906:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"2877:30:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5472,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5470,"name":"byte1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5451,"src":"2923:5:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"id":5471,"name":"MASK_CONT","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5238,"src":"2937:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2923:23:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5473,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2922:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2877:70:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5463,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2824:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5462,"name":"uint256","nodeType":"ElementaryTypeName","src":"2824:7:10","typeDescriptions":{}}},"id":5475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2824:133:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":5422,"id":5476,"nodeType":"Return","src":"2817:140:10"}]}},"id":5604,"nodeType":"IfStatement","src":"2686:1068:10","trueBody":{"id":5446,"nodeType":"Block","src":"2702:35:10","statements":[{"expression":{"id":5444,"name":"leadingByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5424,"src":"2719:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":5422,"id":5445,"nodeType":"Return","src":"2712:18:10"}]}}]},"documentation":{"id":5416,"nodeType":"StructuredDocumentation","src":"2319:205:10","text":" @dev Decodes a UTF-8 character into its code point.\n Validates ONLY the leading byte, use `isValidCodePoint` on the result if UTF-8 wasn't validated.\n The input is 1-4 bytes starting at MSB."},"implemented":true,"kind":"freeFunction","modifiers":[],"name":"decodeUtf8","nameLocation":"2534:10:10","parameters":{"id":5419,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5418,"mutability":"mutable","name":"str","nameLocation":"2553:3:10","nodeType":"VariableDeclaration","scope":5606,"src":"2545:11:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5417,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2545:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2544:13:10"},"returnParameters":{"id":5422,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5421,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5606,"src":"2572:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5420,"name":"uint256","nodeType":"ElementaryTypeName","src":"2572:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2571:9:10"},"scope":5665,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":5639,"nodeType":"FunctionDefinition","src":"3923:248:10","nodes":[],"body":{"id":5638,"nodeType":"Block","src":"3977:194:10","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5616,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5614,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5609,"src":"3987:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5615,"name":"MAX_ONE_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5217,"src":"3994:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3987:16:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5622,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5620,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5609,"src":"4040:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5621,"name":"MAX_TWO_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5220,"src":"4047:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4040:16:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5626,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5609,"src":"4093:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5627,"name":"MAX_THREE_B","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5223,"src":"4100:11:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4093:18:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5634,"nodeType":"Block","src":"4144:25:10","statements":[{"expression":{"hexValue":"34","id":5632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4161:1:10","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"functionReturnParameters":5613,"id":5633,"nodeType":"Return","src":"4154:8:10"}]},"id":5635,"nodeType":"IfStatement","src":"4089:80:10","trueBody":{"id":5631,"nodeType":"Block","src":"4113:25:10","statements":[{"expression":{"hexValue":"33","id":5629,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4130:1:10","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"functionReturnParameters":5613,"id":5630,"nodeType":"Return","src":"4123:8:10"}]}},"id":5636,"nodeType":"IfStatement","src":"4036:133:10","trueBody":{"id":5625,"nodeType":"Block","src":"4058:25:10","statements":[{"expression":{"hexValue":"32","id":5623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4075:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"functionReturnParameters":5613,"id":5624,"nodeType":"Return","src":"4068:8:10"}]}},"id":5637,"nodeType":"IfStatement","src":"3983:186:10","trueBody":{"id":5619,"nodeType":"Block","src":"4005:25:10","statements":[{"expression":{"hexValue":"31","id":5617,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4022:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"functionReturnParameters":5613,"id":5618,"nodeType":"Return","src":"4015:8:10"}]}}]},"documentation":{"id":5607,"nodeType":"StructuredDocumentation","src":"3758:164:10","text":" @dev Returns the length of a code point in UTF-8 encoding.\n Does NOT validate it.\n WARNING: atm this function is neither used nor tested in this repo"},"implemented":true,"kind":"freeFunction","modifiers":[],"name":"lenUtf8","nameLocation":"3932:7:10","parameters":{"id":5610,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5609,"mutability":"mutable","name":"code","nameLocation":"3948:4:10","nodeType":"VariableDeclaration","scope":5639,"src":"3940:12:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5608,"name":"uint256","nodeType":"ElementaryTypeName","src":"3940:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3939:14:10"},"returnParameters":{"id":5613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5612,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5639,"src":"3968:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5611,"name":"uint256","nodeType":"ElementaryTypeName","src":"3968:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3967:9:10"},"scope":5665,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":5664,"nodeType":"FunctionDefinition","src":"4300:232:10","nodes":[],"body":{"id":5663,"nodeType":"Block","src":"4360:172:10","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5647,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5642,"src":"4429:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"307844383030","id":5648,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4436:6:10","typeDescriptions":{"typeIdentifier":"t_rational_55296_by_1","typeString":"int_const 55296"},"value":"0xD800"},"src":"4429:13:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5661,"nodeType":"Block","src":"4478:52:10","statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":5659,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5655,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5653,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5642,"src":"4495:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"307844464646","id":5654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4502:6:10","typeDescriptions":{"typeIdentifier":"t_rational_57343_by_1","typeString":"int_const 57343"},"value":"0xDFFF"},"src":"4495:13:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5656,"name":"code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5642,"src":"4512:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":5657,"name":"MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"4520:3:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4512:11:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4495:28:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":5646,"id":5660,"nodeType":"Return","src":"4488:35:10"}]},"id":5662,"nodeType":"IfStatement","src":"4425:105:10","trueBody":{"id":5652,"nodeType":"Block","src":"4444:28:10","statements":[{"expression":{"hexValue":"74727565","id":5650,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4461:4:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":5646,"id":5651,"nodeType":"Return","src":"4454:11:10"}]}}]},"documentation":{"id":5640,"nodeType":"StructuredDocumentation","src":"4173:126:10","text":" @dev Returns true if the code point is valid.\n WARNING: atm this function is neither used nor tested in this repo"},"implemented":true,"kind":"freeFunction","modifiers":[],"name":"isValidCodePoint","nameLocation":"4309:16:10","parameters":{"id":5643,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5642,"mutability":"mutable","name":"code","nameLocation":"4334:4:10","nodeType":"VariableDeclaration","scope":5664,"src":"4326:12:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5641,"name":"uint256","nodeType":"ElementaryTypeName","src":"4326:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4325:14:10"},"returnParameters":{"id":5646,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5645,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5664,"src":"4354:4:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":5644,"name":"bool","nodeType":"ElementaryTypeName","src":"4354:4:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4353:6:10"},"scope":5665,"stateMutability":"pure","virtual":false,"visibility":"internal"}],"license":"MIT"},"id":10}