Flow API
Coming Soon!
The Graffle Flow API allows for running queries against the Flow blockchain, both for the current and historical sporks.
Check for availability.
GET
api/ping
{
// Response
}
{
// Response
}
Get the latest block
GET
api/v1/blocks/getlatest
{
"height": 32362301,
"parentId": "547e12bfd93919ac0475b314ae9b19f6cec8e1881b6f0b6ed92a258f9b63de33",
"id": "0ca907e9638bdb67c4a72ace751dfe3d80d0293acd1421eefe63d6cc424347ca",
"timestamp": "2022-06-28T20:30:54.5133787+00:00",
"collectionGuarantees": [
{
"collectionId": "0c061642d61d0f7bade7cfc0a6ef10838aa44690ab238a1e3f9ed0b69f1eb2ea",
"signatures": [
""
]
},
{
"collectionId": "1045659dc5d52fec0ef1fc0936c854a7d06b6bb942c8c4fef1973df2df817ee6",
"signatures": [
""
]
},
{
"collectionId": "c2d393d4f47bfed499b262683ce64d6e8ec677f885fc61e884576b566752551b",
"signatures": [
""
]
},
{
"collectionId": "8d76b5ae9f5fbbf6f76ec21c72d4caaa080a4333fc9b9935faec3f8643aebdc3",
"signatures": [
""
]
}
],
"signatures": [
"f86f8b0000000000000000000000b0a168d6cb09711813f297340904bf676f149db5d81d848e0c36021ca8661e39041b1df1af3eaac73331ad2e75ae7a904f80b082068f8a6a4dea552d1cfbb79868ed3b4fa6e157cba6cb0fa0540fbbb8f2dee8cc50f253771cbc33fa0c1b1585edd763"
],
"blockSeals": []
}
Get block by height
GET
api/v1/blocks/height/{blockHeight}
Path Parameters
{
"height": 32362301,
"parentId": "547e12bfd93919ac0475b314ae9b19f6cec8e1881b6f0b6ed92a258f9b63de33",
"id": "0ca907e9638bdb67c4a72ace751dfe3d80d0293acd1421eefe63d6cc424347ca",
"timestamp": "2022-06-28T20:30:54.5133787+00:00",
"collectionGuarantees": [
{
"collectionId": "0c061642d61d0f7bade7cfc0a6ef10838aa44690ab238a1e3f9ed0b69f1eb2ea",
"signatures": [
""
]
},
{
"collectionId": "1045659dc5d52fec0ef1fc0936c854a7d06b6bb942c8c4fef1973df2df817ee6",
"signatures": [
""
]
},
{
"collectionId": "c2d393d4f47bfed499b262683ce64d6e8ec677f885fc61e884576b566752551b",
"signatures": [
""
]
},
{
"collectionId": "8d76b5ae9f5fbbf6f76ec21c72d4caaa080a4333fc9b9935faec3f8643aebdc3",
"signatures": [
""
]
}
],
"signatures": [
"f86f8b0000000000000000000000b0a168d6cb09711813f297340904bf676f149db5d81d848e0c36021ca8661e39041b1df1af3eaac73331ad2e75ae7a904f80b082068f8a6a4dea552d1cfbb79868ed3b4fa6e157cba6cb0fa0540fbbb8f2dee8cc50f253771cbc33fa0c1b1585edd763"
],
"blockSeals": []
}
Get the start and end block based on a date range
GET
api/v1/blocks/datesearch
Provide two Unix timestamps (in seconds) and retrieve the first and last block heights within that range.
Query Parameters
{
"blockHeightStart": 32327526,
"blockHeightEnd": 32363036
}
Get events by event type and block height range
GET
api/v1/events
Query Parameters
[
{
"transactionId": "d331787b582b534b3f8602ed923a00ea6fe9580a62cc6be5bc53f1dfc05743bd",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 24398685,
"price": 13.00000000,
"seller": "0x7d2ebbedabffebe7"
}
},
"transactionIndex": 1,
"eventIndex": 0,
"blockHeight": 22165059,
"blockId": "db3b6042d7ee622c22a4fc7723455427b6ec2c713c72a4735a8bd72259bce25c",
"blockTimestamp": "2021-12-30T19:21:27.6891208+00:00"
},
{
"transactionId": "1f6cd37d300378e4b67ab545ede1c9aac05e7c172fd8b75bfc98d7df6c35ed85",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 2858009,
"price": 4.00000000,
"seller": "0xb636df35a70dc581"
}
},
"transactionIndex": 1,
"eventIndex": 0,
"blockHeight": 22165060,
"blockId": "a165a62f958617056a02fac1f2a6c3b8c771fccf8aae1f20eea7ab7e65280def",
"blockTimestamp": "2021-12-30T19:21:29.7464716+00:00"
},
{
"transactionId": "961b27ce0f920eb6c5b3fccffa2e3efd6185617f71a9098f8682519c2953d02f",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 668227,
"price": 30.00000000,
"seller": "0x0396506e271b5521"
}
},
"transactionIndex": 3,
"eventIndex": 0,
"blockHeight": 22165060,
"blockId": "a165a62f958617056a02fac1f2a6c3b8c771fccf8aae1f20eea7ab7e65280def",
"blockTimestamp": "2021-12-30T19:21:29.7464716+00:00"
},
{
"transactionId": "fecf4ffbf058f42605890f212c3b6dbd30b71298166c2509025f527b4d4585de",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 17165137,
"price": 25.00000000,
"seller": "0x91f3fd236666aa04"
}
},
"transactionIndex": 4,
"eventIndex": 0,
"blockHeight": 22165060,
"blockId": "a165a62f958617056a02fac1f2a6c3b8c771fccf8aae1f20eea7ab7e65280def",
"blockTimestamp": "2021-12-30T19:21:29.7464716+00:00"
},
{
"transactionId": "e43111ef6323ae1533d164e27d539006a58811253c99d8057e05b399b7e5b784",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 2322889,
"price": 39.00000000,
"seller": "0xfa170f182775e621"
}
},
"transactionIndex": 2,
"eventIndex": 0,
"blockHeight": 22165062,
"blockId": "d602d059b74277232085b6f9234030d5a00c611871ac5595d05c8c36f255347a",
"blockTimestamp": "2021-12-30T19:21:33.507621+00:00"
},
{
"transactionId": "5779ee0d147383846999a7164ede4cfcdb946bb9128e40566b882c6d7a7a0c8d",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 25351416,
"price": 3.00000000,
"seller": "0xda9f016d07521653"
}
},
"transactionIndex": 1,
"eventIndex": 0,
"blockHeight": 22165063,
"blockId": "e7de1a5bf0200d825ff60965814512c859edb7ffea32b987e2a6dd8de9758eab",
"blockTimestamp": "2021-12-30T19:21:35.3498591+00:00"
},
{
"transactionId": "2158dadd4c6c3975c6ca95f5bfe1b21ec5b1d154a58d5c5710a1e4f5d379ba34",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 24424168,
"price": 12.00000000,
"seller": "0x38d8c90b23acea97"
}
},
"transactionIndex": 1,
"eventIndex": 0,
"blockHeight": 22165064,
"blockId": "1301630b786c1a70af69fbf485e7b3fa4d4916860a8aef38d728d49b9913fad8",
"blockTimestamp": "2021-12-30T19:21:37.2148565+00:00"
}
]
Get transaction
GET
api/v1/transaction/{transactionId}
Path Parameters
{
"flowTransactionResult": {
"blockId": "30260da28f60bc29b8fc4df9017dffcc0508bc623c193cc0baed359fe2d06a86",
"errorMessage": "",
"status": 4,
"statusDescription": "Sealed",
"statusCode": 0,
"events": [
{
"transactionId": "75acd997bc9e6e7d182a73462611424d51787c8ca113a8f596481920e6d6df60",
"event": {
"id": "A.c1e4f4f4c4257510.TopShotMarketV3.MomentListed",
"data": {
"id": 7650946,
"price": 14.00000000,
"seller": "0x1a9b3693d7787b93"
}
},
"transactionIndex": 0,
"eventIndex": 0,
"blockId": "30260da28f60bc29b8fc4df9017dffcc0508bc623c193cc0baed359fe2d06a86"
},
{
"transactionId": "75acd997bc9e6e7d182a73462611424d51787c8ca113a8f596481920e6d6df60",
"event": {
"id": "A.1654653399040a61.FlowToken.TokensWithdrawn",
"data": {
"amount": 0.00001000,
"from": "0x18eb4ee6b3c026d2"
}
},
"transactionIndex": 0,
"eventIndex": 1,
"blockId": "30260da28f60bc29b8fc4df9017dffcc0508bc623c193cc0baed359fe2d06a86"
},
{
"transactionId": "75acd997bc9e6e7d182a73462611424d51787c8ca113a8f596481920e6d6df60",
"event": {
"id": "A.1654653399040a61.FlowToken.TokensDeposited",
"data": {
"amount": 0.00001000,
"to": "0xf919ee77447b7497"
}
},
"transactionIndex": 0,
"eventIndex": 2,
"blockId": "30260da28f60bc29b8fc4df9017dffcc0508bc623c193cc0baed359fe2d06a86"
},
{
"transactionId": "75acd997bc9e6e7d182a73462611424d51787c8ca113a8f596481920e6d6df60",
"event": {
"id": "A.f919ee77447b7497.FlowFees.TokensDeposited",
"data": {
"amount": 0.00001000
}
},
"transactionIndex": 0,
"eventIndex": 3,
"blockId": "30260da28f60bc29b8fc4df9017dffcc0508bc623c193cc0baed359fe2d06a86"
}
]
},
"hasTransactionResult": true,
"flowTransaction": {
"script": {
"rawScript": "import FungibleToken from 0xf233dcee88fe0abe\nimport TopShotMarketV3 from 0xc1e4f4f4c4257510\nimport TopShot from 0x0b2a3299cc857e29\nimport Market from 0xc1e4f4f4c4257510\n\ntransaction() {\n\n\tprepare(acct: AuthAccount) {\n\n\t\t// check if moment is currently listed\n\t\tvar listed = false\n\t\tif let marketV3CollectionRef = acct.getCapability(/public/topshotSalev3Collection)\n\t\t\t.borrow<&{Market.SalePublic}>() {\n\n\t\t\tlet salePrice = marketV3CollectionRef.getPrice(tokenID: UInt64(7650946))\n\n\t\t\tif salePrice != nil {\n\t\t\t\tlisted = true\n\t\t\t}\n\t\t} else if let marketV1CollectionRef = acct.getCapability(/public/topshotSaleCollection)\n\t\t\t.borrow<&{Market.SalePublic}>() {\n\n\t\t\tlet salePrice = marketV1CollectionRef.getPrice(tokenID: UInt64(7650946))\n\n\t\t\tif salePrice != nil {\n\t\t\t\tlisted = true\n\t\t\t}\n\t\t} \n\t\tif listed {\n\t\t\tpanic(\"moment is already listed for sale\")\n\t\t}\n\n\t\t// check to see if a v3 sale collection already exists\n\t\tif acct.borrow<&TopShotMarketV3.SaleCollection>(from: TopShotMarketV3.marketStoragePath) == nil {\n\t\t\t// get the fungible token capabilities for the owner and beneficiary\n\t\t\tlet ownerCapability = acct.getCapability<&{FungibleToken.Receiver}>(/public/dapperUtilityCoinReceiver)\n\t\t\tlet beneficiaryCapability = getAccount(0xfaf0cc52c6e3acaf).getCapability<&{FungibleToken.Receiver}>(/public/dapperUtilityCoinReceiver)\n\n\t\t\tlet ownerCollection = acct.link<&TopShot.Collection>(/private/MomentCollection, target: /storage/MomentCollection)!\n\n\t\t\t// get a capability for the v1 collection\n\t\t\tvar v1SaleCollection: Capability<&Market.SaleCollection>? = nil\n\t\t\tif acct.borrow<&Market.SaleCollection>(from: /storage/topshotSaleCollection) != nil {\n\t\t\t\tv1SaleCollection = acct.link<&Market.SaleCollection>(/private/topshotSaleCollection, target: /storage/topshotSaleCollection)!\n\t\t\t}\n\n\t\t\t// create a new sale collection\n\t\t\tlet topshotSaleCollection <- TopShotMarketV3.createSaleCollection(ownerCollection: ownerCollection,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\townerCapability: ownerCapability,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbeneficiaryCapability: beneficiaryCapability,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcutPercentage: 0.050000,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmarketV1Capability: v1SaleCollection)\n\t\t\t\n\t\t\t// save it to storage\n\t\t\tacct.save(<-topshotSaleCollection, to: TopShotMarketV3.marketStoragePath)\n\t\t\n\t\t\t// create a public link to the sale collection\n\t\t\tacct.link<&TopShotMarketV3.SaleCollection{Market.SalePublic}>(TopShotMarketV3.marketPublicPath, target: TopShotMarketV3.marketStoragePath)\n\t\t}\n\n\t\t// borrow a reference to the sale\n\t\tlet topshotSaleCollection = acct.borrow<&TopShotMarketV3.SaleCollection>(from: TopShotMarketV3.marketStoragePath)\n\t\t\t?? panic(\"Could not borrow from sale in storage\")\n\t\t\n\t\t// put the moment up for sale\n\t\ttopshotSaleCollection.listForSale(tokenID: 7650946, price: UFix64(14))\n\t\t\n\t}\n}",
"scriptHash": "D5FBE78E780C6AD952D7177BA6DC63885D85F5E5D0C469A81970EAE3CC77BE1A"
},
"arguments": null,
"referenceBlockId": "796216e7e5f303a00046fa06b54ea85fc718b9c5a706ce487bfd4fce61baf7db",
"gasLimit": 9999,
"payer": {
"value": [
24,
235,
78,
230,
179,
192,
38,
210
],
"hexValue": "18eb4ee6b3c026d2"
},
"proposalKey": {
"address": {
"value": [
26,
155,
54,
147,
215,
120,
123,
147
],
"hexValue": "1a9b3693d7787b93"
},
"keyId": 7,
"sequenceNumber": 687
},
"authorizers": [
{
"value": [
26,
155,
54,
147,
215,
120,
123,
147
],
"hexValue": "1a9b3693d7787b93"
}
],
"payloadSignatures": [
{
"address": {
"value": [
26,
155,
54,
147,
215,
120,
123,
147
],
"hexValue": "1a9b3693d7787b93"
},
"keyId": 0,
"signature": "CggamzaT13h7kxpAP/qnYDg/wZph6sTZD2fG0JN1lT7qal/xUviVbJQmYBJdfX5Hi2ez2+GpuXmcWGiajZx9ZjZdXyyhmyB1ik6AjQ==",
"signatureHex": "3ffaa760383fc19a61eac4d90f67c6d09375953eea6a5ff152f8956c942660125d7d7e478b67b3dbe1a9b9799c58689a8d9c7d66365d5f2ca19b20758a4e808d"
},
{
"address": {
"value": [
26,
155,
54,
147,
215,
120,
123,
147
],
"hexValue": "1a9b3693d7787b93"
},
"keyId": 7,
"signature": "CggamzaT13h7kxAHGkA7Yv5B3koyql02uq81t/8jViXv30D0NWC2YrnZfNVUN8rV7Gtm2mIsrEC5mxDoR1/7R7HpXDAy+gspD3ThvSkn",
"signatureHex": "3b62fe41de4a32aa5d36baaf35b7ff235625efdf40f43560b662b9d97cd55437cad5ec6b66da622cac40b99b10e8475ffb47b1e95c3032fa0b290f74e1bd2927"
}
],
"envelopeSignatures": [
{
"address": {
"value": [
24,
235,
78,
230,
179,
192,
38,
210
],
"hexValue": "18eb4ee6b3c026d2"
},
"keyId": 0,
"signature": "CggY607ms8Am0hpAuJNm0QY3VxUOfQcyfGlqk3haMdGpl1DbLvkyOPMqYh95Dp0NmIlR9zVH0CmxoDDF9hXzCib2pDoZLPv37XQtbw==",
"signatureHex": "b89366d1063757150e7d07327c696a93785a31d1a99750db2ef93238f32a621f790e9d0d988951f73547d029b1a030c5f615f30a26f6a43a192cfbf7ed742d6f"
}
],
"signerList": {
"1a9b3693d7787b93": 0,
"18eb4ee6b3c026d2": 2
}
}
}
Get account at latest block
GET
api/v1/account/{address}
Path Parameters
{
"address": "c1e4f4f4c4257510",
"balance": 502440,
"code": "",
"keys": [
{
"index": 0,
"publicKey": "bcf047d80a2bf98ba3af162804c44891087e5c3c243539d536cff7b912c8a19bf52d341f2e5f5c73ae931edce8262479f2f62ac3611c786e048839b89a446faf",
"privateKey": null,
"signatureAlgorithm": 2,
"hashAlgorithm": 3,
"weight": 1000,
"sequenceNumber": 0,
"revoked": false,
"signer": null
}
],
"contracts": {
"TopShotMarketV3": "2f2a2a0a0a20202020546f7053686f744d61726b657456332e6364630a0a202020204465736372697074696f6e3a20436f6e747261637420646566696e6974696f6e7320666f7220757365727320746f2073656c6c207468656972206d6f6d656e74730a0a202020204d61726b6574706c6163652069732077686572652075736572732063616e2063726561746520612073616c6520636f6c6c656374696f6e207468617420746865790a2020202073746f726520696e207468656972206163636f756e742073746f726167652e20496e207468652073616c6520636f6c6c656374696f6e2c200a20202020746865792063616e20707574207468656972204e46547320757020666f722073616c652077697468206120707269636520616e64207075626c6973682061200a202020207265666572656e636520736f2074686174206f74686572732063616e20736565207468652073616c652e0a0a20202020496620616e6f746865722075736572207365657320616e204e4654207468617420746865792077616e7420746f206275792c0a20202020746865792063616e2073656e642066756e6769626c6520746f6b656e73207468617420657175616c20746865206275792070726963650a20202020746f2062757920746865204e46542e2020546865204e4654206973207472616e7366657272656420746f207468656d207768656e0a2020202074686579206d616b65207468652070757263686173652e0a0a202020204561636820757365722077686f2077616e747320746f2073656c6c20746f6b656e732077696c6c206861766520612073616c6520636f6c6c656374696f6e200a20202020696e7374616e636520696e207468656972206163636f756e74207468617420636f6e7461696e7320707269636520696e666f726d6174696f6e200a20202020666f722065616368206e6f646520696e20746865697220636f6c6c656374696f6e2e205468652073616c6520686f6c64732061206361706162696c6974792074686174200a202020206c696e6b7320746f207468656972206d61696e206d6f6d656e7420636f6c6c656374696f6e2e0a0a20202020546865792063616e20676976652061207265666572656e636520746f207468697320636f6c6c656374696f6e20746f20612063656e7472616c20636f6e74726163740a20202020736f20746861742069742063616e206c697374207468652073616c657320696e20612063656e7472616c20706c6163650a0a202020205768656e20612075736572206372656174657320612073616c652c20746865792077696c6c20737570706c7920666f757220617267756d656e74733a0a202020202d204120546f7053686f742e436f6c6c656374696f6e206361706162696c697479207468617420616c6c6f77732074686569722073616c6520746f2077697468647261770a20202020202061206d6f6d656e74207768656e206974206973207075726368617365642e0a202020202d20412046756e6769626c65546f6b656e2e5265636569766572206361706162696c6974792061732074686520706c61636520776865726520746865207061796d656e7420666f722074686520746f6b656e20676f65732e0a202020202d20412046756e6769626c65546f6b656e2e5265636569766572206361706162696c6974792073706563696679696e6720612062656e65666963696172792c207768657265206120637574206f662074686520707572636861736520676574732073656e742e200a202020202d2041206375742070657263656e746167652c2073706563696679696e6720686f77206d756368207468652062656e65666963696172792077696c6c20726563696576652e0a202020200a20202020546865206375742070657263656e746167652063616e2062652073657420746f207a65726f206966207468652075736572206465736972657320616e642074686579200a2020202077696c6c20726563656976652074686520656e746972657479206f66207468652070757263686173652e20546f7053686f742077696c6c20696e697469616c697a652073616c6573200a20202020666f7220757365727320776974682074686520546f7053686f742061646d696e207661756c7420617320746865207661756c74207768657265206375747320676574200a202020206465706f736974656420746f2e0a2a2a2f0a0a696d706f72742046756e6769626c65546f6b656e2066726f6d203078663233336463656538386665306162650a696d706f7274204e6f6e46756e6769626c65546f6b656e2066726f6d203078316437653537616135353831373434380a696d706f727420546f7053686f742066726f6d203078306232613332393963633835376532390a696d706f7274204d61726b65742066726f6d203078633165346634663463343235373531300a696d706f7274204461707065725574696c697479436f696e2066726f6d203078656164383932303833623365326336630a0a70756220636f6e747261637420546f7053686f744d61726b65745633207b0a0a202020202f2f202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a202020202f2f20546f7053686f74204d61726b657420636f6e7472616374204576656e7420646566696e6974696f6e730a202020202f2f202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a0a202020202f2f2f20656d6974746564207768656e206120546f7053686f74206d6f6d656e74206973206c697374656420666f722073616c650a20202020707562206576656e74204d6f6d656e744c69737465642869643a2055496e7436342c2070726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f2f20656d6974746564207768656e20746865207072696365206f662061206c6973746564206d6f6d656e7420686173206368616e6765640a20202020707562206576656e74204d6f6d656e7450726963654368616e6765642869643a2055496e7436342c206e657750726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f2f20656d6974746564207768656e206120746f6b656e206973207075726368617365642066726f6d20746865206d61726b65740a20202020707562206576656e74204d6f6d656e745075726368617365642869643a2055496e7436342c2070726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f2f20656d6974746564207768656e2061206d6f6d656e7420686173206265656e2077697468647261776e2066726f6d207468652073616c650a20202020707562206576656e74204d6f6d656e7457697468647261776e2869643a2055496e7436342c206f776e65723a20416464726573733f290a0a202020202f2f2f205061746820776865726520746865206053616c65436f6c6c656374696f6e602069732073746f7265640a20202020707562206c6574206d61726b657453746f72616765506174683a2053746f72616765506174680a0a202020202f2f2f205061746820776865726520746865207075626c6963206361706162696c69747920666f7220746865206053616c65436f6c6c656374696f6e602069730a20202020707562206c6574206d61726b65745075626c6963506174683a205075626c6963506174680a0a202020202f2f2f2053616c65436f6c6c656374696f6e0a202020202f2f2f0a202020202f2f2f205468697320697320746865206d61696e207265736f75726365207468617420746f6b656e2073656c6c6572732077696c6c2073746f726520696e207468656972206163636f756e740a202020202f2f2f20746f206d616e61676520746865204e46547320746861742074686579206172652073656c6c696e672e205468652053616c65436f6c6c656374696f6e0a202020202f2f2f20686f6c6473206120546f7053686f7420436f6c6c656374696f6e207265736f7572636520746f2073746f726520746865206d6f6d656e747320746861742061726520666f722073616c652e0a202020202f2f2f205468652053616c65436f6c6c656374696f6e20616c736f206b6565707320747261636b206f6620746865207072696365206f66206561636820746f6b656e2e0a202020202f2f2f200a202020202f2f2f205768656e206120746f6b656e206973207075726368617365642c2061206375742069732074616b656e2066726f6d2074686520746f6b656e730a202020202f2f2f20616e642073656e7420746f207468652062656e65666963696172792c207468656e207468652072657374206172652073656e7420746f207468652073656c6c65722e0a202020202f2f2f0a202020202f2f2f205468652073656c6c65722063686f6f7365732077686f207468652062656e656669636961727920697320616e6420776861742070657263656e746167650a202020202f2f2f206f662074686520746f6b656e7320676574732074616b656e2066726f6d207468652070757263686173650a20202020707562207265736f757263652053616c65436f6c6c656374696f6e3a204d61726b65742e53616c655075626c6963207b0a0a20202020202020202f2f2f204120636f6c6c656374696f6e206f6620746865206d6f6d656e747320746861742074686520757365722068617320666f722073616c650a20202020202020206163636573732873656c662920766172206f776e6572436f6c6c656374696f6e3a204361706162696c6974793c26546f7053686f742e436f6c6c656374696f6e3e0a0a20202020202020202f2f2f204361706162696c69747920746f20706f696e74206174207468652056312073616c6520636f6c6c656374696f6e0a20202020202020206163636573732873656c662920766172206d61726b657456314361706162696c6974793a204361706162696c6974793c264d61726b65742e53616c65436f6c6c656374696f6e3e3f0a0a20202020202020202f2f2f2044696374696f6e617279206f6620746865206c6f77206c6f772070726963657320666f722065616368204e46542062792049440a20202020202020206163636573732873656c662920766172207072696365733a207b55496e7436343a205546697836347d0a0a20202020202020202f2f2f205468652066756e6769626c6520746f6b656e207661756c74206f66207468652073656c6c65720a20202020202020202f2f2f20736f2074686174207768656e20736f6d656f6e652062757973206120746f6b656e2c2074686520746f6b656e7320617265206465706f73697465640a20202020202020202f2f2f20746f2074686973205661756c740a20202020202020206163636573732873656c662920766172206f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e0a0a20202020202020202f2f2f20546865206361706162696c6974792074686174206973207573656420666f72206465706f736974696e67200a20202020202020202f2f2f207468652062656e6566696369617279277320637574206f662065766572792073616c650a20202020202020206163636573732873656c6629207661722062656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e0a0a20202020202020202f2f2f205468652070657263656e7461676520746861742069732074616b656e2066726f6d20657665727920707572636861736520666f72207468652062656e65666963696172790a20202020202020202f2f2f20466f72206578616d706c652c206966207468652070657263656e74616765206973203135252c2063757450657263656e74616765203d20302e31350a2020202020202020707562207661722063757450657263656e746167653a205546697836340a0a2020202020202020696e697420286f776e6572436f6c6c656374696f6e3a204361706162696c6974793c26546f7053686f742e436f6c6c656374696f6e3e2c0a20202020202020202020202020206f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c0a202020202020202020202020202062656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c0a202020202020202020202020202063757450657263656e746167653a205546697836342c0a20202020202020202020202020206d61726b657456314361706162696c6974793a204361706162696c6974793c264d61726b65742e53616c65436f6c6c656374696f6e3e3f29207b0a202020202020202020202020707265207b0a202020202020202020202020202020202f2f20436865636b207468617420746865206f776e65722773206d6f6d656e7420636f6c6c656374696f6e206361706162696c69747920697320636f72726563740a202020202020202020202020202020206f776e6572436f6c6c656374696f6e2e636865636b28293a200a2020202020202020202020202020202020202020224f776e65722773204d6f6d656e7420436f6c6c656374696f6e204361706162696c69747920697320696e76616c696421220a0a202020202020202020202020202020202f2f20436865636b207468617420626f7468206361706162696c69746965732061726520666f722066756e6769626c6520746f6b656e205661756c74207265636569766572730a202020202020202020202020202020206f776e65724361706162696c6974792e636865636b28293a200a2020202020202020202020202020202020202020224f776e65722773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020202020202062656e65666963696172794361706162696c6974792e636865636b28293a200a20202020202020202020202020202020202020202242656e65666963696172792773205265636569766572204361706162696c69747920697320696e76616c69642122200a0a202020202020202020202020202020202f2f204d616b652073757265207468652056312073616c6520636f6c6c656374696f6e206361706162696c6974792069732076616c69640a202020202020202020202020202020206d61726b657456314361706162696c697479203d3d206e696c207c7c206d61726b657456314361706162696c697479212e636865636b28293a0a2020202020202020202020202020202020202020225631204d61726b6574204361706162696c69747920697320696e76616c6964220a2020202020202020202020207d0a2020202020202020202020200a2020202020202020202020202f2f2063726561746520616e20656d70747920636f6c6c656374696f6e20746f2073746f726520746865206d6f6d656e747320746861742061726520666f722073616c650a20202020202020202020202073656c662e6f776e6572436f6c6c656374696f6e203d206f776e6572436f6c6c656374696f6e0a20202020202020202020202073656c662e6f776e65724361706162696c697479203d206f776e65724361706162696c6974790a20202020202020202020202073656c662e62656e65666963696172794361706162696c697479203d2062656e65666963696172794361706162696c6974790a2020202020202020202020202f2f207072696365732061726520696e697469616c6c7920656d707479206265636175736520746865726520617265206e6f206d6f6d656e747320666f722073616c650a20202020202020202020202073656c662e707269636573203d207b7d0a20202020202020202020202073656c662e63757450657263656e74616765203d2063757450657263656e746167650a20202020202020202020202073656c662e6d61726b657456314361706162696c697479203d206d61726b657456314361706162696c6974790a20202020202020207d0a0a20202020202020202f2f2f206c697374466f7253616c65206c6973747320616e204e465420666f722073616c6520696e20746869732073616c6520636f6c6c656374696f6e0a20202020202020202f2f2f20617420746865207370656369666965642070726963650a20202020202020202f2f2f0a20202020202020202f2f2f20506172616d65746572733a20746f6b656e49443a20546865206964206f6620746865204e465420746f2062652070757420757020666f722073616c650a20202020202020202f2f2f2020202020202020202020202070726963653a20546865207072696365206f6620746865204e46540a20202020202020207075622066756e206c697374466f7253616c6528746f6b656e49443a2055496e7436342c2070726963653a2055466978363429207b0a202020202020202020202020707265207b0a2020202020202020202020202020202073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e626f72726f774d6f6d656e742869643a20746f6b656e49442920213d206e696c3a0a2020202020202020202020202020202020202020224d6f6d656e7420646f6573206e6f7420657869737420696e20746865206f776e6572277320636f6c6c656374696f6e220a2020202020202020202020207d0a0a2020202020202020202020202f2f205365742074686520746f6b656e27732070726963650a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d2070726963650a0a202020202020202020202020656d6974204d6f6d656e744c69737465642869643a20746f6b656e49442c2070726963653a2070726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f2f2063616e63656c53616c652063616e63656c732061206d6f6d656e742073616c6520616e6420636c65617273206974732070726963650a20202020202020202f2f2f0a20202020202020202f2f2f20506172616d65746572733a20746f6b656e49443a20746865204944206f662074686520746f6b656e20746f2077697468647261772066726f6d207468652073616c650a20202020202020202f2f2f0a20202020202020207075622066756e2063616e63656c53616c6528746f6b656e49443a2055496e74363429207b0a2020202020202020202020200a2020202020202020202020202f2f20466972737420636865636b20746869732076657273696f6e206f66207468652073616c650a20202020202020202020202069662073656c662e7072696365735b746f6b656e49445d20213d206e696c207b0a202020202020202020202020202020202f2f2052656d6f7665207468652070726963652066726f6d20746865207072696365732064696374696f6e6172790a2020202020202020202020202020202073656c662e7072696365732e72656d6f7665286b65793a20746f6b656e4944290a0a202020202020202020202020202020202f2f205365742070726963657320746f206e696c20666f72207468652077697468647261776e2049440a2020202020202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e696c0a202020202020202020202020202020200a202020202020202020202020202020202f2f20456d697420746865206576656e7420666f72207769746864726177696e672061206d6f6d656e742066726f6d207468652053616c650a20202020202020202020202020202020656d6974204d6f6d656e7457697468647261776e2869643a20746f6b656e49442c206f776e65723a2073656c662e6f776e65723f2e61646472657373290a0a2020202020202020202020202f2f204966206e6f7420666f756e6420696e20746869732053616c65436f6c6c656374696f6e2c20636865636b2056310a2020202020202020202020207d20656c7365206966206c65742076314d61726b6574203d2073656c662e6d61726b657456314361706162696c697479207b0a202020202020202020202020202020206c65742076314d61726b6574526566203d2076314d61726b65742e626f72726f772829210a0a2020202020202020202020202020202069662076314d61726b65745265662e676574507269636528746f6b656e49443a20746f6b656e49442920213d206e696c207b0a20202020202020202020202020202020202020202f2f20776974686472617720746865206d6f6d656e742066726f6d2074686520763120636f6c6c656374696f6e0a20202020202020202020202020202020202020206c657420746f6b656e203c2d2076314d61726b65745265662e776974686472617728746f6b656e49443a20746f6b656e4944290a0a20202020202020202020202020202020202020202f2f20626f72726f772061207265666572656e636520746f20746865206d61696e20746f702073686f7420636f6c6c656374696f6e0a20202020202020202020202020202020202020206c6574206f776e6572436f6c6c656374696f6e526566203d2073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f7728290a2020202020202020202020202020202020202020202020203f3f2070616e69632822436f756c64206e6f7420626f72726f77206f776e657220636f6c6c656374696f6e207265666572656e636522290a0a20202020202020202020202020202020202020202f2f206465706f736974207468652077697468647261776e206d6f6d656e7420696e746f20746865206d61696e20636f6c6c656374696f6e0a20202020202020202020202020202020202020206f776e6572436f6c6c656374696f6e5265662e6465706f73697428746f6b656e3a203c2d746f6b656e290a202020202020202020202020202020207d0a2020202020202020202020207d0a20202020202020207d0a0a20202020202020202f2f2f207075726368617365206c657473206120757365722073656e6420746f6b656e7320746f20707572636861736520616e204e4654207468617420697320666f722073616c650a20202020202020202f2f2f2074686520707572636861736564204e46542069732072657475726e656420746f20746865207472616e73616374696f6e20636f6e7465787420746861742063616c6c65642069740a20202020202020202f2f2f0a20202020202020202f2f2f20506172616d65746572733a20746f6b656e49443a20746865204944206f6620746865204e465420746f2070757263686173650a20202020202020202f2f2f20202020202020202020202020627579546f6b656e733a207468652066756e6769626c6520746f6b656e73207468617420617265207573656420746f2062757920746865204e46540a20202020202020202f2f2f0a20202020202020202f2f2f2052657475726e733a2040546f7053686f742e4e46543a2074686520707572636861736564204e46540a20202020202020207075622066756e20707572636861736528746f6b656e49443a2055496e7436342c20627579546f6b656e733a20404461707065725574696c697479436f696e2e5661756c74293a2040546f7053686f742e4e4654207b0a0a2020202020202020202020202f2f20466972737420636865636b20746869732073616c6520636f6c6c656374696f6e20666f7220746865204e46540a20202020202020202020202069662073656c662e7072696365735b746f6b656e49445d20213d206e696c207b0a20202020202020202020202020202020617373657274280a2020202020202020202020202020202020202020627579546f6b656e732e62616c616e6365203d3d2073656c662e7072696365735b746f6b656e49445d212c0a20202020202020202020202020202020202020206d6573736167653a20224e6f7420656e6f75676820746f6b656e7320746f2062757920746865204e465421220a20202020202020202020202020202020290a0a202020202020202020202020202020202f2f20526561642074686520707269636520666f722074686520746f6b656e0a202020202020202020202020202020206c6574207072696365203d2073656c662e7072696365735b746f6b656e49445d210a0a202020202020202020202020202020202f2f205365742074686520707269636520666f722074686520746f6b656e20746f206e696c0a2020202020202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e696c0a0a202020202020202020202020202020202f2f2054616b652074686520637574206f662074686520746f6b656e732074686174207468652062656e656669636961727920676574732066726f6d207468652073656e7420746f6b656e730a202020202020202020202020202020206c65742062656e6566696369617279437574203c2d20627579546f6b656e732e776974686472617728616d6f756e743a2070726963652a73656c662e63757450657263656e74616765290a0a202020202020202020202020202020202f2f204465706f73697420697420696e746f207468652062656e65666963696172792773205661756c740a2020202020202020202020202020202073656c662e62656e65666963696172794361706162696c6974792e626f72726f772829210a20202020202020202020202020202020202020202e6465706f7369742866726f6d3a203c2d62656e6566696369617279437574290a202020202020202020202020202020200a202020202020202020202020202020202f2f204465706f736974207468652072656d61696e696e6720746f6b656e7320696e746f20746865206f776e657273207661756c740a2020202020202020202020202020202073656c662e6f776e65724361706162696c6974792e626f72726f772829210a20202020202020202020202020202020202020202e6465706f7369742866726f6d3a203c2d627579546f6b656e73290a0a20202020202020202020202020202020656d6974204d6f6d656e745075726368617365642869643a20746f6b656e49442c2070726963653a2070726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a0a202020202020202020202020202020202f2f2052657475726e207468652070757263686173656420746f6b656e0a202020202020202020202020202020206c657420626f756768744d6f6d656e74203c2d2073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e776974686472617728776974686472617749443a20746f6b656e494429206173212040546f7053686f742e4e46540a0a2020202020202020202020202020202072657475726e203c2d626f756768744d6f6d656e740a0a2020202020202020202020202f2f204966206e6f7420666f756e6420696e20746869732053616c65436f6c6c656374696f6e2c20636865636b2056310a2020202020202020202020207d20656c7365207b0a202020202020202020202020202020206966206c65742076314d61726b6574203d2073656c662e6d61726b657456314361706162696c697479207b0a20202020202020202020202020202020202020206c65742076314d61726b6574526566203d2076314d61726b65742e626f72726f772829210a0a202020202020202020202020202020202020202072657475726e203c2d76314d61726b65745265662e707572636861736528746f6b656e49443a20746f6b656e49442c20627579546f6b656e733a203c2d627579546f6b656e73290a202020202020202020202020202020207d20656c7365207b0a202020202020202020202020202020202020202070616e696328224e6f20746f6b656e206d61746368696e67207468697320494420666f722073616c652122290a202020202020202020202020202020207d0a2020202020202020202020207d0a2020202020202020202020200a20202020202020202020202064657374726f7920627579546f6b656e73202f2f2054686973206c696e652063616e2062652072656d6f766564207768656e20746869732069737375652069732072656c65617365643a2068747470733a2f2f6769746875622e636f6d2f6f6e666c6f772f636164656e63652f70756c6c2f313030300a20202020202020202020202070616e696328224e6f20746f6b656e206d61746368696e67207468697320494420666f722073616c652122290a20202020202020207d0a0a20202020202020202f2f2f206368616e67654f776e65725265636569766572207570646174657320746865206361706162696c69747920666f72207468652073656c6c6572732066756e6769626c6520746f6b656e205661756c740a20202020202020202f2f2f0a20202020202020202f2f2f20506172616d65746572733a206e65774f776e65724361706162696c6974793a20546865206e65772066756e6769626c6520746f6b656e206361706162696c69747920666f7220746865206163636f756e74200a20202020202020202f2f2f20202020202020202020202020202020202020202020202020202020202020202077686f20726563656976656420746f6b656e7320666f72207075726368617365730a20202020202020207075622066756e206368616e67654f776e65725265636569766572285f206e65774f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e29207b0a202020202020202020202020707265207b0a202020202020202020202020202020206e65774f776e65724361706162696c6974792e626f72726f77282920213d206e696c3a200a2020202020202020202020202020202020202020224f776e65722773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020207d0a20202020202020202020202073656c662e6f776e65724361706162696c697479203d206e65774f776e65724361706162696c6974790a20202020202020207d0a0a20202020202020202f2f2f206368616e676542656e65666963696172795265636569766572207570646174657320746865206361706162696c69747920666f72207468652062656e6566696369617279206f662074686520637574206f66207468652073616c650a20202020202020202f2f2f0a20202020202020202f2f2f20506172616d65746572733a206e657742656e65666963696172794361706162696c69747920746865206e6577206361706162696c69747920666f72207468652062656e6566696369617279206f662074686520637574206f66207468652073616c650a20202020202020202f2f2f0a20202020202020207075622066756e206368616e676542656e65666963696172795265636569766572285f206e657742656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e29207b0a202020202020202020202020707265207b0a202020202020202020202020202020206e657742656e65666963696172794361706162696c6974792e626f72726f77282920213d206e696c3a200a20202020202020202020202020202020202020202242656e65666963696172792773205265636569766572204361706162696c69747920697320696e76616c69642122200a2020202020202020202020207d0a20202020202020202020202073656c662e62656e65666963696172794361706162696c697479203d206e657742656e65666963696172794361706162696c6974790a20202020202020207d0a0a20202020202020202f2f2f2067657450726963652072657475726e7320746865207072696365206f66206120737065636966696320746f6b656e20696e207468652073616c650a20202020202020202f2f2f200a20202020202020202f2f2f20506172616d65746572733a20746f6b656e49443a20546865204944206f6620746865204e46542077686f736520707269636520746f206765740a20202020202020202f2f2f0a20202020202020202f2f2f2052657475726e733a205546697836343a20546865207072696365206f662074686520746f6b656e0a20202020202020207075622066756e20676574507269636528746f6b656e49443a2055496e743634293a205546697836343f207b0a2020202020202020202020206966206c6574207072696365203d2073656c662e7072696365735b746f6b656e49445d207b0a2020202020202020202020202020202072657475726e2070726963650a2020202020202020202020207d20656c7365206966206c6574206d61726b65745631203d2073656c662e6d61726b657456314361706162696c697479207b0a2020202020202020202020202020202072657475726e206d61726b657456312e626f72726f772829212e676574507269636528746f6b656e49443a20746f6b656e4944290a2020202020202020202020207d0a20202020202020202020202072657475726e206e696c0a20202020202020207d0a0a20202020202020202f2f2f206765744944732072657475726e7320616e206172726179206f6620746f6b656e2049447320746861742061726520666f722073616c650a20202020202020207075622066756e2067657449447328293a205b55496e7436345d207b0a2020202020202020202020206c65742076334b657973203d2073656c662e7072696365732e6b6579730a0a2020202020202020202020202f2f2041646420616e792056312053616c65436f6c6c656374696f6e2049447320696620746865792065786973740a2020202020202020202020206966206c6574206d61726b65745631203d2073656c662e6d61726b657456314361706162696c697479207b0a202020202020202020202020202020206c65742076314b657973203d206d61726b657456312e626f72726f772829212e67657449447328290a2020202020202020202020202020202072657475726e2076314b6579732e636f6e6361742876334b657973290a2020202020202020202020207d20656c7365207b0a2020202020202020202020202020202072657475726e2076334b6579730a2020202020202020202020207d0a20202020202020207d0a0a20202020202020202f2f2f20626f72726f774d6f6d656e742052657475726e73206120626f72726f776564207265666572656e636520746f2061204d6f6d656e7420666f722073616c650a20202020202020202f2f2f20736f2074686174207468652063616c6c65722063616e207265616420646174612066726f6d2069740a20202020202020202f2f2f0a20202020202020202f2f2f20506172616d65746572733a2069643a20546865204944206f6620746865206d6f6d656e7420746f20626f72726f772061207265666572656e636520746f0a20202020202020202f2f2f0a20202020202020202f2f2f2052657475726e733a2026546f7053686f742e4e46543f204f7074696f6e616c207265666572656e636520746f2061206d6f6d656e7420666f722073616c65200a20202020202020202f2f2f202020202020202020202020202020202020202020202020736f2074686174207468652063616c6c65722063616e20726561642069747320646174610a20202020202020202f2f2f0a20202020202020207075622066756e20626f72726f774d6f6d656e742869643a2055496e743634293a2026546f7053686f742e4e46543f207b0a2020202020202020202020202f2f20666972737420636865636b207468697320636f6c6c656374696f6e0a20202020202020202020202069662073656c662e7072696365735b69645d20213d206e696c207b0a202020202020202020202020202020206c657420726566203d2073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e626f72726f774d6f6d656e742869643a206964290a2020202020202020202020202020202072657475726e207265660a2020202020202020202020207d20656c7365207b0a202020202020202020202020202020202f2f204966206974207761736e277420666f756e6420686572652c20636865636b207468652056312053616c65436f6c6c656374696f6e0a202020202020202020202020202020206966206c6574206d61726b65745631203d2073656c662e6d61726b657456314361706162696c697479207b0a202020202020202020202020202020202020202072657475726e206d61726b657456312e626f72726f772829212e626f72726f774d6f6d656e742869643a206964290a202020202020202020202020202020207d0a2020202020202020202020202020202072657475726e206e696c0a2020202020202020202020207d0a20202020202020207d0a202020207d0a0a202020202f2f2f20637265617465436f6c6c656374696f6e2072657475726e732061206e657720636f6c6c656374696f6e207265736f7572636520746f207468652063616c6c65720a202020207075622066756e2063726561746553616c65436f6c6c656374696f6e286f776e6572436f6c6c656374696f6e3a204361706162696c6974793c26546f7053686f742e436f6c6c656374696f6e3e2c0a2020202020202020202020202020202020202020202020202020202020202020206f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c0a20202020202020202020202020202020202020202020202020202020202020202062656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c0a20202020202020202020202020202020202020202020202020202020202020202063757450657263656e746167653a205546697836342c0a2020202020202020202020202020202020202020202020202020202020202020206d61726b657456314361706162696c6974793a204361706162696c6974793c264d61726b65742e53616c65436f6c6c656374696f6e3e3f293a204053616c65436f6c6c656374696f6e207b0a0a202020202020202072657475726e203c2d206372656174652053616c65436f6c6c656374696f6e286f776e6572436f6c6c656374696f6e3a206f776e6572436f6c6c656374696f6e2c0a202020202020202020202020202020202020202020202020202020202020202020202020202020206f776e65724361706162696c6974793a206f776e65724361706162696c6974792c0a2020202020202020202020202020202020202020202020202020202020202020202020202020202062656e65666963696172794361706162696c6974793a2062656e65666963696172794361706162696c6974792c0a2020202020202020202020202020202020202020202020202020202020202020202020202020202063757450657263656e746167653a2063757450657263656e746167652c0a202020202020202020202020202020202020202020202020202020202020202020202020202020206d61726b657456314361706162696c6974793a206d61726b657456314361706162696c697479290a202020207d0a0a20202020696e69742829207b0a202020202020202073656c662e6d61726b657453746f7261676550617468203d202f73746f726167652f746f7073686f7453616c6533436f6c6c656374696f6e0a202020202020202073656c662e6d61726b65745075626c696350617468203d202f7075626c69632f746f7073686f7453616c657633436f6c6c656374696f6e0a202020207d0a7d0a20",
"Market": "2f2a0a0a202020204d61726b6574546f7053686f742e6364630a0a202020204465736372697074696f6e3a20436f6e747261637420646566696e6974696f6e7320666f7220757365727320746f2073656c6c207468656972206d6f6d656e74730a0a20202020417574686f72733a204a6f736875612048616e6e616e206a6f736875612e68616e6e616e406461707065726c6162732e636f6d0a2020202020202020202020202044696574657220536869726c65792064657465406178696f6d7a656e2e636f6d0a0a202020204d61726b6574706c6163652069732077686572652075736572732063616e2063726561746520612073616c6520636f6c6c656374696f207468617420746865790a2020202073746f726520696e207468656972206163636f756e742073746f726167652e20496e207468652073616c6520636f6c6c656374696f6e2c0a20202020746865792063616e20707574207468656972204e46547320757020666f722073616c652077697468206120707269636520616e64207075626c69736820610a202020207265666572656e636520736f2074686174206f74686572732063616e20736565207468652073616c652e0a0a20202020496620616e6f746865722075736572207365657320616e204e4654207468617420746865792077616e7420746f206275792c0a20202020746865792063616e2073656e642066756e6769626c6520746f6b656e73207468617420657175616c206f722065786365656420746865206275792070726963650a20202020746f2062757920746865204e46542e2020546865204e4654206973207472616e7366657272656420746f207468656d207768656e0a2020202074686579206d616b65207468652070757263686173652e0a0a202020204561636820757365722077686f2077616e747320746f2073656c6c20746f6b656e732077696c6c206861766520612073616c6520636f6c6c656374696f6e0a20202020696e7374616e636520696e207468656972206163636f756e74207468617420686f6c64732074686520746f6b656e7320746861742074686579206172652070757474696e6720757020666f722073616c650a0a20202020546865792063616e20676976652061207265666572656e636520746f207468697320636f6c6c656374696f6e20746f20612063656e7472616c20636f6e74726163740a20202020736f20746861742069742063616e206c697374207468652073616c657320696e20612063656e7472616c20706c6163650a0a202020205768656e20612075736572206372656174657320612073616c652c20746865792077696c6c207370656369667920612066756e6769626c6520746f6b656e206361706162696c6974790a2020202061732074686520706c61636520776865726520746865207061796d656e7420666f722074686520746f6b656e20676f65732c20616e64207468657920616c736f20676976650a20202020616e6f746865722066756e6769626c6520746f6b656e206361706162696c69747920666f72207768657265206120637574206f66207468652070757263686173650a20202020676574732073656e742e20546865206375742063616e2062652073657420746f207a65726f206966207468652075736572206465736972657320616e6420746865790a2020202077696c6c20726563656976652074686520656e746972657479206f66207468652070757263686173652e20546f7073686f742077696c6c20696e697469616c697a652073616c65730a20202020666f7220757365727320776974682074686520746f7073686f742061646d696e207661756c7420617320746865207661756c742077686572652063757473206765740a202020206465706f736974656420746f2e0a2a2f0a0a696d706f72742046756e6769626c65546f6b656e2066726f6d203078663233336463656538386665306162650a696d706f7274204461707065725574696c697479436f696e2066726f6d203078656164383932303833623365326336630a696d706f7274204e6f6e46756e6769626c65546f6b656e2066726f6d203078316437653537616135353831373434380a696d706f727420546f7053686f742066726f6d203078306232613332393963633835376532390a0a70756220636f6e7472616374204d61726b6574207b0a0a202020202f2f202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a202020202f2f20546f7053686f74204d61726b657420636f6e7472616374204576656e7420646566696e6974696f6e730a202020202f2f202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a0a202020202f2f20656d6974746564207768656e206120546f7053686f74206d6f6d656e74206973206c697374656420666f722073616c650a20202020707562206576656e74204d6f6d656e744c69737465642869643a2055496e7436342c2070726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f20656d6974746564207768656e20746865207072696365206f662061206c6973746564206d6f6d656e7420686173206368616e6765640a20202020707562206576656e74204d6f6d656e7450726963654368616e6765642869643a2055496e7436342c206e657750726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f20656d6974746564207768656e206120746f6b656e206973207075726368617365642066726f6d20746865206d61726b65740a20202020707562206576656e74204d6f6d656e745075726368617365642869643a2055496e7436342c2070726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f20656d6974746564207768656e2061206d6f6d656e7420686173206265656e2077697468647261776e2066726f6d207468652073616c650a20202020707562206576656e74204d6f6d656e7457697468647261776e2869643a2055496e7436342c206f776e65723a20416464726573733f290a202020202f2f20656d6974746564207768656e20746865206375742070657263656e74616765206f66207468652073616c6520686173206265656e206368616e67656420627920746865206f776e65720a20202020707562206576656e742043757450657263656e746167654368616e676564286e657750657263656e743a205546697836342c2073656c6c65723a20416464726573733f290a0a202020202f2f2053616c655075626c69630a202020202f2f0a202020202f2f2054686520696e746572666163652074686174206120757365722063616e207075626c6973682074686569722073616c652061730a202020202f2f20746f20616c6c6f77206f746865727320746f206163636573732074686569722073616c650a20202020707562207265736f7572636520696e746572666163652053616c655075626c6963207b0a2020202020202020707562207661722063757450657263656e746167653a205546697836340a20202020202020207075622066756e20707572636861736528746f6b656e49443a2055496e7436342c20627579546f6b656e733a20404461707065725574696c697479436f696e2e5661756c74293a2040546f7053686f742e4e4654207b0a202020202020202020202020706f7374207b0a20202020202020202020202020202020726573756c742e6964203d3d20746f6b656e49443a2022546865204944206f66207468652077697468647261776e20746f6b656e206d757374206265207468652073616d652061732074686520726571756573746564204944220a2020202020202020202020207d0a20202020202020207d0a20202020202020207075622066756e20676574507269636528746f6b656e49443a2055496e743634293a205546697836343f0a20202020202020207075622066756e2067657449447328293a205b55496e7436345d0a20202020202020207075622066756e20626f72726f774d6f6d656e742869643a2055496e743634293a2026546f7053686f742e4e46543f207b0a2020202020202020202020202f2f2049662074686520726573756c742069736e2774206e696c2c20746865206964206f66207468652072657475726e6564207265666572656e63650a2020202020202020202020202f2f2073686f756c64206265207468652073616d652061732074686520617267756d656e7420746f207468652066756e6374696f6e0a202020202020202020202020706f7374207b0a2020202020202020202020202020202028726573756c74203d3d206e696c29207c7c2028726573756c743f2e6964203d3d206964293a0a20202020202020202020202020202020202020202243616e6e6f7420626f72726f77204d6f6d656e74207265666572656e63653a20546865204944206f66207468652072657475726e6564207265666572656e636520697320696e636f7272656374220a2020202020202020202020207d0a20202020202020207d0a202020207d0a0a202020202f2f2053616c65436f6c6c656374696f6e0a202020202f2f0a202020202f2f205468697320697320746865206d61696e207265736f75726365207468617420746f6b656e2073656c6c6572732077696c6c2073746f726520696e207468656972206163636f756e740a202020202f2f20746f206d616e61676520746865204e46547320746861742074686579206172652073656c6c696e672e205468652053616c65436f6c6c656374696f6e0a202020202f2f20686f6c6473206120546f7053686f7420436f6c6c656374696f6e207265736f7572636520746f2073746f726520746865206d6f6d656e747320746861742061726520666f722073616c650a202020202f2f205468652053616c65436f6c6c656374696f6e20616c736f206b6565707320747261636b206f6620746865207072696365206f66206561636820746f6b656e2e0a202020202f2f0a202020202f2f205768656e206120746f6b656e206973207075726368617365642c2061206375742069732074616b656e2066726f6d2074686520746f6b656e73207468617420617265207573656420746f0a202020202f2f20707572636861736520616e642073656e7420746f207468652062656e65666963696172792c207468656e207468652072657374206172652073656e7420746f207468652073656c6c65720a20202020707562207265736f757263652053616c65436f6c6c656374696f6e3a2053616c655075626c6963207b0a0a20202020202020202f2f204120636f6c6c656374696f6e206f6620746865206d6f6d656e747320746861742074686520757365722068617320666f722073616c650a20202020202020206163636573732873656c66292076617220666f7253616c653a2040546f7053686f742e436f6c6c656374696f6e0a0a20202020202020202f2f2044696374696f6e617279206f66207468652070726963657320666f722065616368204e46542062792049440a20202020202020206163636573732873656c662920766172207072696365733a207b55496e7436343a205546697836347d0a0a20202020202020202f2f205468652066756e6769626c6520746f6b656e207661756c74206f66207468652073656c6c65720a20202020202020202f2f20736f2074686174207768656e20736f6d656f6e652062757973206120746f6b656e2c2074686520746f6b656e7320617265206465706f73697465640a20202020202020202f2f20746f2074686973205661756c740a20202020202020206163636573732873656c662920766172206f776e65724361706162696c6974793a204361706162696c6974790a0a20202020202020202f2f20546865206361706162696c6974792074686174206973207573656420666f72206465706f736974696e670a20202020202020202f2f207468652062656e6566696369617279277320637574206f662065766572792073616c650a20202020202020206163636573732873656c6629207661722062656e65666963696172794361706162696c6974793a204361706162696c6974790a0a20202020202020202f2f207468652070657263656e7461676520746861742069732074616b656e2066726f6d20657665727920707572636861736520666f72207468652062656e65666963696172790a20202020202020202f2f20546869732069732061206c69746572616c2070657263656e746167650a20202020202020202f2f20466f72206578616d706c652c206966207468652070657263656e74616765206973203135252c2063757450657263656e74616765203d20302e31350a2020202020202020707562207661722063757450657263656e746167653a205546697836340a0a2020202020202020696e697420286f776e65724361706162696c6974793a204361706162696c6974792c2062656e65666963696172794361706162696c6974793a204361706162696c6974792c2063757450657263656e746167653a2055466978363429207b0a202020202020202020202020707265207b0a202020202020202020202020202020202f2f20436865636b207468617420626f7468206361706162696c69746965732061726520666f722066756e6769626c6520746f6b656e205661756c74207265636569766572730a202020202020202020202020202020202f2f20666f7220646170706572207574696c69747920636f696e0a202020202020202020202020202020206f776e65724361706162696c6974792e626f72726f773c267b46756e6769626c65546f6b656e2e52656365697665727d3e282920213d206e696c3a0a2020202020202020202020202020202020202020224f776e65722773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020202020202062656e65666963696172794361706162696c6974792e626f72726f773c267b46756e6769626c65546f6b656e2e52656365697665727d3e282920213d206e696c3a0a20202020202020202020202020202020202020202242656e65666963696172792773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020207d0a0a20202020202020202020202073656c662e666f7253616c65203c2d20546f7053686f742e637265617465456d707479436f6c6c656374696f6e2829206173212040546f7053686f742e436f6c6c656374696f6e0a20202020202020202020202073656c662e6f776e65724361706162696c697479203d206f776e65724361706162696c6974790a20202020202020202020202073656c662e62656e65666963696172794361706162696c697479203d2062656e65666963696172794361706162696c6974790a20202020202020202020202073656c662e707269636573203d207b7d0a20202020202020202020202073656c662e63757450657263656e74616765203d2063757450657263656e746167650a20202020202020207d0a0a20202020202020202f2f206c697374466f7253616c65206c6973747320616e204e465420666f722073616c6520696e20746869732073616c6520636f6c6c656374696f6e0a20202020202020202f2f20617420746865207370656369666965642070726963650a20202020202020207075622066756e206c697374466f7253616c6528746f6b656e3a2040546f7053686f742e4e46542c2070726963653a2055466978363429207b0a0a2020202020202020202020202f2f2067657420746865204944206f662074686520746f6b656e0a2020202020202020202020206c6574206964203d20746f6b656e2e69640a0a2020202020202020202020202f2f205365742074686520746f6b656e27732070726963650a20202020202020202020202073656c662e7072696365735b746f6b656e2e69645d203d2070726963650a0a2020202020202020202020202f2f204465706f7369742074686520746f6b656e20696e746f2074686520636f6c6c656374696f6e0a20202020202020202020202073656c662e666f7253616c652e6465706f73697428746f6b656e3a203c2d746f6b656e290a0a202020202020202020202020656d6974204d6f6d656e744c69737465642869643a2069642c2070726963653a2070726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f2057697468647261772072656d6f7665732061206d6f6d656e74207468617420776173206c697374656420666f722073616c650a20202020202020207075622066756e20776974686472617728746f6b656e49443a2055496e743634293a2040546f7053686f742e4e4654207b0a0a2020202020202020202020202f2f2072656d6f766520616e642072657475726e2074686520746f6b656e0a2020202020202020202020202f2f2077696c6c207265766572742069662074686520746f6b656e20646f65736e27742065786973740a2020202020202020202020206c657420746f6b656e203c2d2073656c662e666f7253616c652e776974686472617728776974686472617749443a20746f6b656e494429206173212040546f7053686f742e4e46540a0a2020202020202020202020202f2f2052656d6f7665207468652070726963652066726f6d20746865207072696365732064696374696f6e6172790a20202020202020202020202073656c662e7072696365732e72656d6f7665286b65793a20746f6b656e4944290a0a2020202020202020202020202f2f207365742070726963657320746f206e696c20666f72207468652077697468647261776e2049440a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e696c0a0a2020202020202020202020202f2f20456d697420746865206576656e7420666f72207769746864726177696e672061206d6f6d656e742066726f6d207468652053616c650a202020202020202020202020656d6974204d6f6d656e7457697468647261776e2869643a20746f6b656e2e69642c206f776e65723a2073656c662e6f776e65723f2e61646472657373290a0a2020202020202020202020202f2f2052657475726e207468652077697468647261776e20746f6b656e0a20202020202020202020202072657475726e203c2d746f6b656e0a20202020202020207d0a0a20202020202020202f2f207075726368617365206c657473206120757365722073656e6420746f6b656e7320746f20707572636861736520616e204e4654207468617420697320666f722073616c650a20202020202020202f2f2074686520707572636861736564204e46542069732072657475726e656420746f20746865207472616e73616374696f6e20636f6e7465787420746861742063616c6c65642069740a20202020202020207075622066756e20707572636861736528746f6b656e49443a2055496e7436342c20627579546f6b656e733a20404461707065725574696c697479436f696e2e5661756c74293a2040546f7053686f742e4e4654207b0a202020202020202020202020707265207b0a2020202020202020202020202020202073656c662e666f7253616c652e6f776e65644e4654735b746f6b656e49445d20213d206e696c2026262073656c662e7072696365735b746f6b656e49445d20213d206e696c3a0a2020202020202020202020202020202020202020224e6f20746f6b656e206d61746368696e67207468697320494420666f722073616c6521220a20202020202020202020202020202020627579546f6b656e732e62616c616e6365203d3d202873656c662e7072696365735b746f6b656e49445d203f3f20554669783634283029293a0a2020202020202020202020202020202020202020224e6f7420656e6f75676820746f6b656e7320746f2062757920746865204e465421220a2020202020202020202020207d0a0a2020202020202020202020202f2f20526561642074686520707269636520666f722074686520746f6b656e0a2020202020202020202020206c6574207072696365203d2073656c662e7072696365735b746f6b656e49445d210a0a2020202020202020202020202f2f205365742074686520707269636520666f722074686520746f6b656e20746f206e696c0a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e696c0a0a2020202020202020202020202f2f2074616b652074686520637574206f662074686520746f6b656e732074686174207468652062656e656669636961727920676574732066726f6d207468652073656e7420746f6b656e730a2020202020202020202020206c65742062656e6566696369617279437574203c2d20627579546f6b656e732e776974686472617728616d6f756e743a2070726963652a73656c662e63757450657263656e74616765290a0a2020202020202020202020202f2f206465706f73697420697420696e746f207468652062656e65666963696172792773205661756c740a20202020202020202020202073656c662e62656e65666963696172794361706162696c6974792e626f72726f773c267b46756e6769626c65546f6b656e2e52656365697665727d3e2829210a202020202020202020202020202020202e6465706f7369742866726f6d3a203c2d62656e6566696369617279437574290a0a2020202020202020202020202f2f206465706f736974207468652072656d61696e696e6720746f6b656e7320696e746f20746865206f776e657273207661756c740a20202020202020202020202073656c662e6f776e65724361706162696c6974792e626f72726f773c267b46756e6769626c65546f6b656e2e52656365697665727d3e2829210a202020202020202020202020202020202e6465706f7369742866726f6d3a203c2d627579546f6b656e73290a0a202020202020202020202020656d6974204d6f6d656e745075726368617365642869643a20746f6b656e49442c2070726963653a2070726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a0a2020202020202020202020202f2f2072657475726e207468652070757263686173656420746f6b656e0a20202020202020202020202072657475726e203c2d73656c662e776974686472617728746f6b656e49443a20746f6b656e4944290a20202020202020207d0a0a20202020202020202f2f206368616e67655072696365206368616e67657320746865207072696365206f66206120746f6b656e20746861742069732063757272656e746c7920666f722073616c650a20202020202020207075622066756e206368616e6765507269636528746f6b656e49443a2055496e7436342c206e657750726963653a2055466978363429207b0a202020202020202020202020707265207b0a2020202020202020202020202020202073656c662e7072696365735b746f6b656e49445d20213d206e696c3a202243616e6e6f74206368616e67652074686520707269636520666f72206120746f6b656e2074686174206973206e6f7420666f722073616c65220a2020202020202020202020207d0a2020202020202020202020202f2f2073657420746865206e65772070726963650a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e657750726963650a0a202020202020202020202020656d6974204d6f6d656e7450726963654368616e6765642869643a20746f6b656e49442c206e657750726963653a206e657750726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f206368616e676550657263656e74616765206368616e67657320746865206375742070657263656e74616765206f662074686520746f6b656e7320746861742061726520666f722073616c650a20202020202020207075622066756e206368616e676550657263656e74616765285f206e657750657263656e743a2055466978363429207b0a20202020202020202020202073656c662e63757450657263656e74616765203d206e657750657263656e740a0a202020202020202020202020656d69742043757450657263656e746167654368616e676564286e657750657263656e743a206e657750657263656e742c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f206368616e67654f776e65725265636569766572207570646174657320746865206361706162696c69747920666f72207468652073656c6c6572732066756e6769626c6520746f6b656e205661756c740a20202020202020207075622066756e206368616e67654f776e65725265636569766572285f206e65774f776e65724361706162696c6974793a204361706162696c69747929207b0a202020202020202020202020707265207b0a202020202020202020202020202020206e65774f776e65724361706162696c6974792e626f72726f773c267b46756e6769626c65546f6b656e2e52656365697665727d3e282920213d206e696c3a0a2020202020202020202020202020202020202020224f776e65722773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020207d0a20202020202020202020202073656c662e6f776e65724361706162696c697479203d206e65774f776e65724361706162696c6974790a20202020202020207d0a0a20202020202020202f2f206368616e676542656e65666963696172795265636569766572207570646174657320746865206361706162696c69747920666f72207468652062656e6566696369617279206f662074686520637574206f66207468652073616c650a20202020202020207075622066756e206368616e676542656e65666963696172795265636569766572285f206e657742656e65666963696172794361706162696c6974793a204361706162696c69747929207b0a202020202020202020202020707265207b0a202020202020202020202020202020206e657742656e65666963696172794361706162696c6974792e626f72726f773c264461707065725574696c697479436f696e2e5661756c747b46756e6769626c65546f6b656e2e52656365697665727d3e282920213d206e696c3a0a20202020202020202020202020202020202020202242656e65666963696172792773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020207d0a20202020202020202020202073656c662e62656e65666963696172794361706162696c697479203d206e657742656e65666963696172794361706162696c6974790a20202020202020207d0a0a20202020202020202f2f2067657450726963652072657475726e7320746865207072696365206f66206120737065636966696320746f6b656e20696e207468652073616c650a20202020202020207075622066756e20676574507269636528746f6b656e49443a2055496e743634293a205546697836343f207b0a20202020202020202020202072657475726e2073656c662e7072696365735b746f6b656e49445d0a20202020202020207d0a0a20202020202020202f2f206765744944732072657475726e7320616e206172726179206f6620746f6b656e2049447320746861742061726520666f722073616c650a20202020202020207075622066756e2067657449447328293a205b55496e7436345d207b0a20202020202020202020202072657475726e2073656c662e666f7253616c652e67657449447328290a20202020202020207d0a0a20202020202020202f2f20626f72726f774d6f6d656e742052657475726e73206120626f72726f776564207265666572656e636520746f2061204d6f6d656e7420696e2074686520636f6c6c656374696f6e0a20202020202020202f2f20736f2074686174207468652063616c6c65722063616e207265616420646174612066726f6d2069740a20202020202020207075622066756e20626f72726f774d6f6d656e742869643a2055496e743634293a2026546f7053686f742e4e46543f207b0a2020202020202020202020206c657420726566203d2073656c662e666f7253616c652e626f72726f774d6f6d656e742869643a206964290a20202020202020202020202072657475726e207265660a20202020202020207d0a0a202020202020202064657374726f792829207b0a20202020202020202020202064657374726f792073656c662e666f7253616c650a20202020202020207d0a202020207d0a0a202020202f2f20637265617465436f6c6c656374696f6e2072657475726e732061206e657720636f6c6c656374696f6e207265736f7572636520746f207468652063616c6c65720a202020207075622066756e2063726561746553616c65436f6c6c656374696f6e286f776e65724361706162696c6974793a204361706162696c6974792c2062656e65666963696172794361706162696c6974793a204361706162696c6974792c2063757450657263656e746167653a20554669783634293a204053616c65436f6c6c656374696f6e207b0a202020202020202072657475726e203c2d206372656174652053616c65436f6c6c656374696f6e286f776e65724361706162696c6974793a206f776e65724361706162696c6974792c2062656e65666963696172794361706162696c6974793a2062656e65666963696172794361706162696c6974792c2063757450657263656e746167653a2063757450657263656e74616765290a202020207d0a7d0a",
"TopShotMarketV2": "2f2a0a0a20202020546f7053686f744d61726b657456322e6364630a0a202020204465736372697074696f6e3a20436f6e747261637420646566696e6974696f6e7320666f7220757365727320746f2073656c6c207468656972206d6f6d656e74730a0a20202020417574686f72733a204a6f736875612048616e6e616e206a6f736875612e68616e6e616e406461707065726c6162732e636f6d0a2020202020202020202020202044696574657220536869726c65792064657465406178696f6d7a656e2e636f6d0a0a202020204d61726b6574706c6163652069732077686572652075736572732063616e2063726561746520612073616c6520636f6c6c656374696f6e207468617420746865790a2020202073746f726520696e207468656972206163636f756e742073746f726167652e20496e207468652073616c6520636f6c6c656374696f6e2c200a20202020746865792063616e20707574207468656972204e46547320757020666f722073616c652077697468206120707269636520616e64207075626c6973682061200a202020207265666572656e636520736f2074686174206f74686572732063616e20736565207468652073616c652e0a0a20202020496620616e6f746865722075736572207365657320616e204e4654207468617420746865792077616e7420746f206275792c0a20202020746865792063616e2073656e642066756e6769626c6520746f6b656e73207468617420657175616c206f722065786365656420746865206275792070726963650a20202020746f2062757920746865204e46542e2020546865204e4654206973207472616e7366657272656420746f207468656d207768656e0a2020202074686579206d616b65207468652070757263686173652e0a0a202020204561636820757365722077686f2077616e747320746f2073656c6c20746f6b656e732077696c6c206861766520612073616c6520636f6c6c656374696f6e200a20202020696e7374616e636520696e207468656972206163636f756e74207468617420636f6e7461696e7320707269636520696e666f726d6174696f6e200a20202020666f722065616368206e6f646520696e20746865697220636f6c6c656374696f6e2e205468652073616c6520686f6c64732061206361706162696c6974792074686174200a202020206c696e6b7320746f207468656972206d61696e206d6f6d656e7420636f6c6c656374696f6e2e0a0a20202020546865792063616e20676976652061207265666572656e636520746f207468697320636f6c6c656374696f6e20746f20612063656e7472616c20636f6e74726163740a20202020736f20746861742069742063616e206c697374207468652073616c657320696e20612063656e7472616c20706c6163650a0a202020205768656e20612075736572206372656174657320612073616c652c20746865792077696c6c20737570706c7920666f757220617267756d656e74733a0a202020202d204120546f7053686f742e436f6c6c656374696f6e206361706162696c697479207468617420616c6c6f77732074686569722073616c6520746f2077697468647261770a20202020202061206d6f6d656e74207768656e206974206973207075726368617365642e0a202020202d20412046756e6769626c65546f6b656e2e5265636569766572206361706162696c6974792061732074686520706c61636520776865726520746865207061796d656e7420666f722074686520746f6b656e20676f65732e0a202020202d20412046756e6769626c65546f6b656e2e5265636569766572206361706162696c6974792073706563696679696e6720612062656e65666963696172792c207768657265206120637574206f662074686520707572636861736520676574732073656e742e200a202020202d2041206375742070657263656e746167652c2073706563696679696e6720686f77206d756368207468652062656e65666963696172792077696c6c20726563696576652e0a202020200a20202020546865206375742070657263656e746167652063616e2062652073657420746f207a65726f206966207468652075736572206465736972657320616e642074686579200a2020202077696c6c20726563656976652074686520656e746972657479206f66207468652070757263686173652e20546f7053686f742077696c6c20696e697469616c697a652073616c6573200a20202020666f7220757365727320776974682074686520546f7053686f742061646d696e207661756c7420617320746865207661756c74207768657265206375747320676574200a202020206465706f736974656420746f2e0a2a2f0a0a696d706f72742046756e6769626c65546f6b656e2066726f6d203078663233336463656538386665306162650a696d706f7274204e6f6e46756e6769626c65546f6b656e2066726f6d203078316437653537616135353831373434380a696d706f727420546f7053686f742066726f6d203078306232613332393963633835376532390a0a70756220636f6e747261637420546f7053686f744d61726b65745632207b0a0a202020202f2f202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a202020202f2f20546f7053686f74204d61726b657420636f6e7472616374204576656e7420646566696e6974696f6e730a202020202f2f202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a0a202020202f2f20656d6974746564207768656e206120546f7053686f74206d6f6d656e74206973206c697374656420666f722073616c650a20202020707562206576656e74204d6f6d656e744c69737465642869643a2055496e7436342c2070726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f20656d6974746564207768656e20746865207072696365206f662061206c6973746564206d6f6d656e7420686173206368616e6765640a20202020707562206576656e74204d6f6d656e7450726963654368616e6765642869643a2055496e7436342c206e657750726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f20656d6974746564207768656e206120746f6b656e206973207075726368617365642066726f6d20746865206d61726b65740a20202020707562206576656e74204d6f6d656e745075726368617365642869643a2055496e7436342c2070726963653a205546697836342c2073656c6c65723a20416464726573733f290a202020202f2f20656d6974746564207768656e2061206d6f6d656e7420686173206265656e2077697468647261776e2066726f6d207468652073616c650a20202020707562206576656e74204d6f6d656e7457697468647261776e2869643a2055496e7436342c206f776e65723a20416464726573733f290a202020202f2f20656d6974746564207768656e20746865206375742070657263656e74616765206f66207468652073616c6520686173206265656e206368616e67656420627920746865206f776e65720a20202020707562206576656e742043757450657263656e746167654368616e676564286e657750657263656e743a205546697836342c2073656c6c65723a20416464726573733f290a0a20202020707562206c6574206d61726b657453746f72616765506174683a2053746f72616765506174680a0a20202020707562206c6574206d61726b65745075626c6963506174683a205075626c6963506174680a0a202020202f2f2053616c655075626c6963200a202020202f2f0a202020202f2f2054686520696e746572666163652074686174206120757365722063616e207075626c6973682061206361706162696c69747920746f2074686569722073616c650a202020202f2f20746f20616c6c6f77206f746865727320746f206163636573732074686569722073616c650a20202020707562207265736f7572636520696e746572666163652053616c655075626c6963207b0a2020202020202020707562207661722063757450657263656e746167653a205546697836340a20202020202020207075622066756e20707572636861736528746f6b656e49443a2055496e7436342c20627579546f6b656e733a204046756e6769626c65546f6b656e2e5661756c74293a2040546f7053686f742e4e4654207b0a202020202020202020202020706f7374207b0a20202020202020202020202020202020726573756c742e6964203d3d20746f6b656e49443a2022546865204944206f66207468652077697468647261776e20746f6b656e206d757374206265207468652073616d652061732074686520726571756573746564204944220a2020202020202020202020207d0a20202020202020207d0a20202020202020207075622066756e20676574507269636528746f6b656e49443a2055496e743634293a205546697836343f0a20202020202020207075622066756e2067657449447328293a205b55496e7436345d0a20202020202020207075622066756e20626f72726f774d6f6d656e742869643a2055496e743634293a2026546f7053686f742e4e46543f207b0a2020202020202020202020202f2f2049662074686520726573756c742069736e2774206e696c2c20746865206964206f66207468652072657475726e6564207265666572656e63650a2020202020202020202020202f2f2073686f756c64206265207468652073616d652061732074686520617267756d656e7420746f207468652066756e6374696f6e0a202020202020202020202020706f7374207b0a2020202020202020202020202020202028726573756c74203d3d206e696c29207c7c2028726573756c743f2e6964203d3d206964293a200a20202020202020202020202020202020202020202243616e6e6f7420626f72726f77204d6f6d656e74207265666572656e63653a20546865204944206f66207468652072657475726e6564207265666572656e636520697320696e636f7272656374220a2020202020202020202020207d0a20202020202020207d0a202020207d0a0a202020202f2f2053616c65436f6c6c656374696f6e0a202020202f2f0a202020202f2f205468697320697320746865206d61696e207265736f75726365207468617420746f6b656e2073656c6c6572732077696c6c2073746f726520696e207468656972206163636f756e740a202020202f2f20746f206d616e61676520746865204e46547320746861742074686579206172652073656c6c696e672e205468652053616c65436f6c6c656374696f6e0a202020202f2f20686f6c6473206120546f7053686f7420436f6c6c656374696f6e207265736f7572636520746f2073746f726520746865206d6f6d656e747320746861742061726520666f722073616c652e0a202020202f2f205468652053616c65436f6c6c656374696f6e20616c736f206b6565707320747261636b206f6620746865207072696365206f66206561636820746f6b656e2e0a202020202f2f200a202020202f2f205768656e206120746f6b656e206973207075726368617365642c2061206375742069732074616b656e2066726f6d2074686520746f6b656e730a202020202f2f20616e642073656e7420746f207468652062656e65666963696172792c207468656e207468652072657374206172652073656e7420746f207468652073656c6c65722e0a202020202f2f0a202020202f2f205468652073656c6c65722063686f6f7365732077686f207468652062656e656669636961727920697320616e6420776861742070657263656e746167650a202020202f2f206f662074686520746f6b656e7320676574732074616b656e2066726f6d207468652070757263686173650a20202020707562207265736f757263652053616c65436f6c6c656374696f6e3a2053616c655075626c6963207b0a0a20202020202020202f2f204120636f6c6c656374696f6e206f6620746865206d6f6d656e747320746861742074686520757365722068617320666f722073616c650a20202020202020206163636573732873656c662920766172206f776e6572436f6c6c656374696f6e3a204361706162696c6974793c26546f7053686f742e436f6c6c656374696f6e3e0a0a20202020202020202f2f2044696374696f6e617279206f6620746865206c6f77206c6f772070726963657320666f722065616368204e46542062792049440a20202020202020206163636573732873656c662920766172207072696365733a207b55496e7436343a205546697836347d0a0a20202020202020202f2f205468652066756e6769626c6520746f6b656e207661756c74206f66207468652073656c6c65720a20202020202020202f2f20736f2074686174207768656e20736f6d656f6e652062757973206120746f6b656e2c2074686520746f6b656e7320617265206465706f73697465640a20202020202020202f2f20746f2074686973205661756c740a20202020202020206163636573732873656c662920766172206f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e0a0a20202020202020202f2f20546865206361706162696c6974792074686174206973207573656420666f72206465706f736974696e67200a20202020202020202f2f207468652062656e6566696369617279277320637574206f662065766572792073616c650a20202020202020206163636573732873656c6629207661722062656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e0a0a20202020202020202f2f205468652070657263656e7461676520746861742069732074616b656e2066726f6d20657665727920707572636861736520666f72207468652062656e65666963696172790a20202020202020202f2f20466f72206578616d706c652c206966207468652070657263656e74616765206973203135252c2063757450657263656e74616765203d20302e31350a2020202020202020707562207661722063757450657263656e746167653a205546697836340a0a2020202020202020696e697420286f776e6572436f6c6c656374696f6e3a204361706162696c6974793c26546f7053686f742e436f6c6c656374696f6e3e2c206f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c2062656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c2063757450657263656e746167653a2055466978363429207b0a202020202020202020202020707265207b0a202020202020202020202020202020202f2f20436865636b207468617420746865206f776e65722773206d6f6d656e7420636f6c6c656374696f6e206361706162696c69747920697320636f72726563740a202020202020202020202020202020206f776e6572436f6c6c656374696f6e2e626f72726f77282920213d206e696c3a200a2020202020202020202020202020202020202020224f776e65722773204d6f6d656e7420436f6c6c656374696f6e204361706162696c69747920697320696e76616c696421220a0a202020202020202020202020202020202f2f20436865636b207468617420626f7468206361706162696c69746965732061726520666f722066756e6769626c6520746f6b656e205661756c74207265636569766572730a202020202020202020202020202020206f776e65724361706162696c6974792e626f72726f77282920213d206e696c3a200a2020202020202020202020202020202020202020224f776e65722773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020202020202062656e65666963696172794361706162696c6974792e626f72726f77282920213d206e696c3a200a20202020202020202020202020202020202020202242656e65666963696172792773205265636569766572204361706162696c69747920697320696e76616c69642122200a2020202020202020202020207d0a2020202020202020202020200a2020202020202020202020202f2f2063726561746520616e20656d70747920636f6c6c656374696f6e20746f2073746f726520746865206d6f6d656e747320746861742061726520666f722073616c650a20202020202020202020202073656c662e6f776e6572436f6c6c656374696f6e203d206f776e6572436f6c6c656374696f6e0a20202020202020202020202073656c662e6f776e65724361706162696c697479203d206f776e65724361706162696c6974790a20202020202020202020202073656c662e62656e65666963696172794361706162696c697479203d2062656e65666963696172794361706162696c6974790a2020202020202020202020202f2f207072696365732061726520696e697469616c6c7920656d707479206265636175736520746865726520617265206e6f206d6f6d656e747320666f722073616c650a20202020202020202020202073656c662e707269636573203d207b7d0a20202020202020202020202073656c662e63757450657263656e74616765203d2063757450657263656e746167650a20202020202020207d0a0a20202020202020202f2f206c697374466f7253616c65206c6973747320616e204e465420666f722073616c6520696e20746869732073616c6520636f6c6c656374696f6e0a20202020202020202f2f20617420746865207370656369666965642070726963650a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a20746f6b656e49443a20546865206964206f6620746865204e465420746f2062652070757420757020666f722073616c650a20202020202020202f2f2020202020202020202020202070726963653a20546865207072696365206f6620746865204e46540a20202020202020207075622066756e206c697374466f7253616c6528746f6b656e49443a2055496e7436342c2070726963653a2055466978363429207b0a202020202020202020202020707265207b0a2020202020202020202020202020202073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e626f72726f774d6f6d656e742869643a20746f6b656e49442920213d206e696c3a0a2020202020202020202020202020202020202020224d6f6d656e7420646f6573206e6f7420657869737420696e20746865206f776e6572277320636f6c6c656374696f6e220a2020202020202020202020207d0a0a2020202020202020202020202f2f205365742074686520746f6b656e27732070726963650a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d2070726963650a0a202020202020202020202020656d6974204d6f6d656e744c69737465642869643a20746f6b656e49442c2070726963653a2070726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f2063616e63656c53616c652063616e63656c732061206d6f6d656e742073616c6520616e6420636c65617273206974732070726963650a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a20746f6b656e49443a20746865204944206f662074686520746f6b656e20746f2077697468647261772066726f6d207468652073616c650a20202020202020202f2f0a20202020202020207075622066756e2063616e63656c53616c6528746f6b656e49443a2055496e74363429207b0a202020202020202020202020707265207b0a2020202020202020202020202020202073656c662e7072696365735b746f6b656e49445d20213d206e696c3a2022546f6b656e20776974682074686520737065636966696564204944206973206e6f7420616c726561647920666f722073616c65220a2020202020202020202020207d0a0a2020202020202020202020202f2f2052656d6f7665207468652070726963652066726f6d20746865207072696365732064696374696f6e6172790a20202020202020202020202073656c662e7072696365732e72656d6f7665286b65793a20746f6b656e4944290a0a2020202020202020202020202f2f205365742070726963657320746f206e696c20666f72207468652077697468647261776e2049440a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e696c0a2020202020202020202020200a2020202020202020202020202f2f20456d697420746865206576656e7420666f72207769746864726177696e672061206d6f6d656e742066726f6d207468652053616c650a202020202020202020202020656d6974204d6f6d656e7457697468647261776e2869643a20746f6b656e49442c206f776e65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f207075726368617365206c657473206120757365722073656e6420746f6b656e7320746f20707572636861736520616e204e4654207468617420697320666f722073616c650a20202020202020202f2f2074686520707572636861736564204e46542069732072657475726e656420746f20746865207472616e73616374696f6e20636f6e7465787420746861742063616c6c65642069740a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a20746f6b656e49443a20746865204944206f6620746865204e465420746f2070757263686173650a20202020202020202f2f20202020202020202020202020627579546f6b656e733a207468652066756e6769626c6520746f6b656e73207468617420617265207573656420746f2062757920746865204e46540a20202020202020202f2f0a20202020202020202f2f2052657475726e733a2040546f7053686f742e4e46543a2074686520707572636861736564204e46540a20202020202020207075622066756e20707572636861736528746f6b656e49443a2055496e7436342c20627579546f6b656e733a204046756e6769626c65546f6b656e2e5661756c74293a2040546f7053686f742e4e4654207b0a202020202020202020202020707265207b0a2020202020202020202020202020202073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e626f72726f774d6f6d656e742869643a20746f6b656e49442920213d206e696c2026262073656c662e7072696365735b746f6b656e49445d20213d206e696c3a0a2020202020202020202020202020202020202020224e6f20746f6b656e206d61746368696e67207468697320494420666f722073616c65212220202020202020202020200a20202020202020202020202020202020627579546f6b656e732e62616c616e6365203d3d202873656c662e7072696365735b746f6b656e49445d203f3f20554669783634283029293a0a2020202020202020202020202020202020202020224e6f7420656e6f75676820746f6b656e7320746f2062757920746865204e465421220a2020202020202020202020207d0a0a2020202020202020202020202f2f20526561642074686520707269636520666f722074686520746f6b656e0a2020202020202020202020206c6574207072696365203d2073656c662e7072696365735b746f6b656e49445d210a0a2020202020202020202020202f2f205365742074686520707269636520666f722074686520746f6b656e20746f206e696c0a20202020202020202020202073656c662e7072696365735b746f6b656e49445d203d206e696c0a0a2020202020202020202020202f2f2054616b652074686520637574206f662074686520746f6b656e732074686174207468652062656e656669636961727920676574732066726f6d207468652073656e7420746f6b656e730a2020202020202020202020206c65742062656e6566696369617279437574203c2d20627579546f6b656e732e776974686472617728616d6f756e743a2070726963652a73656c662e63757450657263656e74616765290a0a2020202020202020202020202f2f204465706f73697420697420696e746f207468652062656e65666963696172792773205661756c740a20202020202020202020202073656c662e62656e65666963696172794361706162696c6974792e626f72726f772829210a202020202020202020202020202020202e6465706f7369742866726f6d3a203c2d62656e6566696369617279437574290a2020202020202020202020200a2020202020202020202020202f2f204465706f736974207468652072656d61696e696e6720746f6b656e7320696e746f20746865206f776e657273207661756c740a20202020202020202020202073656c662e6f776e65724361706162696c6974792e626f72726f772829210a202020202020202020202020202020202e6465706f7369742866726f6d3a203c2d627579546f6b656e73290a0a202020202020202020202020656d6974204d6f6d656e745075726368617365642869643a20746f6b656e49442c2070726963653a2070726963652c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a0a2020202020202020202020202f2f2052657475726e207468652070757263686173656420746f6b656e0a2020202020202020202020206c657420626f756768744d6f6d656e74203c2d2073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e776974686472617728776974686472617749443a20746f6b656e494429206173212040546f7053686f742e4e46540a0a20202020202020202020202072657475726e203c2d626f756768744d6f6d656e740a20202020202020207d0a0a20202020202020202f2f206368616e676550657263656e74616765206368616e67657320746865206375742070657263656e74616765206f662074686520746f6b656e7320746861742061726520666f722073616c650a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a206e657750657263656e743a20546865206e6577206375742070657263656e7461676520666f72207468652073616c650a20202020202020207075622066756e206368616e676550657263656e74616765285f206e657750657263656e743a2055466978363429207b0a20202020202020202020202073656c662e63757450657263656e74616765203d206e657750657263656e740a0a202020202020202020202020656d69742043757450657263656e746167654368616e676564286e657750657263656e743a206e657750657263656e742c2073656c6c65723a2073656c662e6f776e65723f2e61646472657373290a20202020202020207d0a0a20202020202020202f2f206368616e67654f776e65725265636569766572207570646174657320746865206361706162696c69747920666f72207468652073656c6c6572732066756e6769626c6520746f6b656e205661756c740a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a206e65774f776e65724361706162696c6974793a20546865206e65772066756e6769626c6520746f6b656e206361706162696c69747920666f7220746865206163636f756e74200a20202020202020202f2f20202020202020202020202020202020202020202020202020202020202020202077686f20726563656976656420746f6b656e7320666f72207075726368617365730a20202020202020207075622066756e206368616e67654f776e65725265636569766572285f206e65774f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e29207b0a202020202020202020202020707265207b0a202020202020202020202020202020206e65774f776e65724361706162696c6974792e626f72726f77282920213d206e696c3a200a2020202020202020202020202020202020202020224f776e65722773205265636569766572204361706162696c69747920697320696e76616c696421220a2020202020202020202020207d0a20202020202020202020202073656c662e6f776e65724361706162696c697479203d206e65774f776e65724361706162696c6974790a20202020202020207d0a0a20202020202020202f2f206368616e676542656e65666963696172795265636569766572207570646174657320746865206361706162696c69747920666f72207468652062656e6566696369617279206f662074686520637574206f66207468652073616c650a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a206e657742656e65666963696172794361706162696c69747920746865206e6577206361706162696c69747920666f72207468652062656e6566696369617279206f662074686520637574206f66207468652073616c650a20202020202020202f2f0a20202020202020207075622066756e206368616e676542656e65666963696172795265636569766572285f206e657742656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e29207b0a202020202020202020202020707265207b0a202020202020202020202020202020206e657742656e65666963696172794361706162696c6974792e626f72726f77282920213d206e696c3a200a20202020202020202020202020202020202020202242656e65666963696172792773205265636569766572204361706162696c69747920697320696e76616c69642122200a2020202020202020202020207d0a20202020202020202020202073656c662e62656e65666963696172794361706162696c697479203d206e657742656e65666963696172794361706162696c6974790a20202020202020207d0a0a20202020202020202f2f2067657450726963652072657475726e7320746865207072696365206f66206120737065636966696320746f6b656e20696e207468652073616c650a20202020202020202f2f200a20202020202020202f2f20506172616d65746572733a20746f6b656e49443a20546865204944206f6620746865204e46542077686f736520707269636520746f206765740a20202020202020202f2f0a20202020202020202f2f2052657475726e733a205546697836343a20546865207072696365206f662074686520746f6b656e0a20202020202020207075622066756e20676574507269636528746f6b656e49443a2055496e743634293a205546697836343f207b0a20202020202020202020202072657475726e2073656c662e7072696365735b746f6b656e49445d0a20202020202020207d0a0a20202020202020202f2f206765744944732072657475726e7320616e206172726179206f6620746f6b656e2049447320746861742061726520666f722073616c650a20202020202020207075622066756e2067657449447328293a205b55496e7436345d207b0a20202020202020202020202072657475726e2073656c662e7072696365732e6b6579730a20202020202020207d0a0a20202020202020202f2f20626f72726f774d6f6d656e742052657475726e73206120626f72726f776564207265666572656e636520746f2061204d6f6d656e7420666f722073616c650a20202020202020202f2f20736f2074686174207468652063616c6c65722063616e207265616420646174612066726f6d2069740a20202020202020202f2f0a20202020202020202f2f20506172616d65746572733a2069643a20546865204944206f6620746865206d6f6d656e7420746f20626f72726f772061207265666572656e636520746f0a20202020202020202f2f0a20202020202020202f2f2052657475726e733a2026546f7053686f742e4e46543f204f7074696f6e616c207265666572656e636520746f2061206d6f6d656e7420666f722073616c65200a20202020202020202f2f202020202020202020202020202020202020202020202020736f2074686174207468652063616c6c65722063616e20726561642069747320646174610a20202020202020202f2f0a20202020202020207075622066756e20626f72726f774d6f6d656e742869643a2055496e743634293a2026546f7053686f742e4e46543f207b0a20202020202020202020202069662073656c662e7072696365735b69645d20213d206e696c207b0a202020202020202020202020202020206c657420726566203d2073656c662e6f776e6572436f6c6c656374696f6e2e626f72726f772829212e626f72726f774d6f6d656e742869643a206964290a2020202020202020202020202020202072657475726e207265660a2020202020202020202020207d20656c7365207b0a2020202020202020202020202020202072657475726e206e696c0a2020202020202020202020207d0a20202020202020207d0a202020207d0a0a202020202f2f20637265617465436f6c6c656374696f6e2072657475726e732061206e657720636f6c6c656374696f6e207265736f7572636520746f207468652063616c6c65720a202020207075622066756e2063726561746553616c65436f6c6c656374696f6e286f776e6572436f6c6c656374696f6e3a204361706162696c6974793c26546f7053686f742e436f6c6c656374696f6e3e2c206f776e65724361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c2062656e65666963696172794361706162696c6974793a204361706162696c6974793c267b46756e6769626c65546f6b656e2e52656365697665727d3e2c2063757450657263656e746167653a20554669783634293a204053616c65436f6c6c656374696f6e207b0a202020202020202072657475726e203c2d206372656174652053616c65436f6c6c656374696f6e286f776e6572436f6c6c656374696f6e3a206f776e6572436f6c6c656374696f6e2c206f776e65724361706162696c6974793a206f776e65724361706162696c6974792c2062656e65666963696172794361706162696c6974793a2062656e65666963696172794361706162696c6974792c2063757450657263656e746167653a2063757450657263656e74616765290a202020207d0a0a20202020696e69742829207b0a202020202020202073656c662e6d61726b657453746f7261676550617468203d202f73746f726167652f746f7073686f7453616c657632436f6c6c656374696f6e0a202020202020202073656c662e6d61726b65745075626c696350617468203d202f7075626c69632f746f7073686f7453616c657632436f6c6c656374696f6e0a202020207d0a7d0a20"
}
}
Get collection by id
GET
api/v1/collection/{collectionId}
Path Parameters
{
"id": "4ea35fdb62388c67baafed5b995d96ebc8f8f043517310d9e908f65abaa2a6db",
"transactionIds": [
"75acd997bc9e6e7d182a73462611424d51787c8ca113a8f596481920e6d6df60",
"f18188ff2d56915f7d1b5223d6d71a02a1340c267c574d654fdf890f3fbfe297",
"63490d8ca5f21bb12dc5c5b2fc50db012f382dbb073b5865fd16540e6e05864a"
]
}
Execute Cadence script at latest block
POST
api/v1/cadence/execute
Request body (see example below) is made up of two properties - script and arguments. They are both required, if your script does not need any arguments, pass an empty array.
Script must be a valid Cadence script, with quotes escaped by a backslash \
, and newlines represented by \r\n
. See the Cadence language documentation for more details:
https://docs.onflow.org/cadence/language/
Arguments must be an array of objects representing valid Cadence types and Cadence JSON. See the Cadence types documentation for more details:
https://docs.onflow.org/cadence/json-cadence-spec/
{
"script": "pub fun main(name: String): String { return \"Hello, \".concat(name) }",
"arguments": [
{
"type": "String",
"cadenceJSON": "{\"type\":\"String\",\"value\":\"Bob\"}"
}
]
}
{
"result": {
"type": "String",
"data": "Hello, Bob"
},
"success": true,
"errorMessage": null
}
Last updated