diff --git a/extractor/main.go b/extractor/main.go index 3ae13805..e5203620 100644 --- a/extractor/main.go +++ b/extractor/main.go @@ -21,6 +21,7 @@ import ( // Define constants const ( packageMetadataFile = "pkg_metadata.json" + gnoscanPathURL = "https://gnoscan.io/realms/details?path=" ) var ( diff --git a/extractor/types.go b/extractor/types.go index 01daccbc..c29025ba 100644 --- a/extractor/types.go +++ b/extractor/types.go @@ -9,6 +9,7 @@ import ( type Metadata struct { Creator string `json:"creator"` // the creator of the source code (deployer) Deposit string `json:"deposit"` // the deposit associated with the deployment + PkgPath string `json:"pkgpath"` } // metadataFromMsg extracts the metadata from a message @@ -16,5 +17,6 @@ func metadataFromMsg(msg vm.MsgAddPackage) Metadata { return Metadata{ Creator: msg.Creator.String(), Deposit: msg.Deposit.String(), + PkgPath: gnoscanPathURL + msg.Package.Path, } } diff --git a/test2.gno.land/backup_0860803-0862245.jsonl b/test2.gno.land/backup_0860803-0862245.jsonl new file mode 100755 index 00000000..e69de29b diff --git a/test2.gno.land/backup_0862245-0863665.jsonl b/test2.gno.land/backup_0862245-0863665.jsonl new file mode 100755 index 00000000..e69de29b diff --git a/test2.gno.land/backup_0863638-0865077.jsonl b/test2.gno.land/backup_0863638-0865077.jsonl new file mode 100755 index 00000000..e69de29b diff --git a/test2.gno.land/metadata.json b/test2.gno.land/metadata.json index 6e672505..d9174ebf 100644 --- a/test2.gno.land/metadata.json +++ b/test2.gno.land/metadata.json @@ -1,3 +1,3 @@ { - "latest_block_height": 863638 + "latest_block_height": 865077 } diff --git a/test3.gno.land/README.md b/test3.gno.land/README.md index 4cf85808..fdcf5619 100644 --- a/test3.gno.land/README.md +++ b/test3.gno.land/README.md @@ -2,7 +2,7 @@ ## TXs ``` -3730 +4034 ``` ## addpkgs diff --git a/test3.gno.land/backup_0238349-0240043.jsonl b/test3.gno.land/backup_0238349-0240043.jsonl new file mode 100755 index 00000000..c250f191 --- /dev/null +++ b/test3.gno.land/backup_0238349-0240043.jsonl @@ -0,0 +1,172 @@ +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1dkuv5nfw4re5rx65r60elq73e00p8wwau6uame","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"TMcfiRwvb5cRgIiHmIRElnABLn6UfYtFLQszm0cMGpd9u65Af16sc5xoExgK1iaSEABLqh7J1WJnqyaRCP2NbA=="}],"memo":""},"blockNum":"238486"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1dkuv5nfw4re5rx65r60elq73e00p8wwau6uame","package":{"Name":"helloworld","Path":"gno.land/p/alikarim/helloworld","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AmXGbQ66btIqPfgGS5SIbHG1IThFiPmoTsMyRyjS40XP"},"signature":"qUs9vq6ho/lkkDEGz2q5JIqWMcuKLpXnQSJDLAwaxUhkHPHCL3G7665efx4pxJv4/T6txS0TaCpIl8MoREU0Yg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238488"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1dkuv5nfw4re5rx65r60elq73e00p8wwau6uame","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"MXQolra9ASyFYK8I8SkWmmnCifEhjqxluXujOjQpuyR++J9HBNkY5m+6ut1xRtDzfZKyu/bBSxDrCN5xbAshOg=="}],"memo":""},"blockNum":"238490"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1dkuv5nfw4re5rx65r60elq73e00p8wwau6uame","package":{"Name":"helloworld","Path":"gno.land/p/alikarim/helloworld","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AmXGbQ66btIqPfgGS5SIbHG1IThFiPmoTsMyRyjS40XP"},"signature":"1jkyIc5j4Ss2LRlUyf2jlc2apXHztEttac+IckbmRSgx1rCBJ3Oz6cDdFQhef/611bUtM+oiheealS+GljPEPw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238493"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1dkuv5nfw4re5rx65r60elq73e00p8wwau6uame","package":{"Name":"hello","Path":"gno.land/p/alikarim/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AmXGbQ66btIqPfgGS5SIbHG1IThFiPmoTsMyRyjS40XP"},"signature":"90cGwxH7+RXr2ACRBd7+V+X20p9JNedwuxuTY41IRrJSJQ52JL3jDvLrLlf8pZZVsuTZRGTX7Vc2ieloyxXUmA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238495"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1dkuv5nfw4re5rx65r60elq73e00p8wwau6uame","package":{"Name":"hello","Path":"gno.land/r/alikarim/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AmXGbQ66btIqPfgGS5SIbHG1IThFiPmoTsMyRyjS40XP"},"signature":"TCZBiikgelcnts2F98qac8hhIKXhG/eGaqpyuC68W4RfsYHbgTgcMkJ/KKEGDlWnTNCkXnHLUjb8FCOukqFQ2A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238536"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"DQ//rQjVIXg+ayaXk3mQv8hykUPhqRuY4ZSyTdUS7eoIOih4IAwtUBY34SMbbeVY0RuTryt76DHfgMzMYFoH8Q=="}],"memo":""},"blockNum":"238677"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","package":{"Name":"rifat","Path":"gno.land/r/rifatmax/rifat","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A8m9bFJWjxLVaYtXzoKuDDY3rySitt3nfdX3XWPs6epP"},"signature":"ZFNwOq7DlCb/SwY9I2T23/6VgQyiq1+4ZcTsxhANsU0NEdPLCJGLT0ko4tI6Nu4ocM8KzGGxxDFO54ZJIHte9g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238679"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"UKH2JnV1m0HKSig53oaBRP2SeqPd5tcVGNyQsRj4q8JRtx+vss8pwn+pmtcNWHsMKEoCdIVziiGMi/ChF5jX+g=="}],"memo":""},"blockNum":"238682"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"Test1","Path":"gno.land/p/Test/Test1","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"aOMUFaUT6DdC9luwJr8QUe3oqSZh5sWL4WNSMpIQ29JdRWvmItaXn+SC9kEkxOpGaAadH6n/uSZAMAmzqI/UFw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238685"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"demo","Path":"gno.land/r/Test/demo","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"6krrBGqO7D58htB3hDvjxnK2lJLXq/16cdQTTdG+uuVwetkYUqCjlEr6XNg6bv0TdE7xVjRX0TTZZvHlT3R3pQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238687"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"demo","Path":"gno.land/r/Test/demo","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"jVWJsHVyhsiTffpUK+JNNJltk3gu9/1m9LRAhlOUXhkGJJ5YY0XpUJc57Md6jM8iitdGDFt/5fzmnM2se5ECyA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238689"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"demo1","Path":"gno.land/r/demo/demo1","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"mdWx/jp1YxK//EgB5phhLECabAmbupJQyy8qztvF8IQ3Ltg+Yo4S4GLO7C66vcZIcnP5IfHJEXd+dVXIXHEbbg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238691"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"GRC20","Path":"gno.land/r/demo/GRC20","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"SPGEbBKfXw9N0SEFB9Y08akqzoVdgXCpW2yyPMkNU0APhjohbq5zKU8IWFdux6rdfO9UcHx/FMbs2pmt95VtgA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238694"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"users","Path":"gno.land/r/demo/users","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"z/husXdOD6TtJdTunli29uK89xY2lpW9UG8FGlEfp7Qcw2VYyf/oGbJCFcVcS3YFal5wG4f1ssduzd7z8+gPVw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238696"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym","package":{"Name":"ganja","Path":"gno.land/r/demo/ganja","Files":[{"Name":"GRC20.gno","Body":"package ganja\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tganja *grc20.AdminToken\r\n\tadmin std.Address = \"g14nddjdkaqh3r84rs69txay6vqt8e4mf730v5ym\"\r\n)\r\n\r\nfunc init() {\r\n\tganja = grc20.NewAdminToken(\"ganjaToken\", \"ganja\", 6)\r\n\tganja.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn ganja.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := ganja.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := ganja.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tganja.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tganja.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tganja.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tganja.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tganja.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn ganja.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := ganja.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6WmTLTz0fRzvL653Wb5oxjf+cZ3qphbGlJX3zzIlI3X"},"signature":"YMwur0ut1jkQ66jXanCrVKBhnEuL/8aWRMOzsYsbl2clbVi1PBMePfffz65nCQXkKQuZXqEOODMYZSktYHU2RQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238699"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"NRomqmHmO6W9j5LVT+8OjSWKGTL7/kSjufVxqlnvZIsvPOHI1yFLQUeSu4+jfJJz2ZdN+QdC1yvu0pgBUcMyug=="}],"memo":""},"blockNum":"238702"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","package":{"Name":"rifat","Path":"gno.land/r/rifatmax/rifat","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A8m9bFJWjxLVaYtXzoKuDDY3rySitt3nfdX3XWPs6epP"},"signature":"TqADjcQLy1eKmWowV8LlahroNyg4Y2vvgy0DNHzPliQ2cD/aJb6PyDam3lgCRyVUdC85G6CNSciGPFeN12qAqA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238704"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","package":{"Name":"rifat","Path":"gno.land/r/rifatmax/rifat","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A8m9bFJWjxLVaYtXzoKuDDY3rySitt3nfdX3XWPs6epP"},"signature":"yDuWJDqt0EUPUH+dQjQHSnfnF2zh4NANd8QOgvrtsJtvKy1lW+YrM9//0LR8+sm3zjtbjze6nUz+xMwNr6mtsQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238706"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","package":{"Name":"ee","Path":"gno.land/p/rifatmax/ee","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A8m9bFJWjxLVaYtXzoKuDDY3rySitt3nfdX3XWPs6epP"},"signature":"U6TBRi3xYSEw49MVShf/ytMxlJL65A5cc7LEqVcJmwlbPM3eemXHgyPZqTEFc8Ka9Jhl/Myan67H8ISh3VuO4A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238709"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4gv4cfdvrhd6a7kp98646fmc9t093fsmdv03n","package":{"Name":"eeee","Path":"gno.land/r/rifatmax/eeee","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A8m9bFJWjxLVaYtXzoKuDDY3rySitt3nfdX3XWPs6epP"},"signature":"Z5X5ua5TzmnEA2/jZ25grfAGQdl09vf2IR6MI8iPCjJwZLhZUullpb2moXDzVh2pVTLt/6E286a3QC7m25CKyg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238711"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1avkkjxlsgzt6dj709ml8dglhcaqju8wm5rw2v7","package":{"Name":"aftertime","Path":"gno.land/r/demo/aftertime","Files":[{"Name":"package.gno","Body":"package aftertime\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\taftertime *grc20.AdminToken\n\tadmin std.Address = \"g1avkkjxlsgzt6dj709ml8dglhcaqju8wm5rw2v7\t\t\"\n)\n\nfunc init() {\n\taftertime = grc20.NewAdminToken(\"aftertimeToken\", \"aftertime\", 6)\n\taftertime.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn aftertime.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := aftertime.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := aftertime.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\taftertime.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\taftertime.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\taftertime.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\taftertime.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\taftertime.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn aftertime.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := aftertime.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AqeVsLXHG+b3DiSCsXhSQ1UtEyOVKD9Q2t1IoDJDXo6C"},"signature":"4AU/oWh5n1gX/6bTX1jM49W7QyNgGyCFd0gYaE7gxuo5nwLXN1CpQ7lyz1KoNfaewZm1eX62k6DN+wFqNGpomg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238795"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v6p0mf5p8mz4mte7qamxg6fclnazh0yzlpj66e","package":{"Name":"whatwhich","Path":"gno.land/r/demo/whatwhich","Files":[{"Name":"GRC20.gno","Body":"package whatwhich\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\twhatwhich *grc20.AdminToken\r\n\tadmin std.Address = \"g1v6p0mf5p8mz4mte7qamxg6fclnazh0yzlpj66e\t\t\t\"\r\n)\r\n\r\nfunc init() {\r\n\twhatwhich = grc20.NewAdminToken(\"whatwhichToken\", \"whatwhich\", 6)\r\n\twhatwhich.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn whatwhich.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := whatwhich.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := whatwhich.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twhatwhich.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twhatwhich.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twhatwhich.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twhatwhich.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twhatwhich.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn whatwhich.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := whatwhich.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AqBWuvoCuXn+/LtqVv/w36S7B2yOYG+qL397u6RJWwuN"},"signature":"atl5l0W6MsUYZWelUfy9PHw3nbNeoVKaczwIqL4appVmFz3WjabcasYqjGsfgFVCKAQJVMS8OnscatwhYhVdTw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238797"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1797z9sv6qut3pfjgdx6cuvwhesd73ehhwajxuh","package":{"Name":"Ifor","Path":"gno.land/r/demo/Ifor","Files":[{"Name":"package.gno","Body":"package Ifor\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tIfor *grc20.AdminToken\n\tadmin std.Address = \"g1797z9sv6qut3pfjgdx6cuvwhesd73ehhwajxuh\"\n)\n\nfunc init() {\n\tIfor = grc20.NewAdminToken(\"IforToken\", \"Ifor\", 6)\n\tIfor.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn Ifor.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := Ifor.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := Ifor.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tIfor.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tIfor.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tIfor.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tIfor.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tIfor.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn Ifor.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := Ifor.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5eexKmoXMvsTBKlw9HiU7GeKQf6ImWmhDngpmd6MYf4"},"signature":"lF6ge5Ly4/c+LEqGD4ikBIGn9CxvsUgZnG57Q2oguWEWWQGRLked0X/P529Zw8/QjcrF3z/8IqFcLPNFblnUCQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238799"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g19x2u84xtl86zwnahzq7qmzywky95mnu7gcg6vu","package":{"Name":"thetoo","Path":"gno.land/r/demo/thetoo","Files":[{"Name":"package.gno","Body":"package thetoo\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tthetoo *grc20.AdminToken\n\tadmin std.Address = \"g19x2u84xtl86zwnahzq7qmzywky95mnu7gcg6vu\t\t\t\"\n)\n\nfunc init() {\n\tthetoo = grc20.NewAdminToken(\"thetooToken\", \"thetoo\", 6)\n\tthetoo.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn thetoo.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := thetoo.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := thetoo.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tthetoo.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tthetoo.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tthetoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tthetoo.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tthetoo.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn thetoo.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := thetoo.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+kI9t38kgmoOXa0yXqZ3F0G2fuzhc6p1qbcSt3rummF"},"signature":"tJ2iK6c73rhZhO7qdwpDOMFp+Z6jNm+GQD22Ug2ZlTs24gjqGf8kqZRzTN3JxZtcf7gWemV2bCSt/ZdJoyGI0A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238802"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1f5tqk94q4tt9n5a3dnuqqarlj9fpgswumydeym","package":{"Name":"somenever","Path":"gno.land/r/demo/somenever","Files":[{"Name":"GRC20.gno","Body":"package somenever\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsomenever *grc20.AdminToken\r\n\tadmin std.Address = \"g1f5tqk94q4tt9n5a3dnuqqarlj9fpgswumydeym\"\r\n)\r\n\r\nfunc init() {\r\n\tsomenever = grc20.NewAdminToken(\"someneverToken\", \"somenever\", 6)\r\n\tsomenever.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn somenever.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := somenever.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := somenever.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsomenever.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsomenever.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsomenever.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsomenever.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsomenever.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn somenever.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := somenever.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+3HyFnZ7E/RDQZmu33/YaMsCj7KjLJNjvwvkn27j4jp"},"signature":"puxW37n7jVJrWm8jNQgNrO8m5uRzT5oLdnxsfD0GDFtPtpwcvOtT9xeorRwPFD3v5T8Aetlh/cI7YEHDwRW/tw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238804"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g13xtjmg6fycmfkwls54lhv3k6xs2x54pj9ekse3","package":{"Name":"atme","Path":"gno.land/r/demo/atme","Files":[{"Name":"GRC20.gno","Body":"package atme\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tatme *grc20.AdminToken\r\n\tadmin std.Address = \"g13xtjmg6fycmfkwls54lhv3k6xs2x54pj9ekse3\"\r\n)\r\n\r\nfunc init() {\r\n\tatme = grc20.NewAdminToken(\"atmeToken\", \"atme\", 6)\r\n\tatme.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn atme.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := atme.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := atme.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tatme.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tatme.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tatme.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tatme.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tatme.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn atme.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := atme.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AlZqCHrfsdCjZZA6CaBoPnoZSmLwolLOJ1sEcvgXrsNW"},"signature":"TtASZddJZ8eNTetd4XysICreohZzbzme75A2mBX4VtMRsNMFkOx8fI/ibnZzFkcp8DmxZ3kSaK1eZrUFZmTNtg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238806"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1mqnw8hy6hyhsszg3mzal62p3lqnnc743pglz9r","package":{"Name":"samewere","Path":"gno.land/r/demo/samewere","Files":[{"Name":"GRC20.gno","Body":"package samewere\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsamewere *grc20.AdminToken\r\n\tadmin std.Address = \"g1mqnw8hy6hyhsszg3mzal62p3lqnnc743pglz9r\"\r\n)\r\n\r\nfunc init() {\r\n\tsamewere = grc20.NewAdminToken(\"samewereToken\", \"samewere\", 6)\r\n\tsamewere.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn samewere.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := samewere.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := samewere.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsamewere.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsamewere.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsamewere.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsamewere.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsamewere.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn samewere.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := samewere.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AriBuu5/3z7S29Gq6QXDESAyu0PKJwGTgrEIkvxkRsc2"},"signature":"FH9hiDsKGq/OucckNgvNwrkygvj+YDYTT1FvEMos0whmvDw0BuxK4cIheql1YqDpW3Q4MsF0tfjn0iVqfHB8ww=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238808"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1asphh75z7059e4qnphffzxstzgrr8g86cnqkly","package":{"Name":"himsee","Path":"gno.land/r/demo/himsee","Files":[{"Name":"package.gno","Body":"package himsee\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\thimsee *grc20.AdminToken\n\tadmin std.Address = \"g1asphh75z7059e4qnphffzxstzgrr8g86cnqkly\"\n)\n\nfunc init() {\n\thimsee = grc20.NewAdminToken(\"himseeToken\", \"himsee\", 6)\n\thimsee.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn himsee.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := himsee.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := himsee.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\thimsee.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\thimsee.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\thimsee.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\thimsee.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\thimsee.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn himsee.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := himsee.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5WyTfhX5hyX/R3fLL5hVgh+Wq8wMiKAQxaGHeV9K3yt"},"signature":"L88vahnPPASviYysYtgoMMwjukXk0vHSL6uhfhwhPfpFYG++I5926W3QYm9OUlzF4NdzUFKnigmIRWT6OEEcoQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238810"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1uy9m5vu5kzawjeuauwhqsfnzhyd9r9hlz2y570","package":{"Name":"asabout","Path":"gno.land/p/demo/asabout","Files":[{"Name":"GRC20.gno","Body":"package asabout\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tasabout *grc20.AdminToken\r\n\tadmin std.Address = \"g1uy9m5vu5kzawjeuauwhqsfnzhyd9r9hlz2y570\"\r\n)\r\n\r\nfunc init() {\r\n\tasabout = grc20.NewAdminToken(\"asaboutToken\", \"asabout\", 6)\r\n\tasabout.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn asabout.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := asabout.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := asabout.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasabout.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasabout.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasabout.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tasabout.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tasabout.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn asabout.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := asabout.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A3zIVETrPIFxlJUg3JwdIcNL6sQZRoCTus5lv9SdMXf0"},"signature":"j7zxtcxg3/1W0BcghlMwyVhagu3R0+i1ST+v1CIzDLsfKfHAcVLjW6Q9XllSVx5hYW/nu49L718x2xcaxXEutA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238812"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1n9l9n3j5587tjly3tgf4e04kwy8e9frwfuczxd","package":{"Name":"wellnever","Path":"gno.land/r/demo/wellnever","Files":[{"Name":"package.gno","Body":"package wellnever\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\twellnever *grc20.AdminToken\n\tadmin std.Address = \"g1n9l9n3j5587tjly3tgf4e04kwy8e9frwfuczxd\"\n)\n\nfunc init() {\n\twellnever = grc20.NewAdminToken(\"wellneverToken\", \"wellnever\", 6)\n\twellnever.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn wellnever.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := wellnever.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := wellnever.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\twellnever.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\twellnever.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\twellnever.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\twellnever.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\twellnever.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn wellnever.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := wellnever.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AtLJFGlWCdu7ak547XzyfTNt4uYmjVvlExqIUjBIvbiV"},"signature":"Pwp12JH6TOxN19eJMn+tQEJdQTRdlp7ImcniCyyD67xKj9dfhcNDVColSYBAOAQ9RRrYPpae45Z0AYxwCsCicA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238814"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1pcrv5u9tfwrtjrgqp3lfw9tqsanyrlespvqaxa","package":{"Name":"FIRST","Path":"gno.land/r/demo/FIRST","Files":[{"Name":"GRC20.gno","Body":"package FIRST\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tFIRST *grc20.AdminToken\r\n\tadmin std.Address = \"g1pcrv5u9tfwrtjrgqp3lfw9tqsanyrlespvqaxa\"\r\n)\r\n\r\nfunc init() {\r\n\tFIRST = grc20.NewAdminToken(\"FIRSTToken\", \"FIRST\", 6)\r\n\tFIRST.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn FIRST.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := FIRST.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := FIRST.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tFIRST.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tFIRST.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tFIRST.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tFIRST.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tFIRST.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn FIRST.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := FIRST.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxQ4yxtksCTVtLdpfqxR3kagqFfgm4XDQk6A5pKlVLOc"},"signature":"LeXwweOHgJamgUqhwN2Gmos/m9g7yBDR/Pua9Yvag6oIAVmCUq9eRdP2XH7LcicT0ce4sqaOuA7l8D+3wgGyQw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238816"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1pcrv5u9tfwrtjrgqp3lfw9tqsanyrlespvqaxa","package":{"Name":"first","Path":"gno.land/r/demo/first","Files":[{"Name":"GRC20.gno","Body":"package first\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfirst *grc20.AdminToken\r\n\tadmin std.Address = \"g1pcrv5u9tfwrtjrgqp3lfw9tqsanyrlespvqaxa\"\r\n)\r\n\r\nfunc init() {\r\n\tfirst = grc20.NewAdminToken(\"firstToken\", \"first\", 6)\r\n\tfirst.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn first.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := first.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := first.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfirst.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfirst.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfirst.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfirst.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfirst.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn first.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := first.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxQ4yxtksCTVtLdpfqxR3kagqFfgm4XDQk6A5pKlVLOc"},"signature":"bHJRuN6OqC86m0gVCwVV4kHraZDTFopjOm5RRBFCRLo6VAETacHlJ23iVOYWuBPEeILMHbO9gMu0QKG6R5svwg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238818"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1hx9843kgnvas52c8q2ptnld2uvhmz9uljrzwhd","package":{"Name":"inas","Path":"gno.land/r/demo/inas","Files":[{"Name":"package.gno","Body":"package inas\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tinas *grc20.AdminToken\n\tadmin std.Address = \"g1hx9843kgnvas52c8q2ptnld2uvhmz9uljrzwhd\"\n)\n\nfunc init() {\n\tinas = grc20.NewAdminToken(\"inasToken\", \"inas\", 6)\n\tinas.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn inas.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := inas.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := inas.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tinas.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tinas.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tinas.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tinas.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tinas.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn inas.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := inas.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ay8i9tZvTKsPlNpkjXgRCUoJX8aSfcd/cnCxyGDZSJSJ"},"signature":"zL8s6yyDvBwDjlB4ylRuRq36cD+T3d45DVbllpmTtDgxzSVUrrE22H9Rv3TBm0xdWQfWnrYw1CZ8+YHgzfWPrg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238820"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1udaslhrux5d5d9qfh7tykket66wy9u36k7w4h8","package":{"Name":"daysnow","Path":"gno.land/r/demo/daysnow","Files":[{"Name":"GRC20.gno","Body":"package daysnow\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tdaysnow *grc20.AdminToken\r\n\tadmin std.Address = \"g1udaslhrux5d5d9qfh7tykket66wy9u36k7w4h8\"\r\n)\r\n\r\nfunc init() {\r\n\tdaysnow = grc20.NewAdminToken(\"daysnowToken\", \"daysnow\", 6)\r\n\tdaysnow.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn daysnow.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := daysnow.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := daysnow.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdaysnow.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdaysnow.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdaysnow.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdaysnow.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdaysnow.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn daysnow.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := daysnow.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aybsd+DeYZpgjwBlAL4mld8OkV9nqsnijWi5bw6ks7u6"},"signature":"BBduXS9T0kHbx5tDDj0zfHnHhFB9CDQg2hzjg13Cw2kbMXqaoO7ncOWi048xPZk/dyfYbOog2VLXjUpjWcdI5A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238822"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1t4ug7hdtny000c4z4lakl9ky06jjh20xf6jv46","package":{"Name":"himselfthrough","Path":"gno.land/r/demo/himselfthrough","Files":[{"Name":"package.gno","Body":"package himselfthrough\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\thimselfthrough *grc20.AdminToken\n\tadmin std.Address = \"g1t4ug7hdtny000c4z4lakl9ky06jjh20xf6jv46\"\n)\n\nfunc init() {\n\thimselfthrough = grc20.NewAdminToken(\"himselfthroughToken\", \"himselfthrough\", 6)\n\thimselfthrough.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn himselfthrough.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := himselfthrough.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := himselfthrough.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\thimselfthrough.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\thimselfthrough.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\thimselfthrough.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\thimselfthrough.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\thimselfthrough.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn himselfthrough.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := himselfthrough.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Av3gu72l/5pwK/XiSlfyR7kPgWR2bkaioG3SYX3+TePU"},"signature":"CKOYVX9Nwngalk7lWsynC7cFO6A7L7ahunbp6OiXIqFWxCuUJzd+0W65QLP+S8l+zSRhYNI5VPeg+aG7v0EuQw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238824"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1h4x7pwzr6d98z6x3gzur4rgeyq5l3rj0qugcnl","package":{"Name":"intowould","Path":"gno.land/r/demo/intowould","Files":[{"Name":"package.gno","Body":"package intowould\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tintowould *grc20.AdminToken\n\tadmin std.Address = \"g1h4x7pwzr6d98z6x3gzur4rgeyq5l3rj0qugcnl\"\n)\n\nfunc init() {\n\tintowould = grc20.NewAdminToken(\"intowouldToken\", \"intowould\", 6)\n\tintowould.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn intowould.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := intowould.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := intowould.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tintowould.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tintowould.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tintowould.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tintowould.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tintowould.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn intowould.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := intowould.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ar1Mo0/wZbEt0lVDmSaAyhCmE1RykydRczhuhvIfQI5Y"},"signature":"2j89sbgsqOT8RdndZ/15OXVWtHQKi64Y9k1W0xxpYVw5mO/dLLCvp2rbM/XP8u1wlQHFF8xt+h3QI+OkBtIL1Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238826"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1kd2dspr8dtq35nmmsk3e87feakjpwnjya5xq4s","package":{"Name":"throughyou","Path":"gno.land/r/demo/throughyou","Files":[{"Name":"GRC20.gno","Body":"package throughyou\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tthroughyou *grc20.AdminToken\r\n\tadmin std.Address = \"g1kd2dspr8dtq35nmmsk3e87feakjpwnjya5xq4s\"\r\n)\r\n\r\nfunc init() {\r\n\tthroughyou = grc20.NewAdminToken(\"throughyouToken\", \"throughyou\", 6)\r\n\tthroughyou.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn throughyou.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := throughyou.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := throughyou.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tthroughyou.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tthroughyou.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tthroughyou.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tthroughyou.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tthroughyou.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn throughyou.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := throughyou.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AvGrSPAaImudJIi23gBM4BmQfItwDeqoqS7D7RhXzAG2"},"signature":"W7uZ5iqKS4AupVGuxzsT5XtOeDU1A00VozGIvLaZosMkFRwqgOOrwwl9hsstYJZ0cgIMmdZilCaGu9jRn0KxRg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238828"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1mvmue4j23xtz6xe9tpfr42m4yg83pxrxtlz2e2","package":{"Name":"sincethey","Path":"gno.land/r/demo/sincethey","Files":[{"Name":"GRC20.gno","Body":"package sincethey\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsincethey *grc20.AdminToken\r\n\tadmin std.Address = \"g1mvmue4j23xtz6xe9tpfr42m4yg83pxrxtlz2e2\"\r\n)\r\n\r\nfunc init() {\r\n\tsincethey = grc20.NewAdminToken(\"sincetheyToken\", \"sincethey\", 6)\r\n\tsincethey.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn sincethey.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := sincethey.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := sincethey.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsincethey.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsincethey.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsincethey.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsincethey.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsincethey.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn sincethey.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := sincethey.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A19BT744sZmf8IOB5gorOXMDVFEHA1qfq4BG1+/Q+HAE"},"signature":"zQVLOZAxtrox/MwvFP+qT3kgRmrGlc8kozL8hPF+ZvgSZSokJKozC4OBUmec/kRgehuYAdNiCsllshn3v4ufJw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238830"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g18ecc9swcfcy5vp8uedewpfj4che4xhd5n4yrkp","package":{"Name":"timeand","Path":"gno.land/r/demo/timeand","Files":[{"Name":"package.gno","Body":"package timeand\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\ttimeand *grc20.AdminToken\n\tadmin std.Address = \"g18ecc9swcfcy5vp8uedewpfj4che4xhd5n4yrkp\"\n)\n\nfunc init() {\n\ttimeand = grc20.NewAdminToken(\"timeandToken\", \"timeand\", 6)\n\ttimeand.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn timeand.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := timeand.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := timeand.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\ttimeand.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\ttimeand.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\ttimeand.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\ttimeand.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\ttimeand.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn timeand.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := timeand.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A88Wdlmmc99CRgEe2nacAJdzyq0JgFQwcVhiMhOV+8M0"},"signature":"IBLy+UL24kIpY/wJ5uNB7x+TcYn8HdqWXUuC3mCc5bk/zXS8Kl6BJPGl7p+Ovh5wMQtNzo73wdofx3zsL+xe+g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238833"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g18ud4xy59cwjcnfzantr0r4m5gdt8pq9quyvgz2","package":{"Name":"itwhile","Path":"gno.land/r/demo/itwhile","Files":[{"Name":"GRC20.gno","Body":"package itwhile\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\titwhile *grc20.AdminToken\r\n\tadmin std.Address = \"g18ud4xy59cwjcnfzantr0r4m5gdt8pq9quyvgz2\"\r\n)\r\n\r\nfunc init() {\r\n\titwhile = grc20.NewAdminToken(\"itwhileToken\", \"itwhile\", 6)\r\n\titwhile.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn itwhile.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := itwhile.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := itwhile.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\titwhile.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\titwhile.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\titwhile.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\titwhile.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\titwhile.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn itwhile.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := itwhile.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A1zlRO+3VncbrtGetCwfPyc6HdsDPj270AW+XKyTvyWI"},"signature":"UYvOGdGxM1jBm3O85ju5E6WmrK81g7ZBs3Jga4qGRWQqo/dl2RHFgsEB3kXs0Z6GPWyvD0T5f402vh+zpOpRsw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238835"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1jjqndu9g75ya4cue5e0g4zy9zxtrp3rr30687l","package":{"Name":"notknow","Path":"gno.land/r/demo/notknow","Files":[{"Name":"GRC20.gno","Body":"package notknow\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tnotknow *grc20.AdminToken\r\n\tadmin std.Address = \"g1jjqndu9g75ya4cue5e0g4zy9zxtrp3rr30687l\"\r\n)\r\n\r\nfunc init() {\r\n\tnotknow = grc20.NewAdminToken(\"notknowToken\", \"notknow\", 6)\r\n\tnotknow.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn notknow.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := notknow.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := notknow.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tnotknow.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tnotknow.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tnotknow.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tnotknow.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tnotknow.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn notknow.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := notknow.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArbsoYlEhr6eOzWwejqTwLQStqE8AoxjIEI2vX4yJQNj"},"signature":"Q4SUjQdo95jY/nAjJ2LW4z3tucYxPjueKzhX1mXrTSFDNBIDT2Q/aZa8gAQdXZOgXH+/3NYDwqQA9muhi4HCQA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238837"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"U9nJbe9yycUr7pZjN+VNrLTivCXtx/W1aDFnhQOVUlR9l9P7UdGvZu++5fxG9pwXPnb4jkldjOCmNN55bamv/A=="}],"memo":""},"blockNum":"238839"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1lqyjjvdtt5n3gvqhg4pjcyv4hgeynn8sfkn7qn","package":{"Name":"arethose","Path":"gno.land/r/demo/arethose","Files":[{"Name":"GRC20.gno","Body":"package arethose\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tarethose *grc20.AdminToken\r\n\tadmin std.Address = \"g1lqyjjvdtt5n3gvqhg4pjcyv4hgeynn8sfkn7qn\"\r\n)\r\n\r\nfunc init() {\r\n\tarethose = grc20.NewAdminToken(\"arethoseToken\", \"arethose\", 6)\r\n\tarethose.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn arethose.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := arethose.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := arethose.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tarethose.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tarethose.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tarethose.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tarethose.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tarethose.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn arethose.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := arethose.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4II0PFgMkds1LAac5W/gDMRMOjG3tvZCK+fE4s58q5c"},"signature":"dnYKC/A3Ei1WQIjXeMjzTHnQ2dJNZwydopUNx7eKD6dPgSbdpUdEUzrYVa2E64mHQmRoMF6nGrh1GKFl/II+Yw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238841"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1nvyrxtgzjkrupnktlpqtntl98pv2andljk6lpq","package":{"Name":"washis","Path":"gno.land/r/demo/washis","Files":[{"Name":"package.gno","Body":"package washis\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\twashis *grc20.AdminToken\n\tadmin std.Address = \"g1nvyrxtgzjkrupnktlpqtntl98pv2andljk6lpq\"\n)\n\nfunc init() {\n\twashis = grc20.NewAdminToken(\"washisToken\", \"washis\", 6)\n\twashis.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn washis.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := washis.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := washis.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\twashis.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\twashis.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\twashis.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\twashis.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\twashis.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn washis.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := washis.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/YEkFMa/+mxFB+JzVYCePSoT8AEfxcWVB1bh8ddW5ze"},"signature":"0Tytqr36X7z3dNjCi3wKP5qFFSRRg8pcAvSU9vZZ6EoQFLkxU4GHPIvZi2w2PEA3ve+FKujw/S+E+X+N3w/zeg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238843"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y2cj6y60qxmy4jf92ym8adwtl85ufluxaszhna","package":{"Name":"upmust","Path":"gno.land/r/demo/upmust","Files":[{"Name":"package.gno","Body":"package upmust\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tupmust *grc20.AdminToken\n\tadmin std.Address = \"g1y2cj6y60qxmy4jf92ym8adwtl85ufluxaszhna\"\n)\n\nfunc init() {\n\tupmust = grc20.NewAdminToken(\"upmustToken\", \"upmust\", 6)\n\tupmust.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn upmust.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := upmust.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := upmust.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tupmust.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tupmust.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tupmust.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tupmust.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tupmust.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn upmust.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := upmust.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A0xPuXM5lJqWii49ifIuu+IM8fKERyNaE1qEEd2e8/mG"},"signature":"LNOg4SOcfEdy5KuEtmgEehtGhAwZDEMjUqcnIwNBixN7feAYILEcN4uPBpnixJI+gqGCIYvWG2qI/J1SBCxn2w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238845"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m","package":{"Name":"GIGACAT","Path":"gno.land/r/demo/GIGACAT","Files":[{"Name":"GRC20.gno","Body":"package GIGACAT\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tGIGACAT *grc20.AdminToken\r\n\tadmin std.Address = \"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m\"\r\n)\r\n\r\nfunc init() {\r\n\tGIGACAT = grc20.NewAdminToken(\"GIGACATToken\", \"GIGACAT\", 6)\r\n\tGIGACAT.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn GIGACAT.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := GIGACAT.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := GIGACAT.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tGIGACAT.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tGIGACAT.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tGIGACAT.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tGIGACAT.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tGIGACAT.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn GIGACAT.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := GIGACAT.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AuBjbReONCmcxHelhUMIe8tHML9aWbPquzJsACf3cVrE"},"signature":"EbJaO7fUBVbZzn9E3E7qQMlnnsbywnQaSwV0EE/JVy9X9aR5DFxVR253ofco2Om/7tdDgCxNPozbrTROIWJH0g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238847"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m","package":{"Name":"GIGACAT","Path":"gno.land/r/demo/GIGACAT","Files":[{"Name":"GRC20.gno","Body":"package GIGACAT\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tGIGACAT *grc20.AdminToken\r\n\tadmin std.Address = \"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m\"\r\n)\r\n\r\nfunc init() {\r\n\tGIGACAT = grc20.NewAdminToken(\"GIGACATToken\", \"GIGACAT\", 6)\r\n\tGIGACAT.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn GIGACAT.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := GIGACAT.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := GIGACAT.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tGIGACAT.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tGIGACAT.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tGIGACAT.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tGIGACAT.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tGIGACAT.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn GIGACAT.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := GIGACAT.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AuBjbReONCmcxHelhUMIe8tHML9aWbPquzJsACf3cVrE"},"signature":"fAVDWcHqH4e9gefTKe5P8BNg/M+EZADUhhyOw5+6xThq0meq5hJV8RbV/Vh18oEVnHRWq03ofrs155L67eNShw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238849"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1kl0eyncfz48gxrh4lzqhc46lvq0cw5vgfzd3r3","package":{"Name":"mustknow","Path":"gno.land/r/demo/mustknow","Files":[{"Name":"GRC20.gno","Body":"package mustknow\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tmustknow *grc20.AdminToken\r\n\tadmin std.Address = \"g1kl0eyncfz48gxrh4lzqhc46lvq0cw5vgfzd3r3\"\r\n)\r\n\r\nfunc init() {\r\n\tmustknow = grc20.NewAdminToken(\"mustknowToken\", \"mustknow\", 6)\r\n\tmustknow.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn mustknow.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := mustknow.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := mustknow.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmustknow.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmustknow.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmustknow.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tmustknow.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tmustknow.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn mustknow.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := mustknow.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9vCyioShQNv7XSln/BHrpTi79o1xLo2xx4fxOXV8rub"},"signature":"xMi/y8u6hBQSKtkZHjMTDpHwc49Pt0wNxgyBsVQjTmUXyKq7crRUnv4e5g/c7SWq0O1vr6ZbXovA3GKRCVUWMQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238851"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m","package":{"Name":"gigacat","Path":"gno.land/p/demo/gigacat","Files":[{"Name":"GRC20.gno","Body":"package gigacat\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tgigacat *grc20.AdminToken\r\n\tadmin std.Address = \"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m\"\r\n)\r\n\r\nfunc init() {\r\n\tgigacat = grc20.NewAdminToken(\"gigacatToken\", \"gigacat\", 6)\r\n\tgigacat.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn gigacat.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := gigacat.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := gigacat.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgigacat.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgigacat.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgigacat.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tgigacat.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tgigacat.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn gigacat.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := gigacat.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AuBjbReONCmcxHelhUMIe8tHML9aWbPquzJsACf3cVrE"},"signature":"UqvKJ36rH7pzO+OX2QK7hp43CKTALrj8PRzQMEx1HkxMzLdHYYMIg4GsQftoNst3TzWWcHMB1X4F+D0QU29/+A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238853"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1n0rc5wzfsvhc3ygc3s9u87fydrgmcz70resvzt","package":{"Name":"nowmust","Path":"gno.land/r/demo/nowmust","Files":[{"Name":"GRC20.gno","Body":"package nowmust\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tnowmust *grc20.AdminToken\r\n\tadmin std.Address = \"g1n0rc5wzfsvhc3ygc3s9u87fydrgmcz70resvzt\"\r\n)\r\n\r\nfunc init() {\r\n\tnowmust = grc20.NewAdminToken(\"nowmustToken\", \"nowmust\", 6)\r\n\tnowmust.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn nowmust.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := nowmust.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := nowmust.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tnowmust.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tnowmust.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tnowmust.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tnowmust.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tnowmust.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn nowmust.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := nowmust.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ai/orsIzZLFVdW/ZzmhzWwJo/N69rjqn70vyw3pLYTRr"},"signature":"OF73nDX/vyupSJsBBoob+wY2ZBctugxflO0a5h2YjHV4df+lPDPVvxHEtEWAw0Cqs1w2Sj3gPnwOymkStFnOGQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238855"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1ruwff2sn5rp25r2fuh78v2azllf8fwrz5n4350","package":{"Name":"wean","Path":"gno.land/r/demo/wean","Files":[{"Name":"GRC20.gno","Body":"package wean\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\twean *grc20.AdminToken\r\n\tadmin std.Address = \"g1ruwff2sn5rp25r2fuh78v2azllf8fwrz5n4350\"\r\n)\r\n\r\nfunc init() {\r\n\twean = grc20.NewAdminToken(\"weanToken\", \"wean\", 6)\r\n\twean.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn wean.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := wean.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := wean.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twean.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twean.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twean.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twean.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twean.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn wean.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := wean.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AwHJ7xl2xjdBXS6DmMLTjGT0PkfcGFlU+FroN02NFfZC"},"signature":"QmQmWBpeKFQ6gi0mv5wmvkRsrC5JpaewXgIMOW1y9+tbWCbUTUNH5b861HMD1ERqneWguvZdKSM64XqPVBZNKg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238857"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1vpdatjy88d9au4xgq9w5rfr482qdvfgptvwmtt","package":{"Name":"imust","Path":"gno.land/r/demo/imust","Files":[{"Name":"package.gno","Body":"package imust\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\timust *grc20.AdminToken\n\tadmin std.Address = \"g1vpdatjy88d9au4xgq9w5rfr482qdvfgptvwmtt\"\n)\n\nfunc init() {\n\timust = grc20.NewAdminToken(\"imustToken\", \"imust\", 6)\n\timust.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn imust.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := imust.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := imust.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\timust.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\timust.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\timust.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\timust.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\timust.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn imust.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := imust.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A6CC0y4pzQrVOi2IY+lDLFJrMtRVJ+S0LJsLRB5Htkkr"},"signature":"FP+ja65edcHwU6gv8lI4SM7nbsL8oAOt7Kk0R2UdL5culJ8q6P/UJFhzEwvRTldEQSASxtonnLRUUvzyirNsmw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238860"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g15v3slpdmear5n9ptvjhd9m24q6mf4cv82ftvg9","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"GwMzD0ska3KqP+a1O/kB7ALxrLk/mi6azzJFh6CTPxZP+8fTe627BFDSdvnYDJ/Ite/A8us+kEWWzGF4vPbacw=="}],"memo":""},"blockNum":"238862"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1asls0as52mde3r99nanfnzggr0m27l97p7339l","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"0uS8Jqnr3+TRc5S0ZXPpMm0EiW2FQVGlisXkGbld+Ilg0HoMdYaePC10OWPX+s2aQJiqK9QhHWGwbf5fmYMm/g=="}],"memo":""},"blockNum":"238864"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g16krfgfzh9var57xsjcwr8u322pauchy89f6q9d","package":{"Name":"ion","Path":"gno.land/r/demo/ion","Files":[{"Name":"package.gno","Body":"package ion\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tion *grc20.AdminToken\n\tadmin std.Address = \"g16krfgfzh9var57xsjcwr8u322pauchy89f6q9d\"\n)\n\nfunc init() {\n\tion = grc20.NewAdminToken(\"ionToken\", \"ion\", 6)\n\tion.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ion.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ion.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ion.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tion.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tion.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tion.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tion.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tion.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ion.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ion.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/087gf583gedesiig9fVcwlk0zZeEcmvHny0I3gUMmt"},"signature":"Lsw/yloFRkO62mlccDBc/jGOtm7x4Fjbb7O5H5odsdslP0v9R+nAYV56avh8AIRzOrkIBojWv93YC8hQZYnXrQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238866"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g19xw9uzlcr3jefwx6dpmr6c0erg5kc65zlj8r4e","package":{"Name":"asa","Path":"gno.land/r/demo/asa","Files":[{"Name":"GRC20.gno","Body":"package asa\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tasa *grc20.AdminToken\r\n\tadmin std.Address = \"g19xw9uzlcr3jefwx6dpmr6c0erg5kc65zlj8r4e\"\r\n)\r\n\r\nfunc init() {\r\n\tasa = grc20.NewAdminToken(\"asaToken\", \"asa\", 6)\r\n\tasa.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn asa.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := asa.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := asa.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasa.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasa.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasa.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tasa.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tasa.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn asa.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := asa.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5/PtgBgkKmfDncdJ/xmju0F9aoc3pBzBg6Imr62fwHs"},"signature":"ni6awOMO06kajhjNUIc7I2qX2GIYOfmZ09Q1RhxzJJ9+hdsFyUmF5ZkqLV4186ZvFnvZsNgZlyJ741lbbYcf1g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238868"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g19xw9uzlcr3jefwx6dpmr6c0erg5kc65zlj8r4e","package":{"Name":"asapp","Path":"gno.land/r/demo/asapp","Files":[{"Name":"GRC20.gno","Body":"package asapppp\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tasapp *grc20.AdminToken\r\n\tadmin std.Address = \"g19xw9uzlcr3jefwx6dpmr6c0erg5kc65zlj8r4e\"\r\n)\r\n\r\nfunc init() {\r\n\tasapp = grc20.NewAdminToken(\"asappToken\", \"asapp\", 6)\r\n\tasapp.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn asapp.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := asapp.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := asapp.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasapp.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasapp.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tasapp.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tasapp.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tasapp.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn asapp.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := asapp.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5/PtgBgkKmfDncdJ/xmju0F9aoc3pBzBg6Imr62fwHs"},"signature":"PLXZlRn2FdjKr49obIRwothV41vevQ91LZFrsz7vTJI3iUqvL/+HlMcEeDEIuBHfRJLdHvx9AFykCpgPuuqR5w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238870"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1asls0as52mde3r99nanfnzggr0m27l97p7339l","package":{"Name":"mickeys","Path":"gno.land/r/demo/mickeys","Files":[{"Name":"GRC20.gno","Body":"package mickeys\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tmickeys *grc20.AdminToken\r\n\tadmin std.Address = \"g1asls0as52mde3r99nanfnzggr0m27l97p7339l\"\r\n)\r\n\r\nfunc init() {\r\n\tmickeys = grc20.NewAdminToken(\"mickeysToken\", \"mickeys\", 6)\r\n\tmickeys.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn mickeys.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := mickeys.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := mickeys.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmickeys.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmickeys.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmickeys.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tmickeys.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tmickeys.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn mickeys.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := mickeys.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aq6RYLEEsBTkrIxEs7mx6iYU8Z1nYvFJBD8TITXN5Gys"},"signature":"Dw+r8e3FkXYejDVnVCnAxJMFVKpluUosqiJK6OgOsZMLBI37U1x0TCxszorb9n6cZjuIdr4oLfyz1DRQSTVI/Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238872"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g15v3slpdmear5n9ptvjhd9m24q6mf4cv82ftvg9","package":{"Name":"wholelottas","Path":"gno.land/r/demo/wholelottas","Files":[{"Name":"GRC20.gno","Body":"package wholelottas\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\twholelottas *grc20.AdminToken\r\n\tadmin std.Address = \"g15v3slpdmear5n9ptvjhd9m24q6mf4cv82ftvg9\"\r\n)\r\n\r\nfunc init() {\r\n\twholelottas = grc20.NewAdminToken(\"wholelottasToken\", \"wholelottas\", 6)\r\n\twholelottas.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn wholelottas.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := wholelottas.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := wholelottas.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twholelottas.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twholelottas.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twholelottas.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twholelottas.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twholelottas.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn wholelottas.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := wholelottas.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArJXGkfkUwpZTQU8R9L6qgMT5F8wVEw9kAU6KLVWMTHM"},"signature":"UL3rSj873UEXR9CsuL9rpdyAB0zAjtJGwLA+op968yBpCOla5obmnHf2Tux5KmI+Ub3CJJCBuQphJ4rW/aQnAA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238875"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m","package":{"Name":"reizzas","Path":"gno.land/r/demo/reizzas","Files":[{"Name":"GRC20.gno","Body":"package reizzas\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\treizzas *grc20.AdminToken\r\n\tadmin std.Address = \"g1gwm6x0ngddufx9f3rj5vwt0fdf864x48x5mp2m\"\r\n)\r\n\r\nfunc init() {\r\n\treizzas = grc20.NewAdminToken(\"reizzasToken\", \"reizzas\", 6)\r\n\treizzas.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn reizzas.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := reizzas.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := reizzas.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\treizzas.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\treizzas.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\treizzas.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\treizzas.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\treizzas.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn reizzas.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := reizzas.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AuBjbReONCmcxHelhUMIe8tHML9aWbPquzJsACf3cVrE"},"signature":"BERfWn+vwEr7HfBSqP2o6wUK7gEWCZm02XC9YgrsQmJzplKgIvQ8IDLX5yg/Ma+OpnnjVIeS4HM1UrDJqzsqnA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"238878"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1rru6kz2mw4lu2zh2t4rp9udxzuw3u9y3k8y6sj","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"KP1XdAxpQXuOALljj5PrxbpjXbg2rIXbuSWHh272WgMBbqLXj3qLa223ICUc1Mwb8PiWGQeR2qZpjWjbEmm5+Q=="}],"memo":""},"blockNum":"239009"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g12tek6c43gaq0rqaye7p5685ca32j3sr3l2gja5","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"Jy6c7Y0XCIv6dIwbRJCjNvFnibd9ns1s0EPuh7L0nctXCzR5PhtQRZChR8SuqxdVysNIuGuAu3W9Id4iZ1inPg=="}],"memo":""},"blockNum":"239011"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1mm2580nhad488l94qwls2k4x7evxzf96xhuqcg","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"me39kNrxYPKtzorpEo55wK8mApgLdlObyRlEudVF8j8xmiiVdBiatxAtrAUTLSAvM+JwADp+y9M9h2wFi83/1A=="}],"memo":""},"blockNum":"239013"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1lareqd20842kuuupdj4vcyddjcudsh7pvp2jwc","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"VLukQVPPN1UMBMX77Rib6WcaMkGdfHRVKmHuP8T4jnxtv+JNbVIk4My7S5weVsUBjTUIB86Y+j7L/w4+IgFqog=="}],"memo":""},"blockNum":"239015"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1hdznukrdjla2zlld3ves9vnhrgglqcz5xycrj4","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"8jgLe0POD3Chvudmv8/cueE/3IIi1mHREibKDq/WdNV1e3ZN56y3VZYL35F6xYCmdF0RFutyr1rUEBHhpSvSjA=="}],"memo":""},"blockNum":"239017"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1yu2gnnzyzq322nthp9nzlar63apu3l2pqdnp7k","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"5pQCgipgINZa0bDKvLwWL7yy/Hn7a0nBMWiMakCo7SoGof4781QJAsN0Ya5Wgyz1sFtC9YAkxlfsfH98HDV/Fw=="}],"memo":""},"blockNum":"239019"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1z0jyjp4klvtcw4fzmq8f4x6vrzzt2jlvg67lfw","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"UlSFZrdbSYtRDyUJtCoeCLzMHQCMnvyZLCvqzV9zvONeE792YUBophR855lAuSrvkJLroUhX9t8qRxFEjh4+iQ=="}],"memo":""},"blockNum":"239021"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1yq2jxen9v4mv3mnn5v584p4jnmuuut7qzd8xuf","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"xR6f73miDfK4wFbBM9wxfRjsz/l6NjLnBHAxCZOPi+pWCT1Sho2Ad827iTXjcLG6SIDrO64g3cqRfXUAZ6OxCg=="}],"memo":""},"blockNum":"239023"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1y9gtwmgfm0m94a0cveaky9cfazqy4ttgtl8ety","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"9ud3m8Ua+DP6xCL/Rb/LKvx7FYn6t/NEh0RhKTvpI/5Nx57DxWnwxz58lRP0vvnZoeP2V+mEoVk5Mq1KBZUu5g=="}],"memo":""},"blockNum":"239025"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g144su6h5je7unjxe48dryc4qwjkfn25g07saz90","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"terp2N/RqgENSWI00R1iKL+1vfm1mQ960PFcA70YTmZCReq28c5PjJzmdD8my1Qqf8evo/JQLub9ognizzDxUw=="}],"memo":""},"blockNum":"239027"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1kww0zp4tzz6x82ga766crx4h9nqj7fecu2jpup","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"KeuoGKV8cA8hkNKir/XW8FQ6EIHGh5LA2q6mzYR3ynUe/TcZe2R/Z6Zr52472vAWk7w1kKU/nEOEXv1TIb2J/w=="}],"memo":""},"blockNum":"239029"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g10yj9ltxmaj9fe0cuxpf3n4swd4fder2g2sd3ag","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"0m7AHu3jy+jl55+0aH/Jwra3JR8gqnWLTVevZPMDMaASVrfjxG54F6MLUWBiv9V9mPlW+0ebxI249cUR2q6z4g=="}],"memo":""},"blockNum":"239031"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1r9vqudhpm2wm44aqukuu5lpwen4mudwv6aqurh","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"UDoVi45/L9J1eyHGAkn/0C+PmpUT2vzScfYX5784DcBCYrfbsYujUzyNJU5SNuVeVs0Y7M73eqq+6fbiLnLkvQ=="}],"memo":""},"blockNum":"239033"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1ek7wvy4mwshm4gmmyn38z9dmye0p7qtx0hzmu8","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"s4JeoVlosWfdTfYS/E/rblRf+Aswyjt+JQY1jnh4uHBMeSZNr1NPj3vqeSA90SpAv13APtZEXw8xer6dMb6jFA=="}],"memo":""},"blockNum":"239035"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1gqc6em5me3njuft8s2726a2ycq92lt9k852q8y","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"NOZ+lH3QrpBWj8z6D3U5utYSljJJktDu3BqsiQmyeFZZCbYyHMcD9tNethHpR2uNit06JA1ToyTBtGOL8vUP4Q=="}],"memo":""},"blockNum":"239038"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g10x0gkt674t8dmntge4cw4ufcgmex4c8qpgz5x0","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"LQJaEqfizZhe3sUTWd48LHwukTpsDuKFWUMiWk39nYd9dZJdjpC3RBVibsr4Un7X1vB/d4jw59bdVWU4g51quA=="}],"memo":""},"blockNum":"239040"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1wz0ca3geltjzf2vt5tgdz6xprel3e5k930x0wy","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"/wSJl/oiYWfyEZCwC4jWx7aWbOFgw0KEChswQVudkdRJs0FX2A6YC2u5UXrsrlsr6WvfHqs0nYbroZoaiRNcpg=="}],"memo":""},"blockNum":"239042"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1r8lcsmf0ms4laa4hgx8fazvc48lzxadr4p8ghq","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"FwIVPIj7wJMIBmlSlccBALh+gQK4AEZvf7GiPJg1UfVYdxW7Q5H6v13riTg5EWk62zRQzmnTBlP0DyW76GJtJw=="}],"memo":""},"blockNum":"239044"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1kngnlef2q89y9gs4vew0mats5ph6n70ckxe0f3","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"9i15mV3nReJmWkvLZ1ceZv+MjX9KEPeXH1rDwyiKnew5+wUnb0/u9KHEduZu/4czhVyqn6WdcXnUQnJULc/XsQ=="}],"memo":""},"blockNum":"239046"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1c8xsypg7nkw2fgnz9nks99dkm8da4qt9zxusw9","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"0hi0RZ+qGq2GaFSHIor7P27fIQanJse9PUnJYZDgSLIGzW/mx4z8FXhptBCBR6+PWmZ3eKS5P3iZZRf55t3isg=="}],"memo":""},"blockNum":"239048"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1drtxqex8hcmeefkzxj3yglg066culm2nau6zvn","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"n5YRgwXWkC6t1bQgR+n2GjW2tqSDXPJ6awpmvlUBbK04BD0Yaf9qOl4mVghOa5jJeecM1+m33KAGbXOT0Waj8A=="}],"memo":""},"blockNum":"239050"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g16q6tze0u69035k83ckdzclpltx49hw4fftpqmc","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"mkmfZr9sUR6c51gEO5gTU1CcJuq07+mSUSyPXkeLp+V6SdXdMW9SS6qdUwf2O+WKLinrV4LC5npw4dtRVQX1pA=="}],"memo":""},"blockNum":"239052"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1m6hym8asur6x9f86cem9cck8wu4v2t3syz33nu","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"jGHLWkWtDWUaBd0y++Aq58BOXo+6IiEMzOsBR898vi0dS0E0l6fnaUG6gq6jglmA1zhCAEO2z+8et8bwHr1Bhg=="}],"memo":""},"blockNum":"239054"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g104tcmhtjk9c2n743n8wp46uu5yd5ana9uqws4c","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"/Cqm6ejHIg7eZTjskclmHLRA1QJ6FlEH3U06U5fIn4Bv6wZ8qY+yV01VDNUyt0tQqiCeRenLIND5mpRnWKV9Wg=="}],"memo":""},"blockNum":"239056"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1kquca85xw7fkruv886svt3ze7jdnxxtp7m5f4w","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"vvdAe4UDET076QlRL1gbaGW3u4naLQIhgye9L7CH++NNa1o1XTel3eOFP8PfmybR1JzhMBPQ9SbqoRFsvGv1DA=="}],"memo":""},"blockNum":"239058"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1mtxzd0xxjd5rwww0zaldkwfqlynmye2c8fe0ft","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"H9pdvjR/dkt50VTEeimJTwybPRPVZf4Jaf6XXn039Ep16ykGuGY9AhGInPqmTe/Zza1GTbN6ObyzJzDtkt+NPA=="}],"memo":""},"blockNum":"239060"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1zk607whed7a0y0vcw0s8r4pepylx9tyffrve65","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"cFVLb2cUkrlrfFDuahdVWOiFoq+BIdRynnvtJMgg/agwRA7T4NXYwBKgtyj6NUWMYbIGWY1CQ7T5evWIiEEMnA=="}],"memo":""},"blockNum":"239062"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1sj564za2zfcvxdttdyxrywvknnukg0jjt48l8j","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"KfNAUYWoXzE2HQIJS0hZLCb3uWWr7Tznv0VW0zxHCSw26jM0AA2GY5ixLMEWgWLLr4rEwAIb909b/pGdInUoyQ=="}],"memo":""},"blockNum":"239064"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1w0klnyh9awzum69hapvekh6xrnachz29p5hqkd","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"1muzA4khdCHVMJpJzoRetEnBsolM1Jxx3n6fEQ/sEyJiNc+j+H56Ys3aK0QUxDvDcBcnfLbmbj5RtQFJ4Ajm5g=="}],"memo":""},"blockNum":"239066"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g138ddg8an3jvv44ddr53zcglez36twgghcha37v","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"ZNioiXbTvb1HIUDIFtz4gW8ovR6CTpQdN/mpdSaR3Agi6ZlSy6H1HAPZnuWzXevjKl5k3MEsgSEPEchyx/WPfg=="}],"memo":""},"blockNum":"239068"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1qmy4qjr2qc3sgj8093vrht5u4qer8c93hupl8d","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"hNwbi9A3Tqiz3idIlZvHNv5Qbo+QZuu6pOXDeo57WAAJ3Y57+tFmNic4nIgg19b91zoDCkWpjD9yUY6a3hXuSg=="}],"memo":""},"blockNum":"239070"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1cs3hcqy7svp7h3cwvgljn3t45r54yqn0j20nwx","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"rukvUzM0H76MUJbg4au/b/GcLJoomm4TvpdaP8VilNEWCzel5iCo45L7QnJfg0Qo1u/XoXGzhJeGD14wwkeQkQ=="}],"memo":""},"blockNum":"239072"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g14x87jh0a6f8d32p2vu5y50hc9nz3vvwpgslf5p","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"ey8floV4G9JvAC0vGtNSlmD38D6szEuRTZfcjobR0HMO+HIW51SUQc9oUt/W/Atj14KQGRiDsxeqY8K3HS/CKA=="}],"memo":""},"blockNum":"239074"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1z7v4qujddyf4mzyxk3el08v7e93qur8gg3d9ke","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"JWMS8UJX+iSU7sueXR9HYLL+ZfWLGed/u5u1PQBKy9Q+8tzgvHl1M3k1M/ckex1TH35Ee/7UFnnjtFispGfSbg=="}],"memo":""},"blockNum":"239076"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1xxsc6ex4cu8l48lv6h5eyqjn3la622mg90p9zq","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"DVpAyJAmx80onte7EUqXT5oDfru53MiHjp/vJfKmu992P2VzBiValcf1oFH5Xn1byZTYST53RJpuoMKmLlu47g=="}],"memo":""},"blockNum":"239078"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1xdys76pzr9y90h2rknuyw6mkrnqxsxrcd7mhjm","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"Ko6yNm+bEYd6QFSRXNBTAh8p25cY6jPARgGrzkTmeVt1UW2n0L9R7/SBEZ+bNs+uJOXXi50p9VJXpyDBI88o0A=="}],"memo":""},"blockNum":"239080"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1cn33eh2qr96h2va7y8af03wj08gnaq03cv96ju","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"OZkYbdqqyQZykZZPle5qZWlYXMeRxrb79HFm3wZv6SlnY39Aorrccs2+7H9esLTeHNRM/1a2sSJNj11lBW+enw=="}],"memo":""},"blockNum":"239082"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g14s3hpve7flrvyp5quja76fpxa5ywxpzxphestj","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"OM4zE4T0yZLwF9keqb+fTPpWSIXDbEbkUld6ZHQZ8OE3s6jHUU8qRIjvy8uhLxo9pAVlYCLmpob33fdpbwxlrA=="}],"memo":""},"blockNum":"239084"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1yydpygc74k5w69f0shrdrtdfeyugsrzfwftzvh","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"V6vvUILIIKmyPqcCHP05KIYJQseBREyJ17sOZZ0eh6A1NPFneRdmwVrdle9PXsDW8Z6VljgyYVx7yujRS6EkEA=="}],"memo":""},"blockNum":"239086"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1h47xlgqjtchvmlm2c0uc7d6auneyljn2zyuukm","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"3y7UO4tbYML9hTcahTsrDpF8JfPrUflOioh27vsPa6pdOCIZsJMFGxnnOHQevQHfPjS9u2kq1tiV38l5jxlN5w=="}],"memo":""},"blockNum":"239088"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"OK/jUDdf3NbShVZsvppnrC9+t1Vh+aoAY9K24Q4x64tu+rV7HJ79JTNNUFlSHP8+iJxDPp9/eTbtAxoexN9JiA=="}],"memo":""},"blockNum":"239090"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"hello","Path":"gno.land/p/zingwa/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"WZpu92aRgf5gurBbw/KNFMfzTRBdhKe7UUbQ5NMLos4HzFutSecA3oekVDV4SMrjdNwDVn9eZ9CsfZ22CjHU4g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239092"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1d9xg479paxkhzn6ercqzddcp352x0ffara3fqn","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"Z06IuRaGwBaKE9IptodOVQtMsfa6tu3K5+tTO2oNPYYNBOWKah+eK4gztIg1DZ99cshOIoO4noPrNveiiHQCHw=="}],"memo":""},"blockNum":"239094"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g14m6n0v2r7z6htfl6zk47njxkfjznyp3pgaz3tw","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"iqxuKAjPaYzKpuF6QTHILoUuMgva6Iw8HT/szMNEfscppoRuH/x0tdUciimh/sedj6QdOs+ZPm+HHbLgtuSorQ=="}],"memo":""},"blockNum":"239096"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"xFIq5he/aMakzr6H5cuvj/YHA1HZuXqqM0njtYFU8fxyTq3uim39+yQHGnN/ZcqC5LXOsbWLXk4sAbP2szZDag=="}],"memo":""},"blockNum":"239098"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"chro","Path":"gno.land/p/zingwa/chro","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"6uuKKlWn/5MR+AWOABdYx9/YO82HmuQLr7vhUCwUZvBKOebiA5B5wGTOQqAllnmURhfpYoKm23lsx9D8QKm4mQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239100"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"cho","Path":"gno.land/p/zingwa/cho","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"/z15CXzWFVHFmx1n31Mo24g3pTYSBxJl7+nE8M/w3LBEzdE6F3aLX/Eg9unW8tUMUvce6+fQ4xzhBfbNmL6Yhw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239103"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"PuIxhtwBGkPSMKf1fNb/Ky7T6YqwzFM5rmrZqWhFZMgG78gYdM71kx7IC61vmq/w1gLBSog1OCSUTFfxhXE7fA=="}],"memo":""},"blockNum":"239112"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac","package":{"Name":"yfg","Path":"gno.land/r/demo/yfg","Files":[{"Name":"package.gno","Body":"package yfg\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tyfg *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tyfg = grc20.NewAdminToken(\"yfgToken\", \"yfg\", 6)\n\tyfg.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn yfg.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := yfg.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := yfg.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyfg.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyfg.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn yfg.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := yfg.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Au9yd+CaMaLWMBA1qsj68l0wx5bPoYZOazEpC52wvQgA"},"signature":"nwTuF2bXHB/i6WdkUcbfDQvP8WAVwFXlVL8P7FZ2WHUDX1nv1mStbwbQtXtaa12dcHM+vcNx9ivXmXNPwh7bIg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239114"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"bhN3xBO1upP4r1HA6iLJd7QPITDnXVPgDr0QnKptzThVax6r88lmn0ZKPTOIS4uGL8cuScLmp0/MvzFmFyAbVg=="}],"memo":""},"blockNum":"239116"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac","package":{"Name":"ygf","Path":"gno.land/r/demo/ygf","Files":[{"Name":"package.gno","Body":"package yfg\n\nimport (\n\t\"std\"\n\t\"strings\"\npackage ygf\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tygf *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tygf = grc20.NewAdminToken(\"ygfToken\", \"ygf\", 6)\n\tygf.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ygf.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ygf.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ygf.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ygf.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ygf.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tyfg *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tyfg = grc20.NewAdminToken(\"yfgToken\", \"yfg\", 6)\n\tyfg.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn yfg.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := yfg.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := yfg.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyfg.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyfg.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn yfg.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := yfg.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Au9yd+CaMaLWMBA1qsj68l0wx5bPoYZOazEpC52wvQgA"},"signature":"tfdjVj+ImwnYAluEE/zRlIUYRSNfxhA2pnSoErq7QCNdaGRpCd+n6qL2kbNOPlWf7kT+ROJ2mESNknIGn6bhqQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239118"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac","package":{"Name":"ygf","Path":"gno.land/r/demo/ygf","Files":[{"Name":"package.gno","Body":"package yfg\n\nimport (\n\t\"std\"\n\t\"strings\"package ygf\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tygf *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tygf = grc20.NewAdminToken(\"ygfToken\", \"ygf\", 6)\n\tygf.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ygf.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ygf.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ygf.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ygf.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ygf.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n\npackage ygf\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tygf *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tygf = grc20.NewAdminToken(\"ygfToken\", \"ygf\", 6)\n\tygf.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ygf.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ygf.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ygf.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ygf.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ygf.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tyfg *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tyfg = grc20.NewAdminToken(\"yfgToken\", \"yfg\", 6)\n\tyfg.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn yfg.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := yfg.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := yfg.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyfg.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyfg.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyfg.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn yfg.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := yfg.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Au9yd+CaMaLWMBA1qsj68l0wx5bPoYZOazEpC52wvQgA"},"signature":"dmtR+rx+lD06gvJc7hJNMWEFsoUOhragK9NeBtKFb14vft0P+FLVcdjJYRUi0d5vqtk0X/kTXgSnHkXlM/y8Yw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239120"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac","package":{"Name":"ygf","Path":"gno.land/r/demo/ygf","Files":[{"Name":"package.gno","Body":"package ygf\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tygf *grc20.AdminToken\n\tadmin std.Address = \"g1s6vphvapkpg5mfnw23t99aawr9y4gxwnhssmac\"\n)\n\nfunc init() {\n\tygf = grc20.NewAdminToken(\"ygfToken\", \"ygf\", 6)\n\tygf.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ygf.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ygf.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ygf.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tygf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tygf.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ygf.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ygf.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Au9yd+CaMaLWMBA1qsj68l0wx5bPoYZOazEpC52wvQgA"},"signature":"xKRfWcsSW+3KbirEoEqjRar3IqGVoujK+YvPwEVFcpZQ/ZTvfBS7SECOqNS0M7JootQSPsX9GL3oUMf7MSpuQg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239123"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl","package":{"Name":"ydf","Path":"gno.land/r/demo/ydf","Files":[{"Name":"GRC20.gno","Body":"package ydf\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tydf *grc20.AdminToken\r\n\tadmin std.Address = \"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl\"\r\n)\r\n\r\nfunc init() {\r\n\tydf = grc20.NewAdminToken(\"ydfToken\", \"ydf\", 6)\r\n\tydf.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn ydf.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := ydf.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := ydf.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tydf.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tydf.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tydf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tydf.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tydf.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn ydf.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := ydf.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjxHPAnsSOgYJ2iB67Uijx+186yr2hFS992uq6K+2jkr"},"signature":"ICmAPljYwyv3KetRMsbBlgNRx3GyPjtVOPXdovUEQ3cGzgzfKdkyR1NprrN6TXnZ06hHFo2Ye1TRq/wFg8ewxQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239126"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl","package":{"Name":"ydf","Path":"gno.land/r/demo/ydf","Files":[{"Name":"GRC20.gno","Body":"package ydf\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tydf *grc20.AdminToken\r\n\tadmin std.Address = \"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl\"\r\n)\r\n\r\nfunc init() {\r\n\tydf = grc20.NewAdminToken(\"ydfToken\", \"ydf\", 6)\r\n\tydf.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn ydf.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := ydf.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := ydf.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tydf.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tydf.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tydf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tydf.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tydf.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn ydf.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := ydf.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjxHPAnsSOgYJ2iB67Uijx+186yr2hFS992uq6K+2jkr"},"signature":"4V2Ej0rBvBY5oZMcc3BWrcN8DS0IzAH7YYl8+zoTO7wzeQD8iTKL3R/5iZ2zhNw3aIxZVAuh4k7epTkqel8x+A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239129"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl","package":{"Name":"yfd","Path":"gno.land/r/demo/yfd","Files":[{"Name":"GRC20.gno","Body":"package yfd\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tyfd *grc20.AdminToken\r\n\tadmin std.Address = \"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl\"\r\n)\r\n\r\nfunc init() {\r\n\tyfd = grc20.NewAdminToken(\"yfdToken\", \"yfd\", 6)\r\n\tyfd.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn yfd.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := yfd.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := yfd.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tyfd.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tyfd.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tyfd.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tyfd.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tyfd.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn yfd.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := yfd.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjxHPAnsSOgYJ2iB67Uijx+186yr2hFS992uq6K+2jkr"},"signature":"UpBwbBsKkZ0m8xvduA+TY9xQXkUzvMnhqiPE9vA5reZG7MNH6eiocDHnjlG4SBxhxoi6gacsGIM3/x+e4ExuZA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239131"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl","package":{"Name":"ygh","Path":"gno.land/r/demo/ygh","Files":[{"Name":"GRC20.gno","Body":"package ygh\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tygh *grc20.AdminToken\r\n\tadmin std.Address = \"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl\"\r\n)\r\n\r\nfunc init() {\r\n\tygh = grc20.NewAdminToken(\"yghToken\", \"ygh\", 6)\r\n\tygh.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn ygh.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := ygh.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := ygh.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tygh.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tygh.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tygh.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tygh.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tygh.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn ygh.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := ygh.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjxHPAnsSOgYJ2iB67Uijx+186yr2hFS992uq6K+2jkr"},"signature":"4SZoU2f7rtMTt4T1kUVv4eGbn9TXSrlOyHGywYewB3dvA2UWAkILYDJZbMVQpEO5TzT+AT+P3CWgGNDsDdloAA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239133"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl","package":{"Name":"yhg","Path":"gno.land/r/demo/yhg","Files":[{"Name":"GRC20.gno","Body":"package yhg\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tyhg *grc20.AdminToken\r\n\tadmin std.Address = \"g12yq4u203lquwfy464duvhywgsjysdy7cp7l7zl\"\r\n)\r\n\r\nfunc init() {\r\n\tyhg = grc20.NewAdminToken(\"yhgToken\", \"yhg\", 6)\r\n\tyhg.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn yhg.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := yhg.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := yhg.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tyhg.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tyhg.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tyhg.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tyhg.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tyhg.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn yhg.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := yhg.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjxHPAnsSOgYJ2iB67Uijx+186yr2hFS992uq6K+2jkr"},"signature":"e8/VJRliAZs1czMx8oHy7WuIZlJkxkVDXCVTQ2tw0BgpusImPcNf0bGfKIvWpl0RwoqryS4aS2tYdAV6sokaUA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239135"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1yw3ulhfzw0tzgvl2uqvs0ss5q793puzx0flere","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"xGNloeLuF4y3msPXPYlVhamMAyQhXjXzi2vmWPfEIIlWuoD0aRC6I+M9LwwHI2xK6GgNNbmrYe98IX+WCzB7/Q=="}],"memo":""},"blockNum":"239138"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1yw3ulhfzw0tzgvl2uqvs0ss5q793puzx0flere","package":{"Name":"yhj","Path":"gno.land/r/demo/yhj","Files":[{"Name":"package.gno","Body":"package yhj\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tyhj *grc20.AdminToken\n\tadmin std.Address = \"g1yw3ulhfzw0tzgvl2uqvs0ss5q793puzx0flere\"\n)\n\nfunc init() {\n\tyhj = grc20.NewAdminToken(\"yhjToken\", \"yhj\", 6)\n\tyhj.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn yhj.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := yhj.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := yhj.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyhj.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyhj.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyhj.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyhj.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyhj.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn yhj.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := yhj.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A0c3tyjZN6o23AwmdDNsUL33PgwD3kTuUUfWLsYsj0ww"},"signature":"ii0NG5uGdhE+w/ce9YLiz0iWrMAH5DNaLUrNtNUpWR42NAZODaTnnTEnwPWwfsoiJBGMKqnIta0C+2ifA544Cg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239140"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1yw3ulhfzw0tzgvl2uqvs0ss5q793puzx0flere","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"CLtvAMlu/Txv29jI0G+DCMKXaMQNPT4l284lIxQbgWork5pCbNowdmQ4SODED8AR+49VSb2J98Ocb24z0zivWA=="}],"memo":""},"blockNum":"239142"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1yw3ulhfzw0tzgvl2uqvs0ss5q793puzx0flere","package":{"Name":"yjh","Path":"gno.land/r/demo/yjh","Files":[{"Name":"package.gno","Body":"package yjh\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tyjh *grc20.AdminToken\n\tadmin std.Address = \"g1yw3ulhfzw0tzgvl2uqvs0ss5q793puzx0flere\"\n)\n\nfunc init() {\n\tyjh = grc20.NewAdminToken(\"yjhToken\", \"yjh\", 6)\n\tyjh.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn yjh.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := yjh.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := yjh.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyjh.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyjh.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyjh.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyjh.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyjh.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn yjh.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := yjh.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A0c3tyjZN6o23AwmdDNsUL33PgwD3kTuUUfWLsYsj0ww"},"signature":"O4PHc8ptsqm6CslG3/PBNaydh8G0AeuFW/2+DSqpdeErtioZ+baEjJxTyjvCx66tKNa/FpJXq+JsRKYHdE5Q7w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239144"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1m8sqmar9ruqgfcf6vxea292mj5d6wvpl52kyph","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"4df9vuUoWgjIEaqc6xgspZDgH/TA84fDsElxxENM+30+UX2O2RJVCyhBT3Ke3wF78+9wucxZl7O/vq2qphjhKw=="}],"memo":""},"blockNum":"239146"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1m8sqmar9ruqgfcf6vxea292mj5d6wvpl52kyph","package":{"Name":"yjk","Path":"gno.land/r/demo/yjk","Files":[{"Name":"package.gno","Body":"package yjk\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tyjk *grc20.AdminToken\n\tadmin std.Address = \"g1m8sqmar9ruqgfcf6vxea292mj5d6wvpl52kyph\"\n)\n\nfunc init() {\n\tyjk = grc20.NewAdminToken(\"yjkToken\", \"yjk\", 6)\n\tyjk.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn yjk.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := yjk.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := yjk.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyjk.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyjk.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tyjk.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyjk.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tyjk.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn yjk.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := yjk.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Azt86Qw1/SfUCfcVv+nhe0ZZLuajncG1D0zcVRW03udj"},"signature":"i3L8NAJxRqGDbRQHwKeMHlnDDAG7xlaO5G6SJ2gleLsKZJttTrl4/lwv/ksorGPJj2xw64WpvSrcetc6quzF5Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239148"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1m8sqmar9ruqgfcf6vxea292mj5d6wvpl52kyph","package":{"Name":"ykj","Path":"gno.land/r/demo/ykj","Files":[{"Name":"package.gno","Body":"package ykj\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tykj *grc20.AdminToken\n\tadmin std.Address = \"g1m8sqmar9ruqgfcf6vxea292mj5d6wvpl52kyph\"\n)\n\nfunc init() {\n\tykj = grc20.NewAdminToken(\"ykjToken\", \"ykj\", 6)\n\tykj.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ykj.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ykj.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ykj.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tykj.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tykj.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tykj.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tykj.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tykj.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ykj.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ykj.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Azt86Qw1/SfUCfcVv+nhe0ZZLuajncG1D0zcVRW03udj"},"signature":"ZunMMi60C0uBgOi5xwMxPl98bZKslb0eLPV6oSYnpiUswjXSssb1Q0k36eJMoYO52oJSGkKjkYfBLSsuzc91pA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239150"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1c58lhl5yxkkl2g0xc42thrtpf0xcr0aqd7r6rd","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"veroAKmPAdaFN7nToFanjxdyi0WOMzvxnT9p6eJz7kYu2MqECTm2Sf+9UDJHIv1TKIZhEeUahE4d5/cnAO1vdg=="}],"memo":""},"blockNum":"239152"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1c58lhl5yxkkl2g0xc42thrtpf0xcr0aqd7r6rd","package":{"Name":"ykl","Path":"gno.land/r/demo/ykl","Files":[{"Name":"package.gno","Body":"package ykl\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tykl *grc20.AdminToken\n\tadmin std.Address = \"g1c58lhl5yxkkl2g0xc42thrtpf0xcr0aqd7r6rd\"\n)\n\nfunc init() {\n\tykl = grc20.NewAdminToken(\"yklToken\", \"ykl\", 6)\n\tykl.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ykl.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ykl.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ykl.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tykl.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tykl.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tykl.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tykl.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tykl.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ykl.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ykl.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A1dsTSO2QOEocB5HtYxjiQRjvPeqAZvULwBvj12Ip32z"},"signature":"uwVO+ltgxl1UaxJJ+elxTG16A0Lgt3ZddOGqsFYMCfNtLqX6r9cChneafk1WT23Zl8fXC61jvNN4Cmx966sb4w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239154"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1c58lhl5yxkkl2g0xc42thrtpf0xcr0aqd7r6rd","package":{"Name":"ylk","Path":"gno.land/r/demo/ylk","Files":[{"Name":"package.gno","Body":"package ylk\n\nimport (\n\t\"std\"\n\t\"strings\"\n\n\t\"gno.land/p/demo/grc/grc20\"\n\t\"gno.land/p/demo/ufmt\"\n\t\"gno.land/r/demo/users\"\n)\n\nvar (\n\tylk *grc20.AdminToken\n\tadmin std.Address = \"g1c58lhl5yxkkl2g0xc42thrtpf0xcr0aqd7r6rd\"\n)\n\nfunc init() {\n\tylk = grc20.NewAdminToken(\"ylkToken\", \"ylk\", 6)\n\tylk.Mint(admin, 1000000000) // @administrator\n}\n\n// method proxies as public functions.\n//\n\n// getters.\n\nfunc TotalSupply() uint64 {\n\treturn ylk.TotalSupply()\n}\n\nfunc BalanceOf(owner users.AddressOrName) uint64 {\n\tbalance, err := ylk.BalanceOf(owner.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn balance\n}\n\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\n\tallowance, err := ylk.Allowance(owner.Resolve(), spender.Resolve())\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treturn allowance\n}\n\n// setters.\n\nfunc Transfer(to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tylk.Transfer(caller, to.Resolve(), amount)\n}\n\nfunc Approve(spender users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tylk.Approve(caller, spender.Resolve(), amount)\n}\n\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tylk.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\n}\n\n// administration.\n\nfunc Mint(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tylk.Mint(address.Resolve(), amount)\n}\n\nfunc Burn(address users.AddressOrName, amount uint64) {\n\tcaller := std.GetOrigCaller()\n\tassertIsAdmin(caller)\n\tylk.Burn(address.Resolve(), amount)\n}\n\n// render.\n//\n\nfunc Render(path string) string {\n\tparts := strings.Split(path, \"/\")\n\tc := len(parts)\n\n\tswitch {\n\tcase path == \"\":\n\t\treturn ylk.RenderHome()\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\n\t\towner := users.AddressOrName(parts[1])\n\t\tbalance, _ := ylk.BalanceOf(owner.Resolve())\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\n\tdefault:\n\t\treturn \"404\\n\"\n\t}\n}\n\nfunc assertIsAdmin(address std.Address) {\n\tif address != admin {\n\t\tpanic(\"restricted access\")\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A1dsTSO2QOEocB5HtYxjiQRjvPeqAZvULwBvj12Ip32z"},"signature":"2uduYpTrZxYIrYnJRsjZTDvYqKsmTkz83yXyAlqCP+Y4W+Seki3A1kgHc4FZUf5VAcfGtynZvHE3mWPB5VBMEA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239156"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","1000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+FhNtsXHjLfSJk1lB8FbiL4mGPjc50Kt81J7EKDnJ2y"},"signature":"jbIGEu7zzd/vMIYJXD65MYHF8JqmUWBHzRPFGAdQR69PqtKGAUfpoAewih8EcyFiWgq8TzvmA8VZr3+2mAkB6A=="}],"memo":""},"blockNum":"239238"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+FhNtsXHjLfSJk1lB8FbiL4mGPjc50Kt81J7EKDnJ2y"},"signature":"rD/9BjnNelzKU14w2ht/ynK6+KsWHmHbO1Kt0FHuHgJUqHyvbW5mng8uuDUcv/3hCvEVuDsTCge44O2KE9GGLA=="}],"memo":""},"blockNum":"239240"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","1111"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+FhNtsXHjLfSJk1lB8FbiL4mGPjc50Kt81J7EKDnJ2y"},"signature":"Gp9qq0QHY43ws9kqUiii4H0wctuwUb8s1bq3plKJicgFtSoowmhYPgU6AwJGdemco9Nm2kBiKQ2otJTLbXJdGw=="}],"memo":""},"blockNum":"239242"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","to_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+FhNtsXHjLfSJk1lB8FbiL4mGPjc50Kt81J7EKDnJ2y"},"signature":"SwXQ475B7X/kIi8LlfyXDtQ5osSeQEbmjd7ZBX1rOGsSkzcgO6q1IVrd5rC4J4Q99GeD5FdPOnPQSUJ7LumM5Q=="}],"memo":""},"blockNum":"239244"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","to_address":"g1s2mzhrahypaqspzwy6am93pvht3uw5snh0gtph","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgRVZeBhCNiXMgeopMseJTFgTUwWKdw1TibC+g1lyO3E"},"signature":"MhEBaf8zEms4VfUq/PCt6tcr7OFhMobB44eLve2Cjzcw2xNulCq3Gx5KooR/2KQra7GnHLuN4vpbVGm2o8lreQ=="}],"memo":""},"blockNum":"239249"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","to_address":"g1xv0znpwx52y55j8ghmnpp8snjar946gkat473k","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgRVZeBhCNiXMgeopMseJTFgTUwWKdw1TibC+g1lyO3E"},"signature":"IMdVneawOo1eaPFvj3NxRz8/lXdjBAmV1jXsNZekLBYt5MVArNX2fswgfCeswoZaEPAb+SPDBnEWuxJduQ/nNA=="}],"memo":""},"blockNum":"239251"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"VeVnVUyhc7+Zft5KwaBAYvxoWLtKUn+lS2vPsQj7KOMkvQrWNcaiA8kYU+fNslwVkF2/wuWRznoFXRNzU5kPag=="}],"memo":""},"blockNum":"239278"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","package":{"Name":"demo","Path":"gno.land/p/test1/demo","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ApxwD0FbwfUlhs3Ml0cVQ/y6IM3fdY6+bDG9JIExC+zx"},"signature":"/wTP+6uiEt5Te9KfdSC1lNa7L3CWH44bzdyTaaKCHZ8yi5ofwM4YME9pSwhYsZNdj+fIJW9lPIKvf5hlzgbosA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239280"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"Zypi+6ueL0jEf7C85dIrsUNJqcm3G3ZUTxFOmIpFNTAoAa+9q2Mf3aHWS66tUUmBlBWQYaUJDRY9+0txJoQ2BQ=="}],"memo":""},"blockNum":"239283"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","package":{"Name":"demo","Path":"gno.land/p/test1/demo","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ApxwD0FbwfUlhs3Ml0cVQ/y6IM3fdY6+bDG9JIExC+zx"},"signature":"id1MBMBbbqMct21g0x73SxlKxFEBg6MEjie5Sc3+qsVYZ/Lg5FoWvWuS6s2zi2g3r/rlyRvjWFdubtxBiGYu1Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239285"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","package":{"Name":"hello","Path":"gno.land/p/hello/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ApxwD0FbwfUlhs3Ml0cVQ/y6IM3fdY6+bDG9JIExC+zx"},"signature":"+obx46+QZL3jUbaCFKsaYr0KF7LnF5L6tTyGmjEpFJNZ5C5VF7EiFvqcqk3jlOyacVGErqxlNGYRpz5e1ZPwDQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239287"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","package":{"Name":"hello","Path":"gno.land/r/demo/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ApxwD0FbwfUlhs3Ml0cVQ/y6IM3fdY6+bDG9JIExC+zx"},"signature":"s2f1PoiYy8a4EdgaRXlEnDYYI8jDHpsCmhdSLEWEQSEM1izgO32cfrhwo2rcWYJhonG6BETOyXGZf6IraYoX3A=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239293"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1gy76zgcx98rwg4shsm7ket8r3qny9gzdpyjhwm","package":{"Name":"hello","Path":"gno.land/p/first_test/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ApxwD0FbwfUlhs3Ml0cVQ/y6IM3fdY6+bDG9JIExC+zx"},"signature":"4tkqnEXxh5EAIX6YFU+OGnjVd+CSbg80RgQDEBzhbGA9OvKr1B1ZowDuh6mE5XPNCieRt7NZ8oEcxyGQ6rY3+w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239295"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1w5nhjjdcaacj5v5twke02e98l5w0s0lnhk0rry","package":{"Name":"hello","Path":"gno.land/r/kush/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A8AO99+Ylz+j3yyLMJbKQisQfS3W1KTa3eXjWUub6gj5"},"signature":"kCelE6qkwEb2BKE0R+Ko4LaaPhw/4A+zKao2K4jDH7Z7RGMyHvI8Wxr/MUAmGkNww+y84YJbsgdtpug9nu0Swg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239348"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1y4vy7ut4rnm3en5lv6hfnhjfeqh2m2tcuyaa83","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"/v3eibz8deCpoe3wkyi1Ct+MJETEmQgxmXJ7EUsnE6R3DiCLlNx4eZCrlrFF+ONMFDasKxakP6zF9ZxqSiTG9A=="}],"memo":""},"blockNum":"239427"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4vy7ut4rnm3en5lv6hfnhjfeqh2m2tcuyaa83","package":{"Name":"hello","Path":"gno.land/r/hello_test/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AkqbRiXyi9pTJ7mv6fqgoKntgIVSHBDMkEWyyjP1MeqR"},"signature":"IJgkro9QqBP0hrT3jJvM3cNK6mRk+fqeTARYZ0G1YDQcGcPMASDXTsEqu/AcpPSKcQSFUkST5DeYJavkvEs5iA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239429"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1v664qx78zhv2edtx6ypdylfpafrqjz8g2rlaea","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"H/yAHkk73/0+VeQk7BYFvp/B9rY9hDGzdpQ7GIIThDByjdjv4QMOfd+kujXFGaDJ2CUAIGgYCvedIbpVqAdazg=="}],"memo":""},"blockNum":"239567"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g18lj5pgadp3y98wawweavle2r0677w9z25zmnm0","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"EzFhJNk6w71gz1Jnf2Z+CVBsjOK8ka6aRYp2+MYWqh8GFSbrowbffLYLTSn/OQnaDjS+YcIh6dPK+8EsRfL4cA=="}],"memo":""},"blockNum":"239573"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"0pCrYYGnOv/XSPmreSzHWpGd8Xt/KSuZuwQv99dHvpQisydREQkKzOCtAWsGzTd2g74gepJdk3vV1brYjzEHVA=="}],"memo":""},"blockNum":"239593"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","package":{"Name":"taoshi","Path":"gno.land/r/test1/taoshi","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"KlB4t1E+3oqRLi/R0sa6pjXOfqjDyCtQ4Ip2HEtY4ZdZgE15okbt2C09WwvsQ+7dqubAIYPBczG4bWxbVmB9qw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239595"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"xPafYHUfS06QQbODlH7232ZC2FDsbaaB53pqjGrZNs8dOjVsE6wYWZ4/zP5GspeWJ4riCIAiZgZNozEqFlgUIw=="}],"memo":""},"blockNum":"239597"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","package":{"Name":"taoshi","Path":"gno.land/r/test1/taoshi","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"b8cnLJIQEIvU1/SpIq8tN26PNZfoDtOPAhuPZHBN/38Lk+3aJ7s8Rut++bGsubb4C2ueyleyRhCttGqfctE24Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239599"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","package":{"Name":"taoshi","Path":"gno.land/r/test42/taoshi","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"ZJqyStmlKxz4W37Jl493ToVZ3I1OAPNN3pPh8B/JRUVRVkl45K6KFMQY7lWYQk+tomm+QLuP5D24mqkIa5T7eQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239605"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","package":{"Name":"greeting","Path":"gno.land/r/demo2/greeting","Files":[{"Name":"greeting.gno","Body":"package hello\r\n\r\nvar (\r\n\tgreeting string\r\n)\r\n\r\nfunc SetGreeting(msg string) {\r\n\tgreeting = msg\r\n}\r\n\r\nfunc GetGreeting() string {\r\n\treturn greeting\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"afl3qNvIx+soKU8laxBoh4WACelpGrCjbe+dtzDqF1NEwHF7CEeaApq7JUtW96TAYCCvIzC8ZVyqS5Lit0VswQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239611"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","package":{"Name":"test","Path":"gno.land/r/test1/test","Files":[{"Name":"greeting.gno","Body":"package hello\r\n\r\nvar (\r\n\tgreeting string\r\n)\r\n\r\nfunc SetGreeting(msg string) {\r\n\tgreeting = msg\r\n}\r\n\r\nfunc GetGreeting() string {\r\n\treturn greeting\r\n}\r\n"},{"Name":"test.gno","Body":"package hello\r\n\r\nvar (\r\n\tgreeting string\r\n)\r\n\r\nfunc SetGreeting(msg string) {\r\n\tgreeting = msg\r\n}\r\n\r\nfunc GetGreeting() string {\r\n\treturn greeting\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"QR0Hiu49zGT/sdvkMulVYk3x0rPoDiModj81T2LRS0dzR/vFJAqfmRlV21balsw5hSOOPBcXmz7WSo22zkRCjQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239614"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","package":{"Name":"greeting","Path":"gno.land/r/test1/greeting","Files":[{"Name":"greeting.gno","Body":"package greeting\r\n\r\nvar (\r\n\tgreeting string\r\n)\r\n\r\nfunc SetGreeting(msg string) {\r\n\tgreeting = msg\r\n}\r\n\r\nfunc GetGreeting() string {\r\n\treturn greeting\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"P0YOL/p2asMsyNDos4rjLnjMHogbGRiwDFSpun1x+kVYdmdecX06N0DRIIB66MOudgPWIzJqOX7B7nzU4JUXKw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239618"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g16tu7rumh7syw6dcn4k2ypa25674dk9uvrdpclt","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"cSrvHQgDoUs2kZ00HsnfjWksVTack9LlmFJWBC0fQG1Lvp+Se2sNyiNL8VKWTHFmGt7deCosV47R1AY9D6qaZw=="}],"memo":""},"blockNum":"239663"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"nv+tG7k5uxpBIUUX+ycj4IDJhgJ9XRms6k1+ypWVaLxZn3bkFzMwnThqNjfLP/0oJDw3K1IROxgeS4b7ZWldUA=="}],"memo":""},"blockNum":"239676"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"greeting","Path":"gno.land/p/demo2/greeting","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"z+kqzw1fWeX6rwPLfIWw4pXGrHyR/ya1N9ib2/FUAv0IihBnZVeTADce8UNqJKqNF1RqUpOaJB8i0XIDjYo7Ng=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239678"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"V3cM2SWNIX6MIrY3sPw689vf03Oc02k3SiVPle5V314Iv9rt/kTT2+pou6+NMXTjHy0uEEZ9DFOFjQlnz2SiQg=="}],"memo":""},"blockNum":"239680"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"hello","Path":"gno.land/p/demo2/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"iwW/+VuYZcrfpUVesbzJB115ebhBBthqf6wHSMTZPGNx0GOxNu1+OXj3llLRtca/yc5ZAn9tM4vCcxCiiRizcw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239682"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"hello","Path":"gno.land/p/demo2/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"7ZMOR65zq+t6pee9MoAhQ6SbFiVbYGdAOtKwSG7ztA4E1OgWbYEzNprK2XqkIhQ1CY7UBUrqytLiHr5Rl2qArw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239684"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"greeting","Path":"gno.land/p/demo2/greeting","Files":[{"Name":"package.gno","Body":"package greeting\n\nvar { \n greeting string \n}\n\nfunc SetGreeting(msg string) {\n greeting=msg \n}\n\nfunc GetGreeting() string {\n return greeting \n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"XU09VEsVzWKMADSgZxSyl5Ft1AIS/LSvB5MiXE+zklMqcZYtQCjw0fgVbvdYT1coLLC/Ccy0+riwkqNWRYNg/w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239688"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"greeting","Path":"gno.land/p/demo2/greeting","Files":[{"Name":"package.gno","Body":"package greeting\n\nvar { \n greeting string \n}\n\nfunc SetGreeting(msg string) {\n greeting = msg \n}\n\nfunc GetGreeting( ) string {\n return greeting \n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"IZ5uX9PO/Xrueniu8NJ0ipHckrfsHMOFFBSuxNigAAB+g5VkMM14DITKuKNh5ohslRcJS5yZd3mGjCdvpSQMaQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239691"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"greeting","Path":"gno.land/p/demo2/greeting","Files":[{"Name":"package.gno","Body":"package greeting\n\nvar { \n greeting string \n}\n\nfunc SetGreeting(msg string) {\n greeting = msg \n}\n\nfunc GetGreeting( ) string {\n return greeting \n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"6I4pzZGz+NVUVS8a2e5RmcNkg3RelmucLdaJx67xXP9BXjctme3hq4O8iz+vJvM4/OBViP4NqqSqZR8ySp2s+Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239693"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"greeting","Path":"gno.land/p/demo2/greeting","Files":[{"Name":"package.gno","Body":"package greeting\n\nvar {\n greeting string\n}\n\nfunc SetGreeting(msg string) {\n greeting = msg \n}\n\nfunc GetGreeting( ) string {\n return greeting\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"rSJO8J9jWH0ZnyowNZRT6ZQOKw2cKUlkbFnqz0t2lTBNDr79HCY8BR3hVywJtLyVR/sQ5ZIdA3GP8M/h85gpVg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239713"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"greeting","Path":"gno.land/p/demo2/greeting","Files":[{"Name":"package.gno","Body":"package greeting\n\nvar {\n greeting string\n}\n\nfunc SetGreeting(msg string) {\n greeting = msg \n}\n\nfunc GetGreeting( ) string {\n return greeting\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"Kclse8EKSbkucU6Qj/TPg5g/TbdhHmgRRbWDK9dGKUhAX0sqz3yp8RjlD6lKjyKjKB73atvh/RnWIVdumTjTnw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"239717"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","to_address":"g1tg7xdv2h3y093kkskd4gfchrjs3an0w9nnayh6","amount":"1000000ugnot"}],"fee":{"gas_wanted":"200000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"/LCPP8Iho4te5UQCNsbQ88gciTRzfRzKtzTInJsysw52fijSejkdHESS0LEgj7H7B6BWFofn18zvQpFNbIVtgg=="}],"memo":""},"blockNum":"239782"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","to_address":"g1tg7xdv2h3y093kkskd4gfchrjs3an0w9nnayh6","amount":"1000000ugnot"}],"fee":{"gas_wanted":"200000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"Lyw0dXf4k9NhddjRR5PEFaISu5MJ4KJ5029jNEcgpS92AIx1jSflzmrRidBeCdWBWut77sE1owRsQrJxWpS0Vw=="}],"memo":""},"blockNum":"239790"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","to_address":"g1tg7xdv2h3y093kkskd4gfchrjs3an0w9nnayh6","amount":"100000ugnot"}],"fee":{"gas_wanted":"200000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"O7CeauAvBZlDkCf079DkRMK72Gophuvt6HCoUqhWtohSzRaOW/FXrQIRhGc/rc51LZk7m75RD0HtoEaqdsXGSQ=="}],"memo":"CLI in GOLANG!"},"blockNum":"239794"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","to_address":"g1tg7xdv2h3y093kkskd4gfchrjs3an0w9nnayh6","amount":"1000000ugnot"}],"fee":{"gas_wanted":"200000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"CQTK2782hy/wod51NnV4Sm/MphWwtHyguFIX0GAM46d8OjeAaeVv68loLVvyO7jluwez/nJH5Mes04SMZzmLAQ=="}],"memo":""},"blockNum":"239815"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","send":"","pkg_path":"gno.land/r/test1/greetings","func":"SetGreeting","args":["hello world"]}],"fee":{"gas_wanted":"200000","gas_fee":"500000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"5g3wtSXYK97EhQ7XdwYZxEhfpUnpSBrY5huDrp/bigBTRKwGFJzpqTX7LEOGWa+kgbcTibVCD7plDod2xUemIQ=="}],"memo":""},"blockNum":"239845"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g12cvhg4mfst27whu6x58vu69zt04j5hfh8kwv5v","send":"","pkg_path":"gno.land/r/test1/greeting","func":"SetGreeting","args":["hello world"]}],"fee":{"gas_wanted":"200000","gas_fee":"500000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ak4p4PxA/+zamvrd/oFdTtjy8KHkfw1+916jxzXNfy40"},"signature":"6+VMul7W6AX6W0YiaXt0k7ZUoMXAYHoK91KKQKvw9tJFuPV0sLLLZXONzA+3X+rVwLvT0X6+ssUx9fkqmZI5Rg=="}],"memo":""},"blockNum":"239855"} diff --git a/test3.gno.land/backup_0240043-0241594.jsonl b/test3.gno.land/backup_0240043-0241594.jsonl new file mode 100755 index 00000000..13db1cf8 --- /dev/null +++ b/test3.gno.land/backup_0240043-0241594.jsonl @@ -0,0 +1,84 @@ +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","to_address":"g1yn8e0q6nh3dej4walxz9xyn72jj9qxyf278rcq","amount":"3000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+FhNtsXHjLfSJk1lB8FbiL4mGPjc50Kt81J7EKDnJ2y"},"signature":"Zlu0q6CQvrPt1iqlUjlQCZAPngCwYGQIN+XG/eTJqKh+fLlWWncz//LIOLPFtlNXOg+cOUFTpCwinG4q5BWO7w=="}],"memo":""},"blockNum":"240245"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1yn8e0q6nh3dej4walxz9xyn72jj9qxyf278rcq","amount":"50000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"y6e3YFSWK3OzjhV8NdP8/IeYOe7LlRRxMJUXPMGIdTNKRQvDHMekv44VDBV09lMabL3haa3cxx3pxxNiQ/QFMQ=="}],"memo":""},"blockNum":"240248"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1yn8e0q6nh3dej4walxz9xyn72jj9qxyf278rcq","10000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"tadptpYG9kN5Ns0gTkdtIH01J6N2OEbtf4qHBZDPcdsm1nyuun/9Vu0phyCkxgwtR/4BMoN/6TNFRnms3m/NXA=="}],"memo":""},"blockNum":"240250"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/foo20","func":"TotalSupply","args":null}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"LToWUjcOeaR0wVw58wEBrIM8peJRAoSBFvzhWrQtziQwsPkao4wwOvhm/0Rq3g3nanS5qCYOadcU4ud8BwYn4w=="}],"memo":""},"blockNum":"240262"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/foo20","func":"TotalSupply","args":null}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"ZlOcQIYHJS/FqkZ1OrVw2EVH1LcCFEho+EKOFpL1qTYe3vIMg1hroI2Y1UE27i8tN+a4ej9EvqQ+HeMp574RuA=="}],"memo":""},"blockNum":"240284"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1n4s7q5tkqmuzgq40wmx5t2l5hy6u0t87hgjtd7","9970"]}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"vCGAaWXi2PRPDFopCzZQB1y/OWK9HC9/kQr65bDOrUMzo1MdYznIzFgH5armdYxPtDWZK5LqLHwAmcULwIymZQ=="}],"memo":""},"blockNum":"240293"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","10000"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"ZBOigrCy/LnKXVqF/kCpfz0lvHltVPTFwra6ukpt8rIJjMlpegocl3j8hpMA0YUaFk3AX27Zh9fu2368ZmGnSA=="}],"memo":""},"blockNum":"240318"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","20000"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"71I8PSLnRagiI6SEgjOnkRXXepF1b5DQ0Iq0O/4QWX8E9O+khbBRIf9Dya5t6GXTtyWtXfoo20A+Yk89hfU2dw=="}],"memo":""},"blockNum":"240320"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1c4f5pn9zatmyxrndncv3zsq8qmk33vf4g9gm7h","to_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","amount":"20000000000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AshocLMsZgjD1Q08bZUfI1akIdxlp2BcUNjdkX3ChTWW"},"signature":"ybu1w85qQCwmUYHF22USkA0fUcOc/K4r/UJs9frixP9wRVTtuiL0ZD3+GGeL/QNugUWy4YyMkQNdgGph19S2OQ=="}],"memo":""},"blockNum":"240344"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1k2dafefd0dgdf6yz39zjdqupn680xa925xn2lz","amount":"41000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"Mfx/WWg3oBgDCJm9H5qaHLSrxc4r4ZkvZdlkupGeuasme+sumy5pKukEi8MzQdWmdKuNypttMZUKKm1tyXDqTw=="}],"memo":""},"blockNum":"240357"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1k2dafefd0dgdf6yz39zjdqupn680xa925xn2lz","amount":"41000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"dygG/vOz8Syv2+G0lzwBGT/DQiZEmqj3qKunA9dPBGpAxuQfpvRR4o59mx6WLZWaS+SVfw/xbzQB1lzx72FYPg=="}],"memo":""},"blockNum":"240359"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1k2dafefd0dgdf6yz39zjdqupn680xa925xn2lz","amount":"41000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"uVL1DFV7+6mBd3Y9nYgkzWxGWIxxcYuTHn4YrpY+qWop49XrzJRRdrg5ROl6sFJkjgck7hrfkPUME9ozSJZPuQ=="}],"memo":""},"blockNum":"240361"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"sgCFqAJoLU6/FHrl1OztELJ2r9bNmHGy0mIsYJZC0EtJyaGkiCVIBPFkz1s0atl5FTYRNS5ckutTAckJ621i/w=="}],"memo":""},"blockNum":"240376"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","amount":"8569609ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"0ux7RUHdBrpRi/1iglqOCPcc+1JJfeNXAFIt2GT0tksEC6HsLPDe9/bfOhUnvPvsfwXvF4qR3wVLezWhBSN5gA=="}],"memo":""},"blockNum":"240379"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","to_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","amount":"1999997ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgRVZeBhCNiXMgeopMseJTFgTUwWKdw1TibC+g1lyO3E"},"signature":"baLm0sAiLX8OpxkkKbcFNCMEZMir6UElwUG84b0fQ1kgE0w6WcviSl/WbIonVa310D7zdPyXula8JPFMugHbAQ=="}],"memo":""},"blockNum":"240381"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"0sSQZG6tIlx/dtOHLQAvEr5TqQeXFFBnE445D4mumj4xr6Mpu9iUdmBwHTLRHuBiz2xqCPcM7QqOSgjIOGscHw=="}],"memo":""},"blockNum":"240383"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"RhpigGDcaSjgmfIKokn4Xt+WdC9EdLHtiUQQab9xopUGIZuUtfifku6Jb+jn/M1Q3jaDUWcdnyOU84iwcE1/hQ=="}],"memo":""},"blockNum":"240392"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"UdwMCMMa6envbU3tzjSxTt+O7Z7ClxM8R3mYxqCkBsl5UPZ+apXulPZv0oaBwHd8lygFbhWU0K4A8aILp1Ds3Q=="}],"memo":""},"blockNum":"240420"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1w4qqmxdk59xsh3x5hnp2z78s4ymyva8pnenfem","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"100000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A3qb8HYMMShXDmVxNvUPSm208qrj/S2Ym7hJqJeQtNW5"},"signature":"a8Y+IOLhmB69yEMvxUTSfSxNZyw6ioqJ/PakWUz1dq5xR0wimaWuKy8c7wGbkjfFqFb3XjoPaqTTrKo6LEUtTQ=="}],"memo":""},"blockNum":"240422"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"DyySdw1vIeg3WtHukp9oCN8iA+uFPCt6ZunZSyTzJwcjDdQFkhGZWzbqMgGW/1SnGf695O5L1gXX9YOWBzl3/w=="}],"memo":""},"blockNum":"240430"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"vGtIpw8xYKjn33UP4b2omT7VmhaE+ToEUYYnIY+6sfRj4ukEKeVR+Ob7FpMLC/KM3VRyjrx5gc3xS72ZNFELfQ=="}],"memo":""},"blockNum":"240432"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"UIbbTo6GXW6YfOx9CCJkmi4MqXsZlc+ojtb+O1z1uWRTrTpKHF6NvLzlnfPqw7GI1lzmhs+/0/ewFQhtGDv2DA=="}],"memo":""},"blockNum":"240434"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"zjWJNexVqe6+3RM8vM0gOVBKiHAk/Ib4ynRH8Th6Jz4nMA2VQFfFQQky8/i8jGOCMftFDHxerRJRTrK1S0pEWw=="}],"memo":""},"blockNum":"240437"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"iizeEtQL+4KKrV7FSh1stOcqbrRUCtU79Tt0MYbdiQJWyq3TicYi4yeccdasVAETGM793ZaqaZFCNsMohZWQQw=="}],"memo":""},"blockNum":"240440"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"qmra5v+2vRyh0s+q1kkXA9Ct2jNP9HjS+q3ZgfNi/RVhq2NO61D8mOgY8ugFzuGTwJw1ROGPWwZpi4UH8v02nA=="}],"memo":""},"blockNum":"240442"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"F1gF828nP++4MigLf/JXqj8Ny6Cshv3JTUj3RLlyf34mFmXUURlLZowabFWlEIVvGKWOnAIpsvwPRNWsXX5XTQ=="}],"memo":""},"blockNum":"240445"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1kcdd3n0d472g2p5l8svyg9t0wq6h5857nq992f","amount":"1ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"XYGL9zyiFHdewLNJ/4wrttVWmTN9lE1hrSc+0QfSOm46/uXamDdYyAsSSe8Fv6limbBy2jkburbJH4TjXA0Wsw=="}],"memo":""},"blockNum":"240447"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1pr3x7g4xazh87zfcjqextucxfss8gtnmn4me5r","amount":"1000000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"Iplt+etWoU2hyQceAZjcm0W3qVSBnd73PZ50IyVg+VQr24oNJDCnnYPf5ogjHvULeKjZ/F3t1BltTI9HVapYyQ=="}],"memo":""},"blockNum":"240461"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1pr3x7g4xazh87zfcjqextucxfss8gtnmn4me5r","amount":"1000000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"WzjarLdbf4yHVNr9Yjn2IApg+i/HyN3oHC798TYgtlA6eaCdv3Iz2RuJrQaCJoKHgTjhKAgUO5LufRj3gj5i+A=="}],"memo":""},"blockNum":"240483"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1pr3x7g4xazh87zfcjqextucxfss8gtnmn4me5r","10000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"ZeH1ymrysVyw3/xjpSAiK2SJFZAGIfrl2Rl0/5trb+Nz0AW/ShlK2Ms081fx1cIcVUqaqVRV7BIblbt3qf6UFQ=="}],"memo":""},"blockNum":"240485"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","100"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A27+HjKCKEmzyBEVKKRYN/8ItA49KusmYvj05+rlSD0p"},"signature":"tsoWxG1XNUf8pAHekZWqtGQJfcwvQqOb/ezlquIuNqEniuB78hIXSxzefi4+LUUQqwkl3XbpKYxmOcwiGjbFFQ=="}],"memo":""},"blockNum":"240502"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1d598tyfatprdstalqutk62cnzpm3thvyy9mypg","to_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","amount":"10000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aijm8N1gZwShpsIZe96/o1CmHdenljEhC5w3MA1JBTj6"},"signature":"umQ+7gWBHgkZSdtcIIoCyOl2227keSJAqLL/sIkm21JNY7AB6/qSaP4z/3zigrT3ODayWQ7g1xgX0fnbPwZkiQ=="}],"memo":""},"blockNum":"240504"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"TbWuPeToGUM3rmg+1MTB+eft8Hjn5Q7FN7e2GAdpJ9YzA3hOHxuTNiul+4gwl4z8r6K2xyLDuPZAxkqiY19Y2Q=="}],"memo":""},"blockNum":"240508"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"a1gdDLSy7UQ2nB92NwlSf6Hqy6HoCAFgddjLJ17y7/YrO0fGYK+gDTkYbQOySkLwlZsZI7POlGSDuhHMEpKU2w=="}],"memo":""},"blockNum":"240511"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1p6wtprf8wl2s5z08s0tmn7snxlq0tdjvv46tm9","send":"","pkg_path":"gno.land/r/test1/greeting","func":"SetGreeting","args":["set"]}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AzKti/XiFTeigS2l358qt7i7UIfEeHD8HjiNZPR5DUlD"},"signature":"i7TccHt1x+rUl4zRVS3oDh/5B1o2HKHYU2+qKUESgBB4cqk+88CWTuxZyVBQfgE6EjTzzk4F705sI8e9Kcf3SQ=="}],"memo":"Executed through play.gno.land"},"blockNum":"240522"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1l47x640c4petu4chfjge3qg2uplakx78hkxqxd","10000"]}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"Mfm8CH3YbwzA8gmA5oICa6MsLW2/b0rUZKwqtaRkyQd3h9zuXtDuro47aKCsxKOg0q8kDgcU5wV5oFcnhcWbTA=="}],"memo":""},"blockNum":"240527"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","amount":"1000000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"gCbyqjTchN1sxO1XXTzpPH8fpH8CSPHnLuwJ/l3ekSIEPmz1kzwx5OkQxpQ3eqWxE+qxBiV+CXU7RhTwXt1kNA=="}],"memo":""},"blockNum":"240535"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","to_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4e3ivZNiLw4E1fitY7tHVUu3inhR/se1eo17siUwsBz"},"signature":"HMR6AwmETVqjBNklpqVGwUTsHVTkAJ9+3B0YNtEWirUJOivTFhWaSzyQKOGjyjf56U1cfFZpIIV8BxWQd2fvrQ=="}],"memo":""},"blockNum":"240537"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","to_address":"g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4e3ivZNiLw4E1fitY7tHVUu3inhR/se1eo17siUwsBz"},"signature":"iTE4V5OHCMJMmgS/+vZ0AgJNgp8C0xe/VVaUGQ315axudBpTYL+xYi9grApd0keqo41BezdNJawQ3EhhPYU1jQ=="}],"memo":""},"blockNum":"240539"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","10000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"aUADqE5kaVO41IS2nNFbi/vOUbkp0ace2PfUVotRKhV7pcJ7npeFyIYQfWcnoTcr5u0SbEbS1OwCVebNIrlh/g=="}],"memo":""},"blockNum":"240541"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","100"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4e3ivZNiLw4E1fitY7tHVUu3inhR/se1eo17siUwsBz"},"signature":"CrG4G7coeiTlG0ywb6eeqCyJugh9KAQrA0pwtxCWFys2WRQ46M7ScBw2sQBk5q+ME1XuFgGTB6TX3wzrC9/Btg=="}],"memo":""},"blockNum":"240543"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","to_address":"g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","amount":"100000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4e3ivZNiLw4E1fitY7tHVUu3inhR/se1eo17siUwsBz"},"signature":"Qvxvosl57cV5wD8GTd4PNp8cwJGigCkjEIj04er7OhhAI23M3w484wg3EaNFDwuRVKS+H3q4l7Vd/CA6eRY2sQ=="}],"memo":""},"blockNum":"240545"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","900"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4e3ivZNiLw4E1fitY7tHVUu3inhR/se1eo17siUwsBz"},"signature":"l6raCH7ATAON9Sl023Ezh0OA2Vg/xf2b9eoDx2N0hc9penT0xu8yn3z+rG/IN0jlfYnNwrVLiVcVaRuNFaYZOg=="}],"memo":""},"blockNum":"240547"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","100"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjZ76BQliKwGCokc4oo2aBzcSMbf3v/po/7wQEqOxozs"},"signature":"81yhVC3kBMpqTzl+YLBfaA7V1zCLkqz0x8vr/aCYyFBoJFOV+MVcNH4Lv/DZgtKBE85RoNuZiCBSgZ7tXrMJvg=="}],"memo":""},"blockNum":"240549"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","to_address":"g1kvx86q9jf0e2fpgnfwv5fwhj8nxlrs6v5v49zf","amount":"10000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AjZ76BQliKwGCokc4oo2aBzcSMbf3v/po/7wQEqOxozs"},"signature":"1fufwBGolE701iSu8DqtYUgjqQcAQhC47hLxRnPK1YB7tRwnN6jFejujAqlQMHF4wm6vXWobACTKrEndxNlagg=="}],"memo":""},"blockNum":"240551"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1ffzxha57dh0qgv9ma5v393ur0zexfvp6lsjpae","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"xXKR0cuMeBBafjsr/Va2fYEWom9WnPQ+H2YgfA7f+LEDnA0kaQqOZeK8bfoHOvt0nyRMJNEB5iVVnJ85i0znWQ=="}],"memo":""},"blockNum":"240556"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","to_address":"g14f7g76030cd3y3206ad2x8pvrwfm5nwvu6fgl7","amount":"1000000ugnot"}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A27+HjKCKEmzyBEVKKRYN/8ItA49KusmYvj05+rlSD0p"},"signature":"+rYsDEFAxYHqocXWSWeXvqyHPO2eseAce0RxGcbGsNc3E3FxR01rQ2Ai/hwf16wZun3TxnD6Z1Y+aK+/ZcMqBA=="}],"memo":""},"blockNum":"240568"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g19n7904gdgt6q5cuccenxp2t9a73y5emftdvtq6","10000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"4mbtjoBFllBkN1XMSqM0T8pXld5+6LUxNSCiQcAJWjZnq3diGtYuAWibW8WpbMcSFtBfkjnsv7mkm9UWZpACuA=="}],"memo":""},"blockNum":"240570"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g19n7904gdgt6q5cuccenxp2t9a73y5emftdvtq6","5000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A27+HjKCKEmzyBEVKKRYN/8ItA49KusmYvj05+rlSD0p"},"signature":"QiIyt+TWl2Hfj+9XaWnXzavJgDuAxwDRmf6YoBQVPR0LZW8unAnoMV5lznmvhi3C5hbgfSbGdoGYNeGtdNiClg=="}],"memo":""},"blockNum":"240572"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","to_address":"g19n7904gdgt6q5cuccenxp2t9a73y5emftdvtq6","amount":"100ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A27+HjKCKEmzyBEVKKRYN/8ItA49KusmYvj05+rlSD0p"},"signature":"En9GmElvk4Td8gL+EapGlydnEYtPLtZxaFmY8EyH9YBWU9erGnNtUiBj7TcvgkNsBgcpuLBl/w2PHBFs+xYvmg=="}],"memo":""},"blockNum":"240575"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","send":"","pkg_path":"123","func":"123","args":["123"]}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A27+HjKCKEmzyBEVKKRYN/8ItA49KusmYvj05+rlSD0p"},"signature":"QKoUuJmG0dlBA3IQsKXVC/q4h9IeX/omUo1riscnEjQp3RXUpJAz6owtwRIBd9rD6hBkHtgvyWp59pBOmAAV7w=="}],"memo":""},"blockNum":"240577"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","10000"]}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":null,"signature":"5cjJ7ST/Mpt6gdJ/Hgo56sSRndTlWUEzylRCHqDOtHk+8Z4gGZFBs4Qr8h5I2dp7BpqqW3fWUAc5OP5hn7vV+g=="}],"memo":""},"blockNum":"240589"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g1ffzxha57dh0qgv9ma5v393ur0zexfvp6lsjpae","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","1"]}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"n3XZctXmWUP0ggPCtrMF5VJjeuKhBpX6iRa7N9UJK2su+IxXnwx90JHr/13etWQRpx7OP+gw6GH+Eorvua0ZrA=="}],"memo":""},"blockNum":"240591"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","amount":"41000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"GWjdKmcocXoJwZFAvRvYH/Vp4O3/og2sfC0Nerf8ZOJ5z/u8jnW5oQVSVqYJQ7tTFZKrX2OBTqjnOxz6kxo/vw=="}],"memo":""},"blockNum":"240596"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","amount":"41000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"z4Qac0HWHaYuzQshp4cmLUdpDsDISUZsr5tjQNUopS9j75LEwYgV0CAwWVSabvclnlDFjCvOxGPLVfqUlFvD8Q=="}],"memo":""},"blockNum":"240604"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1r3n3wgtkqycm64ze0rghgyk7hwn487g4xgsqlz","10000"]}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":null,"signature":"ms171vPj1969TEZbmTO/mOSnf4gy3HaHkxKkgO26EaVBVuj51qQxz3LlnxT7fRz1estyoUXEKQNFUOfxINUiiw=="}],"memo":""},"blockNum":"240607"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","amount":"100000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"w2gD949DinXxIHWozocimHodQF49DUF7oZsa7GjOxXd7YLCDjavTuCPPI/mydX++HZOblSBp6fwZ9r0ZeyIyWA=="}],"memo":""},"blockNum":"240612"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","12345"]}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":null,"signature":"U5VwwIzMJ9fKEqP4pGX8/8KDVFKOJfPVYY7rbNPJd2s83ijq76yiMIcByies8BmK/x6Ou9DHaqXFD/71emw9/g=="}],"memo":""},"blockNum":"240615"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1649rpwa5neu9mpz55qntczcfspe54vktlhy6hn","10000"]}],"fee":{"gas_wanted":"2000000","gas_fee":"1000000ugnot"},"signatures":[{"pub_key":null,"signature":"aYqPnoe0ANSDeEFDB9HBtX9U7AEY7UryHImupViZjQ8+RONOCZD8vuXiuE7ylEuqR5M2c2L5VN22IoJCXRcCtw=="}],"memo":""},"blockNum":"240619"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","to_address":"g1649rpwa5neu9mpz55qntczcfspe54vktlhy6hn","amount":"100000000ugnot"}],"fee":{"gas_wanted":"5000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"TMrXNESOHrgGM8cuh2DCGYZ2SdOkHh1M+yEiH+nwiuQziZ7k2md3oKg+hboWol8TIUNXGIqWuyOeN+8xeXi25Q=="}],"memo":""},"blockNum":"240623"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1649rpwa5neu9mpz55qntczcfspe54vktlhy6hn","to_address":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","amount":"123ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AmwaIL65Jaxe2KF25EquKBiA8ajllpoYdRYLoJxhNZLx"},"signature":"ChWqoF33Z0NUwA/vT9ETapvUE/dFVWPUtaLH/9Xt391uG4J8UGacYM04vq7FyuSjYkJLcXPKQODT7CzNryjvdg=="}],"memo":""},"blockNum":"240629"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","to_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","amount":"1000000ugnot"}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"uCPUseros56jNtxiseUsPuWZYNyEChdzmD4QKVsFcUpoobosugv6tXGlgH/vuiqDzkGZvqJvwtn0rbn3RGqtoQ=="}],"memo":""},"blockNum":"240977"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","to_address":"g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5","amount":"1000000ugnot"}],"fee":{"gas_wanted":"9000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":null,"signature":"e36aadCPRGwwzSHTQDbN5zGaK3LoXpja6lwe81nWWvBNiole3G+vv4UPVlI6yFusf5IEzwZO9gGe3IDLlHrPOw=="}],"memo":""},"blockNum":"241016"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g100xslzk674xuv3s0q8yp44cr63l26z2y4n7ycg","package":{"Name":"hello","Path":"gno.land/p/test2/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"ArEQc1eid6PhHdHmGmYm6AllopKXZf4rUJ2kxL8OSrxt"},"signature":"zgMPmB70qJulIwTf/KAV8EChBTMt+Vw3OEhiTcM7iPZgPNbFasctUkFWpeegFlDf5WDNo6XbKB8N/90mVhtfLQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241085"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g185wkvswxz248lme5wxme92hfkdpdqq9s4jf9wq","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"yywcSwIAJ68GCDz/O8fRDcxul03jefQzdgZO2raFf7Fo4YqWyvFc7uKPXy+0tvqSe/WLh8976HhikZ7sqCfGhA=="}],"memo":""},"blockNum":"241163"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g185wkvswxz248lme5wxme92hfkdpdqq9s4jf9wq","package":{"Name":"cho","Path":"gno.land/r/demo/cho","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/kocmve0Cg1Df1UA7NGx2m7QqONwBbWkeUdLrD/n2Kn"},"signature":"eqFh/p14VMXGDZzncMrUYQRapezLq2fmo0N5/uL+pTBq1Te8sAkFfjB7kg5tCQ9pd8DnaDGWZT6kRyfg4TbfFw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241165"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g185wkvswxz248lme5wxme92hfkdpdqq9s4jf9wq","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"ZOWTw6X9mGd4ebFOCy6BHVm/HII7Sca2e9+hbqFAlrJcxFmTKuJ5OmFGwVS307v2Hf3Ht9wRYmqfSJy+duqf6g=="}],"memo":""},"blockNum":"241167"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g185wkvswxz248lme5wxme92hfkdpdqq9s4jf9wq","package":{"Name":"cho","Path":"gno.land/r/demo/cho","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/kocmve0Cg1Df1UA7NGx2m7QqONwBbWkeUdLrD/n2Kn"},"signature":"j3IFAVUaaNbNbmHV0EXX/akFhlWl/H95u+sCk36kgn496Mihz894BY2igP0eukaxEzm4uNptkOVZw9YRu0eUFQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241169"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g185wkvswxz248lme5wxme92hfkdpdqq9s4jf9wq","package":{"Name":"cho","Path":"gno.land/r/demo/cho","Files":[{"Name":"GRC20.gno","Body":"package cho\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tcho *grc20.AdminToken\r\n\tadmin std.Address = \"g185wkvswxz248lme5wxme92hfkdpdqq9s4jf9wq\"\r\n)\r\n\r\nfunc init() {\r\n\tcho = grc20.NewAdminToken(\"ChoToken\", \"cho\", 6)\r\n\tcho.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn cho.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := cho.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := cho.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tcho.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tcho.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tcho.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tcho.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tcho.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn cho.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := cho.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/kocmve0Cg1Df1UA7NGx2m7QqONwBbWkeUdLrD/n2Kn"},"signature":"qU++Gd7N1QQtNSr5ZWjAO2xfQFjQZkEvorqrj0s9J7R1YLCa6wM5wd6+8gnEyvz9AdeoTTqDerJPeIoCK356LQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241176"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1dnpqyna4u85yvqcgq85lg6rqcs7w5wclhf8nw6","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"JxI/TmyMo8zNMF1K4ZF7X/Q9VXaET5P6o9EpIL4etC5xmrk1sXNysLus7rUT9rKQgsCrl3k0ZJGp5edHjXSoPg=="}],"memo":""},"blockNum":"241212"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1dnpqyna4u85yvqcgq85lg6rqcs7w5wclhf8nw6","package":{"Name":"door","Path":"gno.land/r/demo/door","Files":[{"Name":"GRC20.gno","Body":"package door\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tdoor *grc20.AdminToken\r\n\tadmin std.Address = \"g1dnpqyna4u85yvqcgq85lg6rqcs7w5wclhf8nw6\"\r\n)\r\n\r\nfunc init() {\r\n\tdoor = grc20.NewAdminToken(\"doorToken\", \"door\", 6)\r\n\tdoor.Mint(admin, 5000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn door.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := door.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := door.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdoor.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdoor.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdoor.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdoor.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdoor.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn door.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := door.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AmpA/b9HaEtHcS51vF1+eIQkWpcg1RCs1slbHqyf/hHl"},"signature":"8K9HS3Unoyt3+NYkEZOZPHJPrvRWEuXUGvHIdR524iFUvnpCYLe2FSHKYyzO+RwQlxY0QP/GX3qtfZRzDHoEtA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241214"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1caxvx2z3qm8a36ayf4u9ytt9vncwk9elpgsnh4","package":{"Name":"xrp","Path":"gno.land/r/beta/xrp","Files":[{"Name":"GRC20.gno","Body":"package xrp\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\txrp *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\txrp = grc20.NewAdminToken(\"xrpToken\", \"xrp\", 6)\r\n\txrp.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn xrp.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := xrp.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := xrp.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\txrp.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\txrp.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\txrp.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\txrp.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\txrp.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn xrp.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := xrp.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+B/0lYJgJtzcHPONxOS4tRc5KVxB4Ekgifu3ug1rb3r"},"signature":"a8HkK8Gxonuhw1O8UefG8jg4yRKakCSvfmkkfWwIswwt4jm589RMO8XjY+WKfIFl5libvj6M7vUCYW+Df+OOOA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241301"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1caxvx2z3qm8a36ayf4u9ytt9vncwk9elpgsnh4","package":{"Name":"liquiditeh","Path":"gno.land/r/beta/liquiditeh","Files":[{"Name":"GRC20.gno","Body":"package liquiditeh\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tliquiditeh *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tliquiditeh = grc20.NewAdminToken(\"liquiditehToken\", \"liquiditeh\", 6)\r\n\tliquiditeh.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn liquiditeh.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := liquiditeh.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := liquiditeh.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tliquiditeh.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tliquiditeh.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tliquiditeh.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tliquiditeh.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tliquiditeh.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn liquiditeh.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := liquiditeh.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+B/0lYJgJtzcHPONxOS4tRc5KVxB4Ekgifu3ug1rb3r"},"signature":"OcIAmZ7R+PbFLAXFf6xhHQpT141XCzFxh36LmlRS0mQVLtV8FaWgmB6bG92EJAHqI/MuQRjlrU5/SmwWvImsVA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241303"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1caxvx2z3qm8a36ayf4u9ytt9vncwk9elpgsnh4","package":{"Name":"head","Path":"gno.land/p/beta/head","Files":[{"Name":"GRC20.gno","Body":"package head\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\thead *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\thead = grc20.NewAdminToken(\"headToken\", \"head\", 6)\r\n\thead.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn head.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := head.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := head.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\thead.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\thead.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\thead.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\thead.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\thead.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn head.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := head.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+B/0lYJgJtzcHPONxOS4tRc5KVxB4Ekgifu3ug1rb3r"},"signature":"WRi1FRtOi0P5arU8pGVEapPqJyEvb/KAzOVemPlJWokHHKR7BFlRaAFVZvOgOvTTuAlbXVvv+A3UuqFd3En/rQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241305"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1caxvx2z3qm8a36ayf4u9ytt9vncwk9elpgsnh4","package":{"Name":"dig","Path":"gno.land/p/beta/dig","Files":[{"Name":"GRC20.gno","Body":"package dig\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tdig *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tdig = grc20.NewAdminToken(\"digToken\", \"dig\", 6)\r\n\tdig.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn dig.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := dig.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := dig.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdig.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdig.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdig.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdig.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdig.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn dig.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := dig.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+B/0lYJgJtzcHPONxOS4tRc5KVxB4Ekgifu3ug1rb3r"},"signature":"sYW131gabBBudvxhQeSAcuCg6MoKyoNUbKxXQI4jARY7g2UGoT7aJTZWHR1SWza0Ripx3jcHDW1YBBlDyNnURw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241307"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1caxvx2z3qm8a36ayf4u9ytt9vncwk9elpgsnh4","package":{"Name":"wix","Path":"gno.land/r/beta/wix","Files":[{"Name":"GRC20.gno","Body":"package wix\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\twix *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\twix = grc20.NewAdminToken(\"wixToken\", \"wix\", 6)\r\n\twix.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn wix.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := wix.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := wix.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twix.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twix.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twix.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twix.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twix.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn wix.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := wix.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A+B/0lYJgJtzcHPONxOS4tRc5KVxB4Ekgifu3ug1rb3r"},"signature":"5ngkml7vZJJyQAQSYanywv0QFmsEjIwpjCSteA8VUvVVCXjANEIb2F5rat+wsm5yVihaEsLGEgwsqkbKZ2wuwQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241309"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0","package":{"Name":"xxx","Path":"gno.land/r/demo/xxx","Files":[{"Name":"GRC20.gno","Body":"package xxx\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\txxx *grc20.AdminToken\r\n\tadmin std.Address = \"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0\"\r\n)\r\n\r\nfunc init() {\r\n\txxx = grc20.NewAdminToken(\"xxxToken\", \"xxx\", 6)\r\n\txxx.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn xxx.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := xxx.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := xxx.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\txxx.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\txxx.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\txxx.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\txxx.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\txxx.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn xxx.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := xxx.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aj0mQs9/ye9ZBmR+omWqoUT82s2koZjJPUmt5JklrnrY"},"signature":"odlkEBrrw9waj/GB6Gj2WtV68rfnDDfy7BCV8c4KYeVWOYrKeJHEv4gDm0i4f08R0ApoyAhJtLZ0mwsNHiHK7w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241313"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0","package":{"Name":"ygg","Path":"gno.land/r/demo/ygg","Files":[{"Name":"GRC20.gno","Body":"package ygg\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tygg *grc20.AdminToken\r\n\tadmin std.Address = \"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0\"\r\n)\r\n\r\nfunc init() {\r\n\tygg = grc20.NewAdminToken(\"yggToken\", \"ygg\", 6)\r\n\tygg.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn ygg.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := ygg.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := ygg.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tygg.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tygg.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tygg.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tygg.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tygg.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn ygg.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := ygg.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aj0mQs9/ye9ZBmR+omWqoUT82s2koZjJPUmt5JklrnrY"},"signature":"NNC4koZF7PkqRD6Si802zxogI4UAHvxSggoZWfAucw9x2ez2MPiPpWH30NzItFkjLh8kMrQIlWpyVmPvEPzi5Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241315"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0","package":{"Name":"meow","Path":"gno.land/r/demo/meow","Files":[{"Name":"GRC20.gno","Body":"package meow\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tmeow *grc20.AdminToken\r\n\tadmin std.Address = \"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0\"\r\n)\r\n\r\nfunc init() {\r\n\tmeow = grc20.NewAdminToken(\"meowToken\", \"meow\", 6)\r\n\tmeow.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn meow.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := meow.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := meow.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmeow.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmeow.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tmeow.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tmeow.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tmeow.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn meow.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := meow.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aj0mQs9/ye9ZBmR+omWqoUT82s2koZjJPUmt5JklrnrY"},"signature":"6rcI1cMxXaIAfQWs58x7tWNnFIM767WtZc6TJaLe0P1vqJcVQeHpTNh4fUY57GH7htToqU8FKZrtiD4xhcRyhg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241317"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0","package":{"Name":"kimmel","Path":"gno.land/r/demo/kimmel","Files":[{"Name":"GRC20.gno","Body":"package kimmel\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tkimmel *grc20.AdminToken\r\n\tadmin std.Address = \"g17k3jmr2xdwhu6xzcqh5uwu56644ccptrmhy5d0\"\r\n)\r\n\r\nfunc init() {\r\n\tkimmel = grc20.NewAdminToken(\"kimmelToken\", \"kimmel\", 6)\r\n\tkimmel.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn kimmel.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := kimmel.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := kimmel.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tkimmel.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tkimmel.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tkimmel.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tkimmel.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tkimmel.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn kimmel.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := kimmel.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aj0mQs9/ye9ZBmR+omWqoUT82s2koZjJPUmt5JklrnrY"},"signature":"xCdaXdXFrGsVDV+BiajUUds3uvxCrSToU5PAiQ0+Bjd5NO4hQhWGkOtrKsIZKxP1tFuB5Vnz8cceWNOFNd24vg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241319"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1hh0k8n2am2ldpl0j893wp8fdtwdf8qf9hsa5s8","package":{"Name":"iii","Path":"gno.land/r/demo/iii","Files":[{"Name":"GRC20.gno","Body":"package iii\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tiii *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tiii = grc20.NewAdminToken(\"iiiToken\", \"iii\", 6)\r\n\tiii.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn iii.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := iii.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := iii.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tiii.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tiii.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tiii.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tiii.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tiii.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn iii.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := iii.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxS9j83f8ook0P8tAQSCuq+IBgsMgAPqUlX16EVs8WPU"},"signature":"WJL1me0TkmVCTRi7/blk4p72Npu6B/tR2qK5LXEfVfgJM6z6QhOkOzmlptceCibU1z3X/hd9sRw2ZBs0up7iQQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241587"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1hh0k8n2am2ldpl0j893wp8fdtwdf8qf9hsa5s8","package":{"Name":"rtr","Path":"gno.land/r/demo/rtr","Files":[{"Name":"GRC20.gno","Body":"package rtr\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\trtr *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\trtr = grc20.NewAdminToken(\"rtrToken\", \"rtr\", 6)\r\n\trtr.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn rtr.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := rtr.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := rtr.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\trtr.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\trtr.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\trtr.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\trtr.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\trtr.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn rtr.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := rtr.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxS9j83f8ook0P8tAQSCuq+IBgsMgAPqUlX16EVs8WPU"},"signature":"9dTlNU7Ff1g1FSCin6op1p6UB45s7yE4955euI/JQeVQgMtfKlypERduA8QhGD/TmzUQAM/TFYSyyXDZeo299g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241589"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g128ucp2mk3ax9urc2hhx0tr8xqm6g4p8j28x4yf","package":{"Name":"uiu","Path":"gno.land/r/demo/uiu","Files":[{"Name":"GRC20.gno","Body":"package uiu\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tuiu *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tuiu = grc20.NewAdminToken(\"uiuToken\", \"uiu\", 6)\r\n\tuiu.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn uiu.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := uiu.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := uiu.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tuiu.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tuiu.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tuiu.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tuiu.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tuiu.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn uiu.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := uiu.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxVdh4kz7T3MgQdjBGcKn4Y0ebKw0905PvD//GnJUljf"},"signature":"gzRrztaeMOop+uFwXzyOU3QiB4TW7EG6J7voXopL9pY09Tz9as1MUDMxtC0/w6n4c34cQGHitFKVVTuVBJ+YxA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241591"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g128ucp2mk3ax9urc2hhx0tr8xqm6g4p8j28x4yf","package":{"Name":"saf","Path":"gno.land/r/demo/saf","Files":[{"Name":"GRC20.gno","Body":"package saf\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsaf *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tsaf = grc20.NewAdminToken(\"safToken\", \"saf\", 6)\r\n\tsaf.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn saf.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := saf.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := saf.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsaf.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsaf.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsaf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsaf.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsaf.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn saf.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := saf.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxVdh4kz7T3MgQdjBGcKn4Y0ebKw0905PvD//GnJUljf"},"signature":"h3nbVHsTu2KhC8rkD6VY3sIacLAyZcwEHSqJBd9+UpEXlNMPjGY6HlVREBdo9gNiPHxjf4p1gstCs2Ic6OcP9Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241593"} diff --git a/test3.gno.land/backup_0241560-0243072.jsonl b/test3.gno.land/backup_0241560-0243072.jsonl new file mode 100755 index 00000000..54c91a88 --- /dev/null +++ b/test3.gno.land/backup_0241560-0243072.jsonl @@ -0,0 +1,48 @@ +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1hh0k8n2am2ldpl0j893wp8fdtwdf8qf9hsa5s8","package":{"Name":"iii","Path":"gno.land/r/demo/iii","Files":[{"Name":"GRC20.gno","Body":"package iii\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tiii *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tiii = grc20.NewAdminToken(\"iiiToken\", \"iii\", 6)\r\n\tiii.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn iii.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := iii.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := iii.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tiii.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tiii.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tiii.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tiii.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tiii.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn iii.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := iii.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxS9j83f8ook0P8tAQSCuq+IBgsMgAPqUlX16EVs8WPU"},"signature":"WJL1me0TkmVCTRi7/blk4p72Npu6B/tR2qK5LXEfVfgJM6z6QhOkOzmlptceCibU1z3X/hd9sRw2ZBs0up7iQQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241587"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1hh0k8n2am2ldpl0j893wp8fdtwdf8qf9hsa5s8","package":{"Name":"rtr","Path":"gno.land/r/demo/rtr","Files":[{"Name":"GRC20.gno","Body":"package rtr\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\trtr *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\trtr = grc20.NewAdminToken(\"rtrToken\", \"rtr\", 6)\r\n\trtr.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn rtr.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := rtr.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := rtr.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\trtr.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\trtr.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\trtr.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\trtr.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\trtr.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn rtr.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := rtr.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxS9j83f8ook0P8tAQSCuq+IBgsMgAPqUlX16EVs8WPU"},"signature":"9dTlNU7Ff1g1FSCin6op1p6UB45s7yE4955euI/JQeVQgMtfKlypERduA8QhGD/TmzUQAM/TFYSyyXDZeo299g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241589"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g128ucp2mk3ax9urc2hhx0tr8xqm6g4p8j28x4yf","package":{"Name":"uiu","Path":"gno.land/r/demo/uiu","Files":[{"Name":"GRC20.gno","Body":"package uiu\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tuiu *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tuiu = grc20.NewAdminToken(\"uiuToken\", \"uiu\", 6)\r\n\tuiu.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn uiu.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := uiu.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := uiu.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tuiu.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tuiu.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tuiu.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tuiu.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tuiu.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn uiu.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := uiu.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxVdh4kz7T3MgQdjBGcKn4Y0ebKw0905PvD//GnJUljf"},"signature":"gzRrztaeMOop+uFwXzyOU3QiB4TW7EG6J7voXopL9pY09Tz9as1MUDMxtC0/w6n4c34cQGHitFKVVTuVBJ+YxA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241591"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g128ucp2mk3ax9urc2hhx0tr8xqm6g4p8j28x4yf","package":{"Name":"saf","Path":"gno.land/r/demo/saf","Files":[{"Name":"GRC20.gno","Body":"package saf\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsaf *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tsaf = grc20.NewAdminToken(\"safToken\", \"saf\", 6)\r\n\tsaf.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn saf.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := saf.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := saf.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsaf.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsaf.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsaf.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsaf.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsaf.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn saf.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := saf.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AxVdh4kz7T3MgQdjBGcKn4Y0ebKw0905PvD//GnJUljf"},"signature":"h3nbVHsTu2KhC8rkD6VY3sIacLAyZcwEHSqJBd9+UpEXlNMPjGY6HlVREBdo9gNiPHxjf4p1gstCs2Ic6OcP9Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241593"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g15gsy3nlxxjn0knd3xkucg4f6gf79tfwhg426sw","package":{"Name":"hgh","Path":"gno.land/r/demo/hgh","Files":[{"Name":"GRC20.gno","Body":"package hgh\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\thgh *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\thgh = grc20.NewAdminToken(\"hghToken\", \"hgh\", 6)\r\n\thgh.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn hgh.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := hgh.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := hgh.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\thgh.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\thgh.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\thgh.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\thgh.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\thgh.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn hgh.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := hgh.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ap3zzX15rnsV+/yYqqB3yiuHLLwOyNyChTuXNRnl/FHW"},"signature":"gh9uLvvTM+dPf0WLmPP28fI6qNY1KWsOLtXpNKULytB2hKxCtQrF+bYRoAJuWITCwS4bam1G6oMxAAANt7B5Wg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241595"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g15gsy3nlxxjn0knd3xkucg4f6gf79tfwhg426sw","package":{"Name":"lkl","Path":"gno.land/r/demo/lkl","Files":[{"Name":"GRC20.gno","Body":"package lkl\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tlkl *grc20.AdminToken\r\n\tadmin std.Address = \"g1hqzeju0p0eup9rgxa0pxvyc0y7wnzjrdvppsy5\"\r\n)\r\n\r\nfunc init() {\r\n\tlkl = grc20.NewAdminToken(\"lklToken\", \"lkl\", 6)\r\n\tlkl.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn lkl.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := lkl.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := lkl.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tlkl.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tlkl.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tlkl.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tlkl.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tlkl.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn lkl.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := lkl.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ap3zzX15rnsV+/yYqqB3yiuHLLwOyNyChTuXNRnl/FHW"},"signature":"bWnd5kbXrXPFPHvxKyg30prWGR8kyADyuaXmQpThJWYSL1BKJXrlrQURPnRiN+36/rfm55th2ssNI8b20KKFGA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241597"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1w0aqh55k5ajnk90a3u47y5dn83yyuae9n5vkqy","package":{"Name":"doggiescoin","Path":"gno.land/r/demo/doggiescoin","Files":[{"Name":"GRC20.gno","Body":"package doggiescoin\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tdoggiescoin *grc20.AdminToken\r\n\tadmin std.Address = \"g1w0aqh55k5ajnk90a3u47y5dn83yyuae9n5vkqy\"\r\n)\r\n\r\nfunc init() {\r\n\tdoggiescoin = grc20.NewAdminToken(\"doggiescoinToken\", \"doggiescoin\", 6)\r\n\tdoggiescoin.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn doggiescoin.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := doggiescoin.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := doggiescoin.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdoggiescoin.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdoggiescoin.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tdoggiescoin.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdoggiescoin.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tdoggiescoin.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn doggiescoin.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := doggiescoin.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Awfw6SakJXLNfeKNfxIfSiIg1IFy72TtC3ZAeltdAR2q"},"signature":"3cpfHr0PU744NWQP6TGp8TDdR89NGdc3lXdWp38Y75J/yie4etlF8qoCUPcGP7Ee/zvBCrf0pDjKl5zjTEum6w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241615"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"+J817tueG7HoZUUf8HB+p0SInLHX/rctCPQRlyhZaP1oq1FkJYTgukmz5qsLtePD1biKId/Y45Q5Gu40wFYlzg=="}],"memo":""},"blockNum":"241620"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"zeezus","Path":"gno.land/r/demo/zeezus","Files":[{"Name":"GRC20.gno","Body":"package zeezus\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tzeezus *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\tzeezus = grc20.NewAdminToken(\"zeezusToken\", \"zeezus\", 6)\r\n\tzeezus.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn zeezus.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := zeezus.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := zeezus.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tzeezus.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tzeezus.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tzeezus.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tzeezus.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tzeezus.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn zeezus.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := zeezus.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"NC4q32MKPdzBsE0QoV6VFmuTjnRro6XTOqO5mj9d7j51ehk/5XfzYogsDBe2pFZ9i83kcE5lGKjBaExMeC+vkA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241624"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"soju","Path":"gno.land/r/demo/soju","Files":[{"Name":"GRC20.gno","Body":"package Soju\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tSoju *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\tSoju = grc20.NewAdminToken(\"SojuToken\", \"Soju\", 6)\r\n\tSoju.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn Soju.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := Soju.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := Soju.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tSoju.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tSoju.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tSoju.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tSoju.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tSoju.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn Soju.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := Soju.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"UvoSm9jb7If4Yy3prXX71x20+2ARd8i3Ws55sOvYbkk92Xv1BAP9H55wW2lqEd3azI8bzvOP84LhNfyR1IRC8w=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241627"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"soju","Path":"gno.land/r/demo/soju","Files":[{"Name":"GRC20.gno","Body":"package soju\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsoju *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\tsoju = grc20.NewAdminToken(\"sojuToken\", \"soju\", 6)\r\n\tsoju.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn soju.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := soju.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := soju.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsoju.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsoju.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsoju.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsoju.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsoju.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn soju.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := soju.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"m7dpkjQCHAhdnayFkAPjUuNojXrUikbEfP3+CgyCOQRzpCqSG+JxTFprzd0oWDgGkh9aAAcZwhnL3wa4lw2jeQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241630"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"whooper","Path":"gno.land/r/demo/whooper","Files":[{"Name":"GRC20.gno","Body":"package whooper\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\twhooper *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\twhooper = grc20.NewAdminToken(\"whooperToken\", \"whooper\", 6)\r\n\twhooper.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn whooper.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := whooper.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := whooper.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twhooper.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twhooper.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\twhooper.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twhooper.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\twhooper.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn whooper.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := whooper.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"ZuODQt7l5+dpwOUdeFY9y6wTh4GnXhGK+p+OZ1mdRgJ+ZMKB42w/ljsw11vRheOvR2yaxsNjBmr/EPeu0dcSUg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241632"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"grass","Path":"gno.land/r/demo/grass","Files":[{"Name":"GRC20.gno","Body":"package grass\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tgrass *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\tgrass = grc20.NewAdminToken(\"grassToken\", \"grass\", 6)\r\n\tgrass.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn grass.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := grass.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := grass.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgrass.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgrass.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgrass.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tgrass.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tgrass.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn grass.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := grass.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"rtrg7a2qSevMAKRB57hml2yg7kJ6WPxWS5BGPo+zWTsbjM729XLkDNK9+uZ7kp4CcQ3rFVBvt6klKleNMn85tg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241634"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"peezus","Path":"gno.land/r/demo/peezus","Files":[{"Name":"GRC20.gno","Body":"package peezus\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tpeezus *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\tpeezus = grc20.NewAdminToken(\"peezusToken\", \"peezus\", 6)\r\n\tpeezus.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn peezus.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := peezus.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := peezus.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tpeezus.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tpeezus.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tpeezus.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tpeezus.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tpeezus.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn peezus.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := peezus.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"fW7ptyK1KOxjGUYODGmKt9IYJsS6sN5wkzfvWmB5joJvrpjSbqvquNiO0VJlilyF4aeJ3/tyjqm35LGODB2vdg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241637"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh","package":{"Name":"queezus","Path":"gno.land/r/demo/queezus","Files":[{"Name":"GRC20.gno","Body":"package queezus\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tqueezus *grc20.AdminToken\r\n\tadmin std.Address = \"g10jtus48tdlp93l9jw9q0tws5jh7gmpjdtyqkxh\"\r\n)\r\n\r\nfunc init() {\r\n\tqueezus = grc20.NewAdminToken(\"queezusToken\", \"queezus\", 6)\r\n\tqueezus.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn queezus.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := queezus.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := queezus.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tqueezus.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tqueezus.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tqueezus.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tqueezus.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tqueezus.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn queezus.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := queezus.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Aku88DmkdMycKsi31k2o+0D/TNi3XQYMQnMUjlseFtA7"},"signature":"xNPRCKN+f5hFbfQoVolWwKBmw582en58FOPwx0j6RdhOs1/twY/0j+sUnL/hDgwmdDEiz7icHDGeQjLfGxvLeA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241640"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g16tu7rumh7syw6dcn4k2ypa25674dk9uvrdpclt","package":{"Name":"grim","Path":"gno.land/r/demo/grim","Files":[{"Name":"GRC20.gno","Body":"package grim\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tgrim *grc20.AdminToken\r\n\tadmin std.Address = \"g16tu7rumh7syw6dcn4k2ypa25674dk9uvrdpclt\"\r\n)\r\n\r\nfunc init() {\r\n\tgrim = grc20.NewAdminToken(\"grimToken\", \"GRIM\", 6)\r\n\tgrim.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn grim.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := grim.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := grim.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgrim.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgrim.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tgrim.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tgrim.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tgrim.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn grim.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := grim.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AqkA9cB+2GUeyYI6VQQe6IjejJyFULOylD4j7uklbkXX"},"signature":"1HY6vW1UXMkTqPbU4hHd0qATFfRE8ZX98iAgMu7Ugo1ToflK4e5bmEmfy92jdN1mBnXlGTiHIQ0iAxjUqJ2NKQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241769"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"eaJ7t4JiwQlNst5rPm0nWtaLWlBr20BeYUtp6LNiyBdSQEXQLUjs8a0BEycBVG4/dokBpySNjVHTLVL3dd0mMA=="}],"memo":""},"blockNum":"241817"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums","package":{"Name":"aaa111","Path":"gno.land/p/111/aaa111","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ax4r3xQhBFhd1vgFykG+v1bwzL9Ff7szdeZIFZB0DY3v"},"signature":"On0tR4tb8hJgsVu8llZZfvgpaUl7pms3bNzLSLLKYS0fOvqC86FFlMSNHEF3TUcoSKkwb56oj9YitwuLRg0w6g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241820"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums","package":{"Name":"AdminToken","Path":"gno.land/p/demo/AdminToken","Files":[{"Name":"GRC20.gno","Body":"package foo\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tfoo *grc20.AdminToken\r\n\tadmin std.Address = \"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums\"\r\n)\r\n\r\nfunc init() {\r\n\tfoo = grc20.NewAdminToken(\"FooToken\", \"FOO\", 6)\r\n\tfoo.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn foo.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := foo.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := foo.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tfoo.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tfoo.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn foo.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := foo.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ax4r3xQhBFhd1vgFykG+v1bwzL9Ff7szdeZIFZB0DY3v"},"signature":"hkC0OEWYLbpkdpO953lRLZBYw4ruQyqwm6o2HDH7aw4+55ThZ6FRDsVXDeDz/dX46X0YQLkgTjo362eEgTm93g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241822"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums","package":{"Name":"token2022","Path":"gno.land/p/demo/token2022","Files":[{"Name":"GRC20.gno","Body":"package token2022\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\ttoken2022 *grc20.AdminToken\r\n\tadmin std.Address = \"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums\"\r\n)\r\n\r\nfunc init() {\r\n\ttoken2022 = grc20.NewAdminToken(\"token2022Token\", \"token2022\", 6)\r\n\ttoken2022.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn token2022.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := token2022.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := token2022.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\ttoken2022.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\ttoken2022.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\ttoken2022.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\ttoken2022.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\ttoken2022.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn token2022.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := token2022.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Ax4r3xQhBFhd1vgFykG+v1bwzL9Ff7szdeZIFZB0DY3v"},"signature":"qEL9Fzx14krCmxER36mSqdfl9HPYwbuAacTVM2kGCsVaIDc7SS2T9j2FRnk4SFyCmSuNv0rPD/JpovP430hw9g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241824"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1alfs0urke3lmvv23uduy0kdnkus5a7yr2nejre","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"hYxrWvHaYpvotJx8Ss10fLCUy7h7C0vrxdFF94ObcIghYh+tNMezhDAmQ7Y2mf8drX1Ndyy8xFvaTPakBF4Hhg=="}],"memo":""},"blockNum":"241826"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1alfs0urke3lmvv23uduy0kdnkus5a7yr2nejre","package":{"Name":"kawaii","Path":"gno.land/p/demo/kawaii","Files":[{"Name":"GRC20.gno","Body":"package kawaii\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tkawaii *grc20.AdminToken\r\n\tadmin std.Address = \"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums\"\r\n)\r\n\r\nfunc init() {\r\n\tkawaii = grc20.NewAdminToken(\"kawaiiToken\", \"kawaii\", 6)\r\n\tkawaii.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn kawaii.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := kawaii.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := kawaii.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tkawaii.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tkawaii.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tkawaii.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tkawaii.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tkawaii.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn kawaii.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := kawaii.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AupvzReat94n7jbtc35MyGGoKFt1xi0t+UOaemWRgL8W"},"signature":"L5qCqe1wTihnLTJeSUf3VzUOxrUv/a940fkhwa+ZN8ITtg3ZVePAQsasaEOU32kZMmDrufja1+Ol3JJ5UDzoqg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241828"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1y4qnt44aagz89dptmyl4ygxxnalen796darc7w","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"wayCMcqZyCW+hJpvtGjNEGI0O2ZneROhSUzB24f50BMeweFtsmrPVbnZ+vjunZozgVkq6SlM5yKECKI2yK6g6w=="}],"memo":""},"blockNum":"241832"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1y4qnt44aagz89dptmyl4ygxxnalen796darc7w","package":{"Name":"ohno","Path":"gno.land/p/demo/ohno","Files":[{"Name":"GRC20.gno","Body":"package ohno\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tohno *grc20.AdminToken\r\n\tadmin std.Address = \"g1u5x4a2gc5eydcn2cjacdvahxknp5sf2dgv2ums\"\r\n)\r\n\r\nfunc init() {\r\n\tohno = grc20.NewAdminToken(\"ohnoToken\", \"ohno\", 6)\r\n\tohno.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn ohno.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := ohno.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := ohno.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tohno.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tohno.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tohno.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tohno.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tohno.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn ohno.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := ohno.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A4pN9Wu8EI5EWWmFoyl5/gy9dMEWXOHGEXoPfBXKAZJx"},"signature":"B0Z65pTgPwX3oU7kNVdY8IKFGSHiBROEtf2jH+plBFYfh5QxqnLIp0GZ7/kjdbIaVjyctlJZQSvn3M36RYCZOg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"241834"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g19fs7tzl2r4hpvpvxt9tvv54gpy6fekt8shzp4q","to_address":"g17mcw908lp5y006avp4fjr082wrzryzqh2qgr8k","amount":"12345678ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9/1C31yQAezwSMHVzo9t5Sa+loXWIa+Cv4ywAobNOwT"},"signature":"rwyWULIo0K7E7L5y7X0ANEkIUto1l+zYfQaKrQFLzJxHSNuwFLKdIRe5N/Aq/3Kh/vCWxWh1umMM/9A+0DBdUQ=="}],"memo":""},"blockNum":"241930"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g17mcw908lp5y006avp4fjr082wrzryzqh2qgr8k","to_address":"g19fs7tzl2r4hpvpvxt9tvv54gpy6fekt8shzp4q","amount":"12345678ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A1Ie2uJQVGI4K/6kwsKQkZK48YDrk3Ic4DKiVS1Ee2yL"},"signature":"4zVYFq/MPHTwnn2upt7jTeGzip56U0Q6yaiBiiGE5z52fO/HNMwpK82Fx9+CybmLtJCotY2BLdgt7MIAIfVKRA=="}],"memo":""},"blockNum":"241932"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g17mcw908lp5y006avp4fjr082wrzryzqh2qgr8k","to_address":"g19fs7tzl2r4hpvpvxt9tvv54gpy6fekt8shzp4q","amount":"12345678ugnot"}],"fee":{"gas_wanted":"3000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A1Ie2uJQVGI4K/6kwsKQkZK48YDrk3Ic4DKiVS1Ee2yL"},"signature":"9kPI0mqPJmI2nmz1v70vssbuBACODL4yRXewX2flYuMYYHsZLW3ZX/SwI1TDlqTIWL73g9Cp8+9AZ9buNkHZQQ=="}],"memo":""},"blockNum":"241935"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g1ckddn039khwxzu4v5mc8n34vd9ksaks2l6c3kg","1"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"E5DTdcryWJ8wu+DRPsOroli5q/u8mkUX/gKQ0a5xVUp9V1/ThUoXazmcJmgnP6G8W5+sIpurd2op6UqJ76HXWw=="}],"memo":""},"blockNum":"242031"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g15aqqnlhfupy6m3yma99c067jvnsgtltsh2gl4c","0.000001"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"pMjz8ElSKMvTB9kJ6j7orrxaK6EEsSH4F23n2zVTvjNlVLqZ1h8/FWDiiafR6GbTf/naHwPmOHx14iXUz21bgQ=="}],"memo":""},"blockNum":"242033"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14qvahvnnllzwl9ehn3mkph248uapsehwgfe4pt","send":"","pkg_path":"gno.land/r/demo/tong","func":"Transfer","args":["g17mcw908lp5y006avp4fjr082wrzryzqh2qgr8k","1"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A5URci9hJassjEJK8dwEUhep/AJr+eQRSE0spEpAwLr9"},"signature":"PHIY4doD3QBuXO+DckUYU+T+CmXx4jMbRmw++Z6rKYUiAjYKSQOCDOIts3D5GIS2h8fMn2+FRkVaH5m9RGQ8vg=="}],"memo":""},"blockNum":"242037"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"test","Path":"gno.land/r/delo/test","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"EqsAPyq4DDZNdHpQkkm/fWZglJhODbqSbq4aX+EqlBte29C9gtLSoI+ttfS80eQ1fEdwAxTeRbZMDDyCCy2DRA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242202"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"counter","Path":"gno.land/p/delo/counter","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"e4kkz025MZXzSSU9pupNgZcs6+b9ETLKQEU4YoEHfX9K4Rn67NqIL8TAn9fgIyEyk3MnfoK/cLpt8bPlTrzV2g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242204"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"counter","Path":"gno.land/r/delo/counter","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"8vWf8rX3yq9RdqyQXKA27vp6bP9iVlO9JhkkVkiALxwsFGOKE6ofY5aJLFlcfXgnuoULLFvjhYDAIvd/uFk4Kg=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242206"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"counter","Path":"gno.land/p/delo/counter","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"eNxBHi5HSydnOBEMbOKRQO5w2xcTZp2oYyUiqd/48rI7NX+zaSpQWi0alHGhZmLybVSY3BkAEdOalg7jfGnyVw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242208"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"counter_test","Path":"gno.land/r/delo/counter_test","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"HEA2NqErAg4t5vd1w206RXz3AjV7L+Ct0GLXydPXcdA0Qqnfyhlv1erZ0dy1UO+GKB4dmiG2i5I7fQl3rvs6PQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242210"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g10779vg40u50wcl4wdgshprtqvf8554kzffeer0","package":{"Name":"counter_test","Path":"gno.land/r/delo/counter_test","Files":[{"Name":"counter.gno","Body":"package counter\n\nimport \"gno.land/p/demo/ufmt\"\n\nvar count int\n\nfunc Render(path string) string {\n\treturn ufmt.Sprintf(\"Count: %d\", count)\n}\n\nfunc Add() {\n\tcount++\n}\n\nfunc Remove() {\n\tcount--\n}\n\n"},{"Name":"counter_test.gno","Body":"package counter\n\nimport \"testing\"\n\nfunc TestCount(t *testing.T) {\n\tAdd()\n\tAdd()\n\tAdd()\n\tRemove()\n\tgot := Render(\"\")\n\texpected := \"Count: 2\"\n\tif got != expected {\n\t\tt.Fatalf(\"expected %q, got %q.\", expected, got)\n\t}\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A9DHi41T4m/ZO+B6+PbgJaqNLc8oeVtgWqZK4EWqJ7lt"},"signature":"uguIMY7f6dPUQPmwEdJJxdXIrCB7ohk33V3xWPxbK49Gr/bPO11mGTXrnlskotS3gdcFdUeyT5uyl1pHFoRF8Q=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242212"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g12ctj28qfur8df78tenng8j0djtv9r5g394ql5r","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"DViKuJ05c5YU5vx5rK8Ka68KJP/5+H26xPUY9Yd3F/MVP1ehWNDP9+3a1fKURCjMeOwYAdQFi8rdXDmzz547Xw=="}],"memo":""},"blockNum":"242223"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g12ctj28qfur8df78tenng8j0djtv9r5g394ql5r","package":{"Name":"snouty","Path":"gno.land/r/demo/snouty","Files":[{"Name":"GRC20.gno","Body":"package snouty\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tsnouty *grc20.AdminToken\r\n\tadmin std.Address = \"g12ctj28qfur8df78tenng8j0djtv9r5g394ql5r\"\r\n)\r\n\r\nfunc init() {\r\n\tsnouty = grc20.NewAdminToken(\"snoutyToken\", \"snouty\", 6)\r\n\tsnouty.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn snouty.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := snouty.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := snouty.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsnouty.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsnouty.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tsnouty.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsnouty.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tsnouty.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn snouty.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := snouty.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Amjsiu9joZhjDEceHlQIeZvuvZmd9miw9OOAZmDHWE9N"},"signature":"VxruDOdMnol/qrHaZ1VYnJn+SssllFU6VWzDX8829J8FrStGhKOXTCsM2ye9+/uiAHFmE06Jdut4asN6KHQZQA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242229"} +{"tx":{"msg":[{"@type":"/vm.m_call","caller":"g14vhcdsyf83ngsrrqc92kmw8q9xakqjm0v8448t","send":"","pkg_path":"gno.land/r/demo/minter","func":"Mint","args":["g1shk4mamklkudhwl4q9u4hqvzwr4kj9yvj2hak0","ugnot","310000000"]}],"fee":{"gas_wanted":"1000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AgiTyNXOXskkkxKv2DXaDxFtabuTPHlltbYwCOBpHL3w"},"signature":"YTQKhfNOlFzj1f3DJdLuMpzzCQ2AgEV2LeD3Q3s2B/886pNnczyCDFR54byjmOIl16WdCil6eC2a0dsJZoDlog=="}],"memo":""},"blockNum":"242363"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1shk4mamklkudhwl4q9u4hqvzwr4kj9yvj2hak0","package":{"Name":"jon","Path":"gno.land/r/demo/jon","Files":[{"Name":"GRC20.gno","Body":"package jon\r\n\r\nimport (\r\n\t\"std\"\r\n\t\"strings\"\r\n\r\n\t\"gno.land/p/demo/grc/grc20\"\r\n\t\"gno.land/p/demo/ufmt\"\r\n\t\"gno.land/r/demo/users\"\r\n)\r\n\r\nvar (\r\n\tjon *grc20.AdminToken\r\n\tadmin std.Address = \"g1shk4mamklkudhwl4q9u4hqvzwr4kj9yvj2hak0\"\r\n)\r\n\r\nfunc init() {\r\n\tjon = grc20.NewAdminToken(\"jonToken\", \"jon\", 6)\r\n\tjon.Mint(admin, 1000000000) // @administrator\r\n}\r\n\r\n// method proxies as public functions.\r\n//\r\n\r\n// getters.\r\n\r\nfunc TotalSupply() uint64 {\r\n\treturn jon.TotalSupply()\r\n}\r\n\r\nfunc BalanceOf(owner users.AddressOrName) uint64 {\r\n\tbalance, err := jon.BalanceOf(owner.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn balance\r\n}\r\n\r\nfunc Allowance(owner, spender users.AddressOrName) uint64 {\r\n\tallowance, err := jon.Allowance(owner.Resolve(), spender.Resolve())\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn allowance\r\n}\r\n\r\n// setters.\r\n\r\nfunc Transfer(to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tjon.Transfer(caller, to.Resolve(), amount)\r\n}\r\n\r\nfunc Approve(spender users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tjon.Approve(caller, spender.Resolve(), amount)\r\n}\r\n\r\nfunc TransferFrom(from, to users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tjon.TransferFrom(caller, from.Resolve(), to.Resolve(), amount)\r\n}\r\n\r\n// administration.\r\n\r\nfunc Mint(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tjon.Mint(address.Resolve(), amount)\r\n}\r\n\r\nfunc Burn(address users.AddressOrName, amount uint64) {\r\n\tcaller := std.GetOrigCaller()\r\n\tassertIsAdmin(caller)\r\n\tjon.Burn(address.Resolve(), amount)\r\n}\r\n\r\n// render.\r\n//\r\n\r\nfunc Render(path string) string {\r\n\tparts := strings.Split(path, \"/\")\r\n\tc := len(parts)\r\n\r\n\tswitch {\r\n\tcase path == \"\":\r\n\t\treturn jon.RenderHome()\r\n\tcase c == 2 \u0026\u0026 parts[0] == \"balance\":\r\n\t\towner := users.AddressOrName(parts[1])\r\n\t\tbalance, _ := jon.BalanceOf(owner.Resolve())\r\n\t\treturn ufmt.Sprintf(\"%d\\n\", balance)\r\n\tdefault:\r\n\t\treturn \"404\\n\"\r\n\t}\r\n}\r\n\r\nfunc assertIsAdmin(address std.Address) {\r\n\tif address != admin {\r\n\t\tpanic(\"restricted access\")\r\n\t}\r\n}"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"AsjvRw9HOIBOeh4jyFyGJfmj9MZYDD9nMVEV0tAodoUP"},"signature":"Uu14zNrUwvk4QvkmWmX4Pg/Q3XsGeQwQ2HASrTQl2TIksaDpZNkRKFMuhKpnK5uB+dmDses4dL8+zE6kkHJc+g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242368"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"sPNsMUf6gVGJbS5n7olaUwPK7fBz8ijARwcj+YtnsE8rYLE3zZJupJI6ixXhq0IbA+1POywbv1rgrHDEVFV0Kg=="}],"memo":""},"blockNum":"242444"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","package":{"Name":"HelloWorld","Path":"gno.land/p/teest/HelloWorld","Files":[{"Name":"package.gno","Body":"package hello\n\nfunc Render(path string) string {\n return \"Hello World!\"\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Az4ag5EUoSQ8GfYGJH756KacbFB9H0+xRyRA5de+/ifg"},"signature":"z+lVre+uceOpCNNZXIjPk+QlLaZyjnBJqkqKgxZ0ocJ3wEiE5pDNoWExKBJUW0FGz/HzopZ3Y8fI2nCHN5mThA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242446"} +{"tx":{"msg":[{"@type":"/bank.MsgSend","from_address":"g13d7jc32adhc39erm5me38w5v7ej7lpvlnqjk73","to_address":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","amount":"20000000ugnot"}],"fee":{"gas_wanted":"2000000","gas_fee":"1ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"A/+cjV0/gZkWzMqCul8aP5hC7M3yliIs17uinn/+66uR"},"signature":"NtL0RfZiH/gZPsuIU1Qa0zVXYOY2UwO3/4KWznGK09ZnyW6mZZv7vlTjGS/kUfP0yvgUfG1hxOm+MaJD5/JuVw=="}],"memo":""},"blockNum":"242450"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","package":{"Name":"hello","Path":"gno.land/p/test2/hello","Files":[{"Name":"package.gno","Body":"package hello\n\nvar {\n hello string\n}\n\nfunc SetHello(msg string){\n hello = msg\n}\n\nfunc GetHello() string {\n return hello\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Az4ag5EUoSQ8GfYGJH756KacbFB9H0+xRyRA5de+/ifg"},"signature":"CWXSlbpZjzzLNX7o/IIaS6PmjCZ7D9z7t/DiZtXuQCx+TGf8EJclfQhuOALE0CmpbfM20AO2dZU0/NpFTRvOVw=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242452"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","package":{"Name":"hello2","Path":"gno.land/p/test3/hello2","Files":[{"Name":"package.gno","Body":"package hello2\n\nvar {\n hello string\n}\n\nfunc SetHello(msg string){\n hello = msg\n}\n\nfunc GetHello() string {\n return hello\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Az4ag5EUoSQ8GfYGJH756KacbFB9H0+xRyRA5de+/ifg"},"signature":"V6d1VNU/FcGqhIad+dst9g2/kL3MbBBTjTcif8aouzdGi0ezVJNi0rBJFIxSvpa54E4d+r3usCuxoI4kIwl1SA=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242454"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","package":{"Name":"hello2","Path":"gno.land/p/test3/hello2","Files":[{"Name":"package.gno","Body":"package hello2\n\nvar {\n hello string\n}\n\nfunc SetHello(msg string) {\n hello = msg\n}\n\nfunc GetHello() string {\n return hello\n}\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Az4ag5EUoSQ8GfYGJH756KacbFB9H0+xRyRA5de+/ifg"},"signature":"fM8Ktx8/6N/5PLmRSRoTS61lppJTkGQGHQlYmeQs62AzHRX2+SrV/H6XWm8QRMzwdj13yvFrwzfAJ7ZctmOZ1g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242456"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","package":{"Name":"hello2","Path":"gno.land/p/test3/hello2","Files":[{"Name":"hello2.gno","Body":"package hello2\r\n\r\nvar {\r\n hello string\r\n}\r\n\r\nfunc SetHello(msg string) {\r\n hello = msg\r\n}\r\n\r\nfunc GetHello() string {\r\n return hello\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Az4ag5EUoSQ8GfYGJH756KacbFB9H0+xRyRA5de+/ifg"},"signature":"rd2ZcTdx6pTGVDIyap5HNPwzeAB748BdMQtOhNadKnpmooL9wFRym+bWHEoNGofMaraPZw4HYTHM5tkGv7BlcQ=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242459"} +{"tx":{"msg":[{"@type":"/vm.m_addpkg","creator":"g1v4e0gv2m6gpqh6mx0auu6x6gmep9yt6cxj6q5f","package":{"Name":"hello2","Path":"gno.land/p/test3/hello2","Files":[{"Name":"hello2.gno","Body":"package hello2\r\n\r\nvar (\r\n hello string\r\n)\r\n\r\nfunc SetHello(msg string) {\r\n hello = msg\r\n}\r\n\r\nfunc GetHello() string {\r\n return hello\r\n}\r\n"}]},"deposit":""}],"fee":{"gas_wanted":"10000000","gas_fee":"50000ugnot"},"signatures":[{"pub_key":{"@type":"/tm.PubKeySecp256k1","value":"Az4ag5EUoSQ8GfYGJH756KacbFB9H0+xRyRA5de+/ifg"},"signature":"js+idrRMtDqpFD1iY2+4PC18qSapytC2h8H+Rpe7kvw9H6gBIJo10AUaFxrGgNa72k9bJ9WYSUbPdgDvqIcK4g=="}],"memo":"Deployed through play.gno.land"},"blockNum":"242461"} diff --git a/test3.gno.land/metadata.json b/test3.gno.land/metadata.json index a197aaea..05eded0f 100644 --- a/test3.gno.land/metadata.json +++ b/test3.gno.land/metadata.json @@ -1,3 +1,3 @@ { - "latest_block_height": 241560 + "latest_block_height": 243072 }