{ "name": "NegotiableBL", "structs": {}, "methods": [ { "name": "hello", "args": [ { "type": "string", "name": "name" } ], "returns": { "type": "string" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "desc": "Simple hello method for testing", "events": [], "recommendations": {} }, { "name": "createBL", "args": [ { "type": "string", "name": "description" }, { "type": "string", "name": "price" } ], "returns": { "type": "string" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "desc": "Create a new Bill of Lading (simplified version)", "events": [], "recommendations": {} }, { "name": "listBL", "args": [ { "type": "string", "name": "blId" }, { "type": "string", "name": "price" } ], "returns": { "type": "string" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "desc": "List BL for sale", "events": [], "recommendations": {} }, { "name": "transferBL", "args": [ { "type": "string", "name": "blId" }, { "type": "string", "name": "newOwner" } ], "returns": { "type": "string" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "desc": "Transfer BL ownership", "events": [], "recommendations": {} }, { "name": "getInfo", "args": [], "returns": { "type": "string" }, "actions": { "create": [], "call": [ "NoOp" ] }, "readonly": false, "desc": "Get contract info", "events": [], "recommendations": {} } ], "arcs": [ 22, 28 ], "desc": "AlgoTITANS Negotiable Bill of Lading Smart Contract\nCreates NFT-based Bills of Lading for Real World Assets", "networks": {}, "state": { "schema": { "global": { "ints": 0, "bytes": 0 }, "local": { "ints": 0, "bytes": 0 } }, "keys": { "global": {}, "local": {}, "box": {} }, "maps": { "global": {}, "local": {}, "box": {} } }, "bareActions": { "create": [ "NoOp" ], "call": [] }, "sourceInfo": { "approval": { "sourceInfo": [ { "pc": [ 70, 139, 175, 211, 247 ], "errorMessage": "OnCompletion is not NoOp" }, { "pc": [ 282 ], "errorMessage": "can only call when creating" }, { "pc": [ 73, 142, 178, 214, 250 ], "errorMessage": "can only call when not creating" } ], "pcOffsetMethod": "none" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBAYWxnb3JhbmRmb3VuZGF0aW9uL2FsZ29yYW5kLXR5cGVzY3JpcHQvYXJjNC9pbmRleC5kLnRzOjpDb250cmFjdC5hcHByb3ZhbFByb2dyYW0oKSAtPiB1aW50NjQ6Cm1haW46CiAgICBpbnRjYmxvY2sgMQogICAgYnl0ZWNibG9jayAweDE1MWY3Yzc1ICIgQUxHTyIKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6NwogICAgLy8gZXhwb3J0IGNsYXNzIE5lZ290aWFibGVCTCBleHRlbmRzIENvbnRyYWN0IHsKICAgIHR4biBOdW1BcHBBcmdzCiAgICBieiBtYWluX2JhcmVfcm91dGluZ0AxMAogICAgcHVzaGJ5dGVzcyAweDAyYmVjZTExIDB4Y2Q2OGJiNmYgMHgxMjVlMTQ5MCAweDc2MGE2MmQxIDB4M2QwODAyYTMgLy8gbWV0aG9kICJoZWxsbyhzdHJpbmcpc3RyaW5nIiwgbWV0aG9kICJjcmVhdGVCTChzdHJpbmcsc3RyaW5nKXN0cmluZyIsIG1ldGhvZCAibGlzdEJMKHN0cmluZyxzdHJpbmcpc3RyaW5nIiwgbWV0aG9kICJ0cmFuc2ZlckJMKHN0cmluZyxzdHJpbmcpc3RyaW5nIiwgbWV0aG9kICJnZXRJbmZvKClzdHJpbmciCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAwCiAgICBtYXRjaCBtYWluX2hlbGxvX3JvdXRlQDMgbWFpbl9jcmVhdGVCTF9yb3V0ZUA0IG1haW5fbGlzdEJMX3JvdXRlQDUgbWFpbl90cmFuc2ZlckJMX3JvdXRlQDYgbWFpbl9nZXRJbmZvX3JvdXRlQDcKCm1haW5fYWZ0ZXJfaWZfZWxzZUAxNDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6NwogICAgLy8gZXhwb3J0IGNsYXNzIE5lZ290aWFibGVCTCBleHRlbmRzIENvbnRyYWN0IHsKICAgIHB1c2hpbnQgMCAvLyAwCiAgICByZXR1cm4KCm1haW5fZ2V0SW5mb19yb3V0ZUA3OgogICAgLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czozOQogICAgLy8gZ2V0SW5mbygpOiBzdHJpbmcgewogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICBwdXNoYnl0ZXMgMHgxNTFmN2M3NTAwMzM0MTZjNjc2ZjU0NDk1NDQxNGU1MzIwNGU2NTY3NmY3NDY5NjE2MjZjNjUyMDQyNjk2YzZjNzMyMDZmNjYyMDRjNjE2NDY5NmU2NzIwNDM2ZjZlNzQ3MjYxNjM3NDIwNzYzMTJlMzAKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl90cmFuc2ZlckJMX3JvdXRlQDY6CiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjMyCiAgICAvLyB0cmFuc2ZlckJMKGJsSWQ6IHN0cmluZywgbmV3T3duZXI6IHN0cmluZyk6IHN0cmluZyB7CiAgICB0eG4gT25Db21wbGV0aW9uCiAgICAhCiAgICBhc3NlcnQgLy8gT25Db21wbGV0aW9uIGlzIG5vdCBOb09wCiAgICB0eG4gQXBwbGljYXRpb25JRAogICAgYXNzZXJ0IC8vIGNhbiBvbmx5IGNhbGwgd2hlbiBub3QgY3JlYXRpbmcKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6NwogICAgLy8gZXhwb3J0IGNsYXNzIE5lZ290aWFibGVCTCBleHRlbmRzIENvbnRyYWN0IHsKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDEKICAgIGV4dHJhY3QgMiAwCiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAyCiAgICBleHRyYWN0IDIgMAogICAgLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czozMgogICAgLy8gdHJhbnNmZXJCTChibElkOiBzdHJpbmcsIG5ld093bmVyOiBzdHJpbmcpOiBzdHJpbmcgewogICAgY2FsbHN1YiB0cmFuc2ZlckJMCiAgICBkdXAKICAgIGxlbgogICAgaXRvYgogICAgZXh0cmFjdCA2IDIKICAgIHN3YXAKICAgIGNvbmNhdAogICAgYnl0ZWNfMCAvLyAweDE1MWY3Yzc1CiAgICBzd2FwCiAgICBjb25jYXQKICAgIGxvZwogICAgaW50Y18wIC8vIDEKICAgIHJldHVybgoKbWFpbl9saXN0Qkxfcm91dGVANToKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6MjUKICAgIC8vIGxpc3RCTChibElkOiBzdHJpbmcsIHByaWNlOiBzdHJpbmcpOiBzdHJpbmcgewogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjcKICAgIC8vIGV4cG9ydCBjbGFzcyBOZWdvdGlhYmxlQkwgZXh0ZW5kcyBDb250cmFjdCB7CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBleHRyYWN0IDIgMAogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgogICAgZXh0cmFjdCAyIDAKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6MjUKICAgIC8vIGxpc3RCTChibElkOiBzdHJpbmcsIHByaWNlOiBzdHJpbmcpOiBzdHJpbmcgewogICAgY2FsbHN1YiBsaXN0QkwKICAgIGR1cAogICAgbGVuCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgc3dhcAogICAgY29uY2F0CiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX2NyZWF0ZUJMX3JvdXRlQDQ6CiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjE4CiAgICAvLyBjcmVhdGVCTChkZXNjcmlwdGlvbjogc3RyaW5nLCBwcmljZTogc3RyaW5nKTogc3RyaW5nIHsKICAgIHR4biBPbkNvbXBsZXRpb24KICAgICEKICAgIGFzc2VydCAvLyBPbkNvbXBsZXRpb24gaXMgbm90IE5vT3AKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIG5vdCBjcmVhdGluZwogICAgLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czo3CiAgICAvLyBleHBvcnQgY2xhc3MgTmVnb3RpYWJsZUJMIGV4dGVuZHMgQ29udHJhY3QgewogICAgdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQogICAgZXh0cmFjdCAyIDAKICAgIHR4bmEgQXBwbGljYXRpb25BcmdzIDIKICAgIGV4dHJhY3QgMiAwCiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjE4CiAgICAvLyBjcmVhdGVCTChkZXNjcmlwdGlvbjogc3RyaW5nLCBwcmljZTogc3RyaW5nKTogc3RyaW5nIHsKICAgIGNhbGxzdWIgY3JlYXRlQkwKICAgIGR1cAogICAgbGVuCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgc3dhcAogICAgY29uY2F0CiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX2hlbGxvX3JvdXRlQDM6CiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjExCiAgICAvLyBoZWxsbyhuYW1lOiBzdHJpbmcpOiBzdHJpbmcgewogICAgdHhuIE9uQ29tcGxldGlvbgogICAgIQogICAgYXNzZXJ0IC8vIE9uQ29tcGxldGlvbiBpcyBub3QgTm9PcAogICAgdHhuIEFwcGxpY2F0aW9uSUQKICAgIGFzc2VydCAvLyBjYW4gb25seSBjYWxsIHdoZW4gbm90IGNyZWF0aW5nCiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjcKICAgIC8vIGV4cG9ydCBjbGFzcyBOZWdvdGlhYmxlQkwgZXh0ZW5kcyBDb250cmFjdCB7CiAgICB0eG5hIEFwcGxpY2F0aW9uQXJncyAxCiAgICBleHRyYWN0IDIgMAogICAgLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czoxMQogICAgLy8gaGVsbG8obmFtZTogc3RyaW5nKTogc3RyaW5nIHsKICAgIGNhbGxzdWIgaGVsbG8KICAgIGR1cAogICAgbGVuCiAgICBpdG9iCiAgICBleHRyYWN0IDYgMgogICAgc3dhcAogICAgY29uY2F0CiAgICBieXRlY18wIC8vIDB4MTUxZjdjNzUKICAgIHN3YXAKICAgIGNvbmNhdAogICAgbG9nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgptYWluX2JhcmVfcm91dGluZ0AxMDoKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6NwogICAgLy8gZXhwb3J0IGNsYXNzIE5lZ290aWFibGVCTCBleHRlbmRzIENvbnRyYWN0IHsKICAgIHR4biBPbkNvbXBsZXRpb24KICAgIGJueiBtYWluX2FmdGVyX2lmX2Vsc2VAMTQKICAgIHR4biBBcHBsaWNhdGlvbklECiAgICAhCiAgICBhc3NlcnQgLy8gY2FuIG9ubHkgY2FsbCB3aGVuIGNyZWF0aW5nCiAgICBpbnRjXzAgLy8gMQogICAgcmV0dXJuCgoKLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czo6TmVnb3RpYWJsZUJMLmhlbGxvKG5hbWU6IGJ5dGVzKSAtPiBieXRlczoKaGVsbG86CiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjExCiAgICAvLyBoZWxsbyhuYW1lOiBzdHJpbmcpOiBzdHJpbmcgewogICAgcHJvdG8gMSAxCiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjEyCiAgICAvLyByZXR1cm4gYEhlbGxvIGZyb20gQWxnb1RJVEFOUywgJHtuYW1lfSFgCiAgICBwdXNoYnl0ZXMgIkhlbGxvIGZyb20gQWxnb1RJVEFOUywgIgogICAgZnJhbWVfZGlnIC0xCiAgICBjb25jYXQKICAgIHB1c2hieXRlcyAiISIKICAgIGNvbmNhdAogICAgcmV0c3ViCgoKLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czo6TmVnb3RpYWJsZUJMLmNyZWF0ZUJMKGRlc2NyaXB0aW9uOiBieXRlcywgcHJpY2U6IGJ5dGVzKSAtPiBieXRlczoKY3JlYXRlQkw6CiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjE4CiAgICAvLyBjcmVhdGVCTChkZXNjcmlwdGlvbjogc3RyaW5nLCBwcmljZTogc3RyaW5nKTogc3RyaW5nIHsKICAgIHByb3RvIDIgMQogICAgLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czoxOQogICAgLy8gcmV0dXJuIGBDcmVhdGVkIEJMOiAke2Rlc2NyaXB0aW9ufSBmb3IgJHtwcmljZX0gQUxHT2AKICAgIHB1c2hieXRlcyAiQ3JlYXRlZCBCTDogIgogICAgZnJhbWVfZGlnIC0yCiAgICBjb25jYXQKICAgIHB1c2hieXRlcyAiIGZvciAiCiAgICBjb25jYXQKICAgIGZyYW1lX2RpZyAtMQogICAgY29uY2F0CiAgICBieXRlY18xIC8vICIgQUxHTyIKICAgIGNvbmNhdAogICAgcmV0c3ViCgoKLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czo6TmVnb3RpYWJsZUJMLmxpc3RCTChibElkOiBieXRlcywgcHJpY2U6IGJ5dGVzKSAtPiBieXRlczoKbGlzdEJMOgogICAgLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czoyNQogICAgLy8gbGlzdEJMKGJsSWQ6IHN0cmluZywgcHJpY2U6IHN0cmluZyk6IHN0cmluZyB7CiAgICBwcm90byAyIDEKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6MjYKICAgIC8vIHJldHVybiBgTGlzdGVkIEJMICR7YmxJZH0gZm9yIHNhbGUgYXQgJHtwcmljZX0gQUxHT2AKICAgIHB1c2hieXRlcyAiTGlzdGVkIEJMICIKICAgIGZyYW1lX2RpZyAtMgogICAgY29uY2F0CiAgICBwdXNoYnl0ZXMgIiBmb3Igc2FsZSBhdCAiCiAgICBjb25jYXQKICAgIGZyYW1lX2RpZyAtMQogICAgY29uY2F0CiAgICBieXRlY18xIC8vICIgQUxHTyIKICAgIGNvbmNhdAogICAgcmV0c3ViCgoKLy8gc21hcnRfY29udHJhY3RzL25lZ290aWFibGVfYmwvY29udHJhY3QuYWxnby50czo6TmVnb3RpYWJsZUJMLnRyYW5zZmVyQkwoYmxJZDogYnl0ZXMsIG5ld093bmVyOiBieXRlcykgLT4gYnl0ZXM6CnRyYW5zZmVyQkw6CiAgICAvLyBzbWFydF9jb250cmFjdHMvbmVnb3RpYWJsZV9ibC9jb250cmFjdC5hbGdvLnRzOjMyCiAgICAvLyB0cmFuc2ZlckJMKGJsSWQ6IHN0cmluZywgbmV3T3duZXI6IHN0cmluZyk6IHN0cmluZyB7CiAgICBwcm90byAyIDEKICAgIC8vIHNtYXJ0X2NvbnRyYWN0cy9uZWdvdGlhYmxlX2JsL2NvbnRyYWN0LmFsZ28udHM6MzMKICAgIC8vIHJldHVybiBgVHJhbnNmZXJyZWQgQkwgJHtibElkfSB0byAke25ld093bmVyfWAKICAgIHB1c2hieXRlcyAiVHJhbnNmZXJyZWQgQkwgIgogICAgZnJhbWVfZGlnIC0yCiAgICBjb25jYXQKICAgIHB1c2hieXRlcyAiIHRvICIKICAgIGNvbmNhdAogICAgZnJhbWVfZGlnIC0xCiAgICBjb25jYXQKICAgIHJldHN1Ygo=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCiNwcmFnbWEgdHlwZXRyYWNrIGZhbHNlCgovLyBAYWxnb3JhbmRmb3VuZGF0aW9uL2FsZ29yYW5kLXR5cGVzY3JpcHQvYmFzZS1jb250cmFjdC5kLnRzOjpCYXNlQ29udHJhY3QuY2xlYXJTdGF0ZVByb2dyYW0oKSAtPiB1aW50NjQ6Cm1haW46CiAgICBwdXNoaW50IDEgLy8gMQogICAgcmV0dXJuCg==" }, "byteCode": { "approval": "CiABASYCBBUffHUFIEFMR08xG0EA/IIFBAK+zhEEzWi7bwQSXhSQBHYKYtEEPQgCozYaAI4FALQAkABsAEgAA4EAQzEZFEQxGESAORUffHUAM0FsZ29USVRBTlMgTmVnb3RpYWJsZSBCaWxscyBvZiBMYWRpbmcgQ29udHJhY3QgdjEuMLAiQzEZFEQxGEQ2GgFXAgA2GgJXAgCIAO1JFRZXBgJMUChMULAiQzEZFEQxGEQ2GgFXAgA2GgJXAgCIAKFJFRZXBgJMUChMULAiQzEZFEQxGEQ2GgFXAgA2GgJXAgCIAFtJFRZXBgJMUChMULAiQzEZFEQxGEQ2GgFXAgCIABlJFRZXBgJMUChMULAiQzEZQP8pMRgURCJDigEBgBdIZWxsbyBmcm9tIEFsZ29USVRBTlMsIIv/UIABIVCJigIBgAxDcmVhdGVkIEJMOiCL/lCABSBmb3IgUIv/UClQiYoCAYAKTGlzdGVkIEJMIIv+UIANIGZvciBzYWxlIGF0IFCL/1ApUImKAgGAD1RyYW5zZmVycmVkIEJMIIv+UIAEIHRvIFCL/1CJ", "clear": "CoEBQw==" }, "compilerInfo": { "compiler": "puya", "compilerVersion": { "major": 4, "minor": 7, "patch": 0 } }, "events": [], "templateVariables": {} }