Search in sources :

Example 16 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class NetworkResource method getNode.

@GET
@Path("/nodes")
@Produces(MediaType.APPLICATION_JSON)
@ApiOperation("查询节点IP [3.7.2]")
@ApiResponses(value = { @ApiResponse(code = 200, message = "success", response = String[].class) })
public RpcClientResult getNode() {
    Set<String> ipSet = new HashSet<>();
    List<Node> nodeList = networkService.getCanConnectNodes();
    nodeList.addAll(networkService.getAvailableNodes());
    for (Node node : nodeList) {
        ipSet.add(node.getIp());
    }
    Result result = Result.getSuccess();
    Map<String, Set<String>> map = new HashMap<>();
    map.put("list", ipSet);
    result.setData(map);
    return result.toRpcClientResult();
}
Also used : Node(io.nuls.network.model.Node) RpcClientResult(io.nuls.kernel.model.RpcClientResult) Result(io.nuls.kernel.model.Result) Path(javax.ws.rs.Path) Produces(javax.ws.rs.Produces) GET(javax.ws.rs.GET) ApiOperation(io.swagger.annotations.ApiOperation) ApiResponses(io.swagger.annotations.ApiResponses)

Example 17 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class SimpleTransferTest method getUTXOs.

private List<InputDto> getUTXOs(String address, Long limit) {
    if (StringUtils.isBlank(address)) {
        throw new IllegalArgumentException("address not be null");
    }
    if (limit == null) {
        throw new IllegalArgumentException("limit not be null");
    }
    String url = "/utxo/limit/" + address + "/" + limit;
    RpcClientResult result = restFul.get(url, new HashMap());
    if (result.isFailed()) {
        return Collections.EMPTY_LIST;
    }
    List<InputDto> inputs = new ArrayList<>();
    Map data = (Map) result.getData();
    List<Map<String, Object>> utxos = (List<Map<String, Object>>) data.get("utxoDtoList");
    for (Map<String, Object> utxo : utxos) {
        InputDto input = new InputDto();
        input.setAddress(address);
        input.setFromHash(utxo.get("txHash").toString());
        input.setFromIndex((int) utxo.get("txIndex"));
        input.setValue(Long.parseLong(utxo.get("value").toString()));
        input.setLockTime(Long.valueOf(utxo.get("lockTime").toString()));
        inputs.add(input);
    }
    return inputs;
}
Also used : RpcClientResult(io.nuls.kernel.model.RpcClientResult) InputDto(io.nuls.accout.ledger.rpc.dto.InputDto)

Example 18 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class SimpleTransferTest method broadcast.

private String broadcast(String txHexSign) {
    Map<String, Object> paramsBroadcast = new HashMap<>();
    paramsBroadcast.put("txHex", txHexSign);
    RpcClientResult postBroadcast = restFul.post("/accountledger/transaction/broadcast", paramsBroadcast);
    Object dataBroadcast = postBroadcast.getData();
    Map<String, Object> mapBroadcast = (Map<String, Object>) dataBroadcast;
    Object valueBroadcast = mapBroadcast.get("value");
    System.out.println("txHash: " + valueBroadcast);
    return valueBroadcast.toString();
}
Also used : RpcClientResult(io.nuls.kernel.model.RpcClientResult)

Example 19 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class TestMain method post.

static void post() {
    RestFulUtils.getInstance().setServerUri("http://127.0.0.1:8001/api");
    restFul = RestFulUtils.getInstance();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("contractCode", "504b03040a00000800001d5f2c4d00000000000000000000000003000400696f2ffeca0000504b03040a00000800001d5f2c4d00000000000000000000000008000000696f2f6e756c732f504b03040a00000800001d5f2c4d0000000000000000000000000d000000696f2f6e756c732f766f74652f504b03040a00000800001d5f2c4d00000000000000000000000016000000696f2f6e756c732f766f74652f636f6e74726163742f504b03041400080808001d5f2c4d00000000000000000000000028000000696f2f6e756c732f766f74652f636f6e74726163742f566f7465436f6e74726163742e636c6173739d55eb56135714fe064206920114086d6c15bcd40650a7174a2b2002a956d2201430add0db6172128f4e66602e283c537fd8b5aa485dab0fd027e9537475ef490c48c2c52e1667f63967ef6f7ffb7276fefef7cfbf008c62278114f23ae613b88f85045ab0d8813e7c97c4129675ac24a0e34102057c9fc00f78c8c7abed584be047fcc49b9f79f985975f7911bcacf362e928ea903a4a1adad7852f0b6e20350ce7956b3aa1ed9b5bb4372dd7093c61056629742c9355e69c407a2561c9090df149e5a8604a432c931b2ad027eb1609a33baf1c793facac4b6f45acdb74d293772d611784a7785f3b8c058f94afe1ca111ed959b6b6215fdd15e52c49cb2d3b6a473816d96b396260795230ef5226ff586c09d3164ed95c0e3ce594271a4fd61a8f72b9d5b9d5a1233854281e3b6272c70954b04d3cdae85b0da9018a422a4adf221d15c80a85d6dbc49f860e3f105eb0a22a84a24ba75895ce287f3eb403b561cb65694b2ba00057357455c4b3ea3eeb860e1fce69e8649659e1ccbb4555dad690d8aa33d490397d2c71ba2ca9f2696cb29126d9e87e6859d2a7e8d24b4488b81794afa8a0338ee3062250ae4377fb09ad63f9c527a6a8eb988b629bdb8093b615755e3c935bcb0d51c871decf15c915a771ae48702d6b54eb84278bb2b2c1d6d58e235ddd124eb571af9ee8b1a0e4534eff6628bdedaad108a19c3e5ddd75cb25e953ada809d83e2a711828db9c171bec6059951d11841e39586950986cce73a658f428ab130794f3ca0f260f3450dea5f699a23f6aac8849cde69ef0abd15ccae48e078f3226aa1b0d178e57a6842fbba167c9bb8afbfdecc1f77883591948837ae7f2310363b63657743c32a0f0984d9e18780fefebb00d5c42850a77bad6635347876b60039b3a3c033e020321b6e891b0e920cfa2c19250b68ea7069e61dbc097f8cac0246e1998e2651a33066691357017df50be4e1e3cf42ef70bb0b0fe387a97e79be66ddfa435c3c3b02f32ac88e09139abca3c36cbd2a3fc6f093b940b3475d3f5de38a434c177cd6f183873da09ad41fcdfa9f80eafa23d531da1855394f2cd8c6a2bcb805f784f66e870835335df3ea10765d3a7c0698b724ba320c6b5d670ed40c39f30b8b8f5cf35addb037a6bf41a744f6e868adf6c7f66b549420ab848bfbb29d03dfdb7700fd30f743bc9699ca3f503da2da20dadf4ed1bde8536fc1a2d0f075ea17517b11768fb9dce5bf021ad5d914e0a3142ea259cf3b4eba73bb2c3050c00913448fe68dad31bb94c778cfe0f3ac816981efe036d23d7aeef211ec378f235f487fdb1fe78aa3dd5914aeca27ddc608574f2253a5e229136f6908c61ac33d5d963bc42673af9bccea49ff882b0bb88c345f23d465e6f914766b403837dd5194de30a3e223e2c5d25a925923e46268a661a4384108ba46192e29134826b942196aee306b167c9a4b30479fc0c9fe05324497780e4cfc9db189d8fd26d27be20cd38f91aa3afc68fb896df1c79601f5180039480ae187eab47138fd88d44ec072356469dbd819b513e591ac704dd6a3c176ab8b769cffac908770fddad0db0e6813225ebb0c91aacc6f3a556a6c360671ac1468f057b13fded287a9a5947009f6dc5f343c037df0198e620c13503ee69049e3a16f8eb48fbce210734636bcc1bead6db58b7ec8975bb8739ba7ddb472e42f9f63f504b0708372f2223be0400002f0b0000504b03040a00000800001d5f2c4d0000000000000000000000001c000000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f504b03041400080808001d5f2c4d0000000000000000000000002a000000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f566f74654974656d2e636c6173738d935b4f135110c7ffa7b72debb640b92988566e96b6b8a278835a51bca155133124fac45236b0ba74b1bbe5c5f811fc02be2b2f3c68a235d1c4f822267e26a3ceec6eb12c25314de79c3367e6cceffce7eccfdf9fbf02984249460a536d88e21c9bf3bcbc20e1a28c4b989631c3e6120a3c2b48b82c43c6541c451eafb0998de36a1cd7783a27e1ba40c85811e8283dd53635d5d42aab6ac9aaacce084865abe2e8154720d5b4b9e0540d773b56302a8653140867c617052273d68a2ed05e322afafddafab25e7da42d9b3a275b65cd5cd4aa06af7d67c459336c81b19261a9959a69ab9b96a3ab5cb0aa951d759dce32d545f2cd3bfa3a158baeeace3c61a632e3fb41a3b6b7d99509ee31984ca9738d9b74efc9dfbd8b6c37c5f464f687f04131fd794d33ed40c083e5a77ad999197f2220acbd52f95b02f14dff26028905472b3fbba76db84250db68774db3d73cf548ca792a54d5ed9a4924821671c7f2188872c1aa55cbfa4d83154c34d439c50515f4e1b0822e742be841af821bb82930f23fea4ab8a5600c2725dc56308153027dc1eb5fab19e68a5e25a55f182bd36905f3b8c3e6ae80924ffbcf643a3d446f69e8a582490cd3830aea4057e14e989a6d73ab9afbe03a49a7e4def6ed39a421424cdbd8d02bd4ed89566ddae7f2d16702f18dae1d188f13f46da5e8830bd18f647567a42c8d7108569bec115aa9340a1aa3d94f10efddb07eb231d719c60059c50bc0510cd228700cc7f7257f40e85d20b9ad65729ac8bce4a2cb46d1d9dc4784fe95965d6f827292ee09bd5e947f02cff83e5c7808c32d40c24190ce962023186d05120e82f4504eef01202c2817a6e7e79ff59d62c2342e65736f118d6ce77690ccd611c9d1ff0da2e1eddc3744efb15c3be8e6214fff3a62afd1be0539effa298aafb1834e1ec817ae43da423bcf7e408a6c2112de76bbd3ef5245c9f64322c6c3443648dd2992cc4c9cf65876899790c138910e620e59b221e45c7ddaa4a4f885a312f231d12dcff295e84bf2aff4ca9767c2a34e645de23853143a8e0fac79acec26ce36762f1506fef1255d86516ada18553bd9a4e484cfd545712a4e5339a6398648e7acf843da86888750680e7f1e128c36b9dbf687740e7735f305f2e34f389452ea0dbe64aabdde804aa43ac8d4d1197c19f9a69791d97d1967dca8b37f01504b0708d5267fac55030000b2060000504b03041400080808001d5f2c4d0000000000000000000000002c000000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f566f7465456e746974792e636c6173739557eb73135514ff6d5ebb09a12d6d29ade5912242480b014585b660a18044cab358015f2cc9926c9b2625bbe129d6f71bdff84047c70fca17466546c2a8338e9f70c62ffe2b7ef38ba39eb337bb4db69b5267da7bcf9efb3bf7fef677ce3ddbfefecf4fbf00d884cf235883c93016a0c0439187291e4ef350e2c1e0c1e4a1cce03332ce46700ee723b8c0c3451e9ee1e112ce2fc0b36c9dc334af4ef3ea34af4ef3ea34af4ecb782e824e4c2a789ee717787851c14b0a5e56f08a8257d9f19a82d715bca1e04d7e7a8b87cb32de96e0d333125a46c6d5336a32af16b2c99162213b202168ea665e93d05ab3346a96746b3190d18cb48450ba5838a56725c447f462b250ce1bc93345534b92db2ca969333959cc68f9e418f9862d2485860c5335cb860429458714cf16b49284e54ebc136a642692db339992661814152d69e962b6a05f500b6922d521484daa662eb943cfa60aa696d54acc5a37b549c379a1b2a9e79323ba61d2527854cf16e8e812c56f762d0fde917f8af61dd8c6fc07f5826e6e93e08faf1d2325860922a179442f68fbcb9327b5d211f5a4d0ad9856f3636a49e7e7aa3360e674633e72ed2a90fce7f985b29a99a20cb5c6d77ae4c8108b6d71f71a535328f48848627b5db49346c570108be3b301bc894c9becb4922d1bb61526df7035f309da79deb90f1b3381bdf3ae19fb5d5222b58e12b5c9ed9fe5fc1f296519aa9bdb4aceeccda777d4e7f2fc949dcf01377cdea7f2b6ace368f5365035a58440b627104fd96f7e40dc92588dd60dee09bf4a15dd139f1bcc9b37d3e687eb6e56a72de4ecbbd56cb8c15d716f2c6f1dd24e97d5bce1aaac0327c7b534897a9cee7fb1beb95497ac4ba29a12169210e9897dea94a535f5487abb9c6ae4c4850bd13b94f30453cca228570991d162b994d676eb9c9ae6996bb49e0f89620bfaa388636d1409f446d1c7c33aac8fe27e3c1045121ba2d8887ba3b80f9ba27807ef4a583dbf6b2ae3bd28549c94f1be8c0f647c28e38a8c8fa2c8818458e2be573bca7a3ec3190a5ed433fdb1283ec6273c7c4a6fd017b3da6e7f6c253dacec8b719fb51e16d083e8b6fd310b27daa808bf6a79ac5e6a811711b8b6617248b82f66f54611f15914e3d8457dd2adbf28b8e1bc6a58b7a1b66d584eca4f537dafa9dbc44ec51d95b3dbc0d2b96a941a97577dd9149c5b47e5a04e4d69056a85ebbcfad82c573505032ebc5d9d73e097d2ad9c7379b8f1327ae893bf86fe4a50e0e34224cbc7b568cd7dd5992ad29aa91ead994ad29aa92aad998a15121eb4eccd68279bea9ac601f2246996680e266e41ba614106690c594e055b698c0a00b6e1219a250c61fbace01fe0fbde15dcee19bc03c3d5e06d84f6313ad17b13be99a32396b79362baac1d3a04aaba035bac031fbc13bb3c88f8dd44967a12d98d87bd88f8dd446214d3d3800827820fdee34924e026b2ca9348ca9b48c04d244e316b1b10e9ab1279047b3d8804dd44fa3c898c609f1791a09bc8068ad9d8800897221fbc1f0768cd4d24e426b2c98388a8d383e43b84c3d54d0ed6120a31217f0da1cd14bba5012151fba3ce29ecd9ecdc8623643d8a310fcde4eb2eaa839e9a3d86a3b334ebbe09d9add910c56c6f4091af2d1f7c0cc73d88286ecd767a12791c4f78254f7113d94331a90644b86ff0c14fe2290f22613791114f224fe3841791b09bc8418a39d48008372e3e983e90622fe92bc2f8696e4ff47e8360e07aef6d34252a88f4d2efd708faaff7fe8a05fb386f7df4fb257bb827dd463b4fe4f35510bd8ae66bf4d5b3fc02e017003ff9fc152c74007e1b10108000f902b580800d080a40907cc10a9a1c40d0062802a0904fa9a0d9012836202c0061f2852b687100611b10ba8d369ec817fa118b7cb88666b67f831cb88680ffba731dd6d3c70254d03295742755e632aaa80495c65e2a8e3ca5f53225f65bcad01f94a33f49ddad567fb374b5d5272b8d0ca9be0c7f41239f0fa7c8dd832eb949fa1b8b6464978424d74f476488d395b36f926456537f43246161c24a402bb31d6c59d19d13d2b39b646f63f709db1f10fe80db1f147e12b9bdce2f3b962210a4f2e23a4458f849dc8e3a3fe9da9cb0345d2241ac74cf68b91a611a4fa10d596aae39fa6ce9a4e438693241ff46e7710593f80e859a0abe51d5b00d5f1096ef342ba7a369d190f42f16c347da914c64a36afb24696ccec71373ae1ead7fa403c79d0fd155a2c41773ea67741ebb85aed6bb2ae8166958daba4cd8a47d77eb726107d85e21ec206362c2962be8695d296c85fd770b3bccf62a6187c86eb954c13d15ac763709a3a6494c394d62c242e5ff03504b07083101cfbe8e06000002110000504b03041400080808001d5f2c4d0000000000000000000000002c000000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f566f7465436f6e6669672e636c6173738d56dd731355143f9bfd481ab669132895a6d00410d234103f50942222154a4bca87c10215846db2b44b37d99a6c181d8607c717ff007c601c47c719f5056774c61647671c9f9cd177ff1b47fc9dbb9b4db2a48cd3d97bcf39f79e7b7ee777cebde95ffffef21b111da1d5388dd2ec000dd0591ee67898e7e11c0fa5382dd079de72214a17a374294e719a8dd13b3c9779b81ca37763b4c8e295185de5f95a8c9662f41e8bd7a37443a281a66b34dccb56cd94489a97286ad6ab9e366c35175ab66baddb66d9b4cd8a8b0d4b12256ac6879e3ee3b4ea6c9c9368f0aee39a33467dc1a95ab73f92483b6ed52df784446a6e7e7e72512265c6a9e2cca1925537cfb76acb66e3b2b16cc3922a3915c35e341a16ebbe517157ada644b992e514eb2dbb59e4e38b15a7ee368c8a5bace12cbbb8c8219dfa6d6b651ab01167698e23c584b4c4a25a59352b6b12c9b949001f2cbb46656dc158f783e82ba65bee248f4d485f6ff618959c401fc7d6d36d5ee2cd2e250925cc929213d113b5903d89531642e421ea9c7f4a6845c9897486ace6622fb7c3d81c3269e6072dc3066323b9d21de3ae51b48dfa4af1c2f21d1c37cdb94b0e33fdd49260da70d13ee06dd568ae7a55d21a6613d861739db2dbb0ea2b12edc84d76f97b56f8c7cb4eab5131cf58cce850a7248779af4e197a5fa7e768974e633ca4695ca7ddb447a7091a8fd24d9d6ed1219d0c5a96e8c0ffabb544a36118a75a965d351b28debda0998f6574aa50950700db56c8f86d7d2c83540a99706b7bdb6f83a442a6b7bfbd15844d16323d4dce2749f7759aa1b7519330b5a2b228df583bab20a16675ad78ca76b82f075c2002e4da3aa84673ccd8461345dcde43b5308269cd585f4712121dca3d5d88a76be39302c771f4f03397979ebd3cb7f53265f10e8de2ad5229c2658614e14a8b19c51633ea2de609a1274942576431ee85768d64f8120de51f93949fd8a0483ebb41f28fc2611fc6142918073126106a08e330ed87250347b8d1f3748048481c5e121203904598837e988fa14731a77bc3e447d40d52f223da06a99d9063a4f981b723e40e841cc1b813f65111fa88409c0e42a783d0693f344b9cbdb78ff3d7049c9c0fe733ec8961ce6e0d273f12dd20ad036a8fc0bf0ba0c6002a0d50e300b51bda1e1c3c21809d10c0b301b06c002c1b00cb06c0b23e3096b83451ec9ca4bc0ff11e22b1e7e1fc4fa43ca4414caaf235a9f22348117cf283cf7d4dfe99a20fbe604579040fb90bef3e54633f4a7e10b172883285f30bf82b0abcba17c1c73b25da484e0eb2b940877c204510c0db548efb7dc087268c2f779da3fae74838b1e83b9f001ace5a132477d88c63263a0a9fd7c4093b85ae05cc693e7312bdd017881c0632dd17c88bfd81c861206fc2e7e41640c67c20e9a03445a17b4004e3dd4066fa0279094cb58144bc10f9347a2d0c64163e67b70072043dc2815fa157fb0051c340cef505721484f701a286815c80cfc52d8070db72e0d7fb32a2858194fb0239d69f112d0ce40a7cae6e0164c267649a8efb67fd8d5bc365aee6a7bec57d7934f50725f29b149bc2f70ddf90a9df6960813bb980efc1c3f60d2af07d6a6b0a34e54b5f51a1a86d4583a27d4551e53b52e4ce5ddb2b1e93ebb87137d0b737419081dbb40c822a7486aa60c0ec7a33ab4106557a03d94bd83f8b163c80fcf80e2669209a90fea154944e0eea7ae224a7f85650f43f91381371c97f0722c399fb9f7c7a7c7822bdca99f0272cb7da26bc1e1ee0c0a20692d6594b77f2f11ee03b78e3d6f036d9a8540d48eb680aa7ab1297fc3c12e8f953a225187d9e9427b8b41180076ee9099753c81109ffbcf6a8f0c06fb79fd65df18b4154fa95e2d71ed3b694be291ebdc8262552439e2cb33cecc9ca262553294f5637697b6a87276b6c1f81bc493b7f0875a2dbd589a5a0134f8b5d67fe03504b07082286dd2e79050000f50b0000504b03040a00000800001d5f2c4d0000000000000000000000001c000000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f504b03041400080808001d5f2c4d0000000000000000000000002b000000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f566f74654576656e742e636c6173738d54df6fdb5414fe6e9cc449ea266dda655bbb6e651b6beaa4333f36066dd695950e02e906145582279cc44abd7a76499c4a08f137f0ce3bf4a50f20b14e808478ea24fe26047cd776b2d6290259bef7f8bbe79ef39def9ce48fbf7ef90dc02d7c94431177b248e14db9bc253f9755ace450c3dd31ace2aeb4ee49eb9e8ab51c72b893c1db72bf2f97f50cdec960439a0f54bcabe23d81f4bee75bf5b6c044e3b1b96f1a8ee9768c86e776560454dbb79ed4dbbde161dfb71da361f77c1e66b7ec8e6bfafdae257035765c8bc75ae58574cd766d7f55e05a397e1c8fbeb82d905cf7da0c5d68d8aef5b0ffa469753f319b0e9162c36b99ceb6d9b5e5770426fd1d9b3c171ab667b87da767c8b28c96e7fa5db3e51bd6bee5fac636b10d69914de974942ff706916eff17bb338a937cb31dcbdf8eb42c961747d5ccd1a13e1074e87152d2eb23e0d9425a5ff44d8741ce9da4faa8f9d86a51bacf048427551a3922c7fd810202e35bbed9dadd34f782ba394502991db3b713caae9417ebccd4b57a7d87ce821f19dfdbf2bbb6db11983e555f88ca0ab7bc7eb7653db0a58ef9a1da37a5ab8619d4354ce39c8612ce6b781f1f08bcfcbfdaa5a2a1a18c45159b1a0cbc22703e9efd7edf76da5697257e150ef4f2bc86877824970f05c6aaf3d12c2fcfb39aaf35bc8e5b1cebb846023303464332bdf6ae11694655d8e90c1bb9ee983d7660ea941001481df2a79b3600865da5b0e6de9ee5725296caa3428e6a1b55b712f31fb4fc5ffdf112ff268a204f24f8507cfe8f24a4fec42e04f645a469cf6096f62522bbdc15ee05fd19845e798a845e7d0ae547420ae6b81691e4aa711d4716793e055c26321f5ec3155a082c994e04964c982019796f805c241252b84aec1aae7395040ceed227a5ff84c40f81834c9b0ec062902a0c928a52718a7023627ff2b212bf5c3ae372c8608118e72b62f03c92a0a957be472a795839465e3f42b2c2f73ba494c3caef486d4a7ac798965b95ef11d2dfa270805c35c0e925291c634a6ec4949fa126708082b49f434d1e20a91c0e552d9111d804950c2e90e71cd9ad52b117ca3687ca36a1a342ae73d8409558024b44279155f3e24f5c5271332d4ab935a9047f2c5151df0413408542dee37ac0392359d426aeccee846c0b7ac0342b200f3eafcdbe60980f58dce0282d305f3960560a4346cca698e855bcc68492cf652427d7c4dfb2f3644432b411d90921c9f1271891fb98716457cabf22f7e9338c15b5a301c37cb110da8ab427681f6132ded9a5139d2d0fc7e276e0f5c63f504b0708daefa656a40300003f070000504b03041400080808001d5f2c4d0000000000000000000000002f000000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f566f7465496e69744576656e742e636c6173738d54df6fd35614fe6e7e39316ed286b6749442b741499c503306039aae7464b095854d5a512578aa9b9ad660ec2e71fa82f627f00ff0bef5a50f208d206dd2b4178ab4bf69daf6dd6b27a5294855e473cffd7cee3ddff9ce71fefef7f73f015c46434711977248e373692ecbed150d5fe8b88a6b3aae4b731573d29bd350d3a1e35216f372fd529a852c6e64b128ddaf34dcd45017c86c07a1b3b42e30dc78646fdb9667fb1b5623f0376a02ba7c570ffc87ee8640a9e10696dff1da9644ad66e0872dbb195a4f8275c7b356fa913c9799777d375c10a895062f3dea25e51581549da840a1e1facef79d276b4eeb9ebde611293682a6edadd82d57ee6330156eba6d81ca073238db8e1faa0c4be4764beec834b7e1842bb100c552f9b0044371404f05934147d7c1f9a9637b2435f6ae0e3fac3d729a61adfc404004b29843af543176c8eccba1dd7c7cd7de5235b2d302d94dbbbd1909932c959798a4e5b43b1e830537d930580e5bae4fa6a307ca8950d9d3e5a0d36a3ab75d25e4013d6665b881097c6d60146306c671c2c02ddc16281f59540ddf18f81467357c6bc04445e0c4208b9b1dd75b775a54ff69347c73d3069670479aef04f2d5e9fdb99b9b66613f1b9885c5111d544ae0648f589f537bfdb1a5982881384659b6b0eed96df6e1f8014d144849f207bb2e3073b40e537b7b6bcbf1393b174a87b53e2c7f5c786d20be37101f8cc7c7fcda8b207f24f8636ff8779090ede19a213e818f684f72779f78926bc17c0d61565e2161565f21f9521d98a42d22457b8cd6400e43c8f3778ac874740c53380d284fa611ca938912f4cf302a4a637195efd2e66f48bce85f9e51e088bad08802e20b056bf8e43d87938387c7de7b9803151f7e1317b86a567e453ab55bd943deec2255e1f30bd2c9ddca5f48df95b4f6302a972a9f2e32cf51d8815e5538a364ea3d8cc88558b20b6d0705e9bd8596da412ab9cb1c49c56b9c3cc0dc1a77136434451d16a8c4be6aab7dd556710e33643a853ace134ba0a404c96979f10f4e692867c4a8be28ebe7b71197f44c7515b810b11e3215e3ac64313f7c667233e22a61f2cc4978757e729f5f5e7138c7e198e195e715aff1e8c298d771a6a97227149bd3488d2c8affa874827c48853e623f2124b559d52249ed47d577a0f407f4fbaf71ac68747bfcf2c542b7472a5f1ca6dfc5c86037abef74b3d4efe64515f5d9ff504b07089ec970336a030000d8060000504b03041400080808001d5f2c4d0000000000000000000000002e000000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f4164644974656d4576656e742e636c617373a556df531b5514fe6e76970d2124107e432914d4860d74eb8ffe3020a520556a68556a6cab952ec90e2c0d09261b661cc719df7cf7d1e72a2f3ce88cd051671c9f70c6ffc3ffc251cfb9771393409d3a0e70efb9e79c7beff79defdc1d7efbf3c79f01bc828d0806b1d80e134b3cbccec3320f3738f08689372358c1cd08dec2cd0e64d85ac12a2f5779b96ae25604312c86719be7b77978278c77c3580be34e18efb1236be27d137705daf64abebb9217e8ca6c3b7b8e5d708a9b76a654dc9ca598e7bb3b1ceb6063a954f4dda22f9068c85cf3cb9ecc3538a5523fa6ea7b053be3557c0ab5af799b45c7af965d81ab2de1b98c57b28bd542c5661c768eee283b39dfde29e5dd829d656c74eeec3ca399f38a9e3f2fb09c6c85fa2feb00602baaa9ac80be449708c4335ed1bd55ddd970cb779c8d82cb044b39a79075ca1eaf03a7ee6f79c4cf7a0a60778f6a635fcfe719ef322f08727ff3419fecd60edbf9ff149eb9724cb57dd3f5b381d089e4d449a9396125503b16d875c17b9b76d4250f07799586331b754f9f70fe17b5dd8fab4e818eee6b2cd5ed8d6d3747eadd1710a5e64e0c425228874077aef94eeed1aab32b4b4eaf86006f39952d25ba969c5aa14bca6ea55aa064418bb05f52d404226ba56a39e7def058abee46512ff085514ce25e14c31889e20c0fa3381bc518c6a3b88f0f0492cfda22263e8cd28bbf64e281898fa298c59cc0406ba917ab5e21ef9649a44fd5634dd345eb78c8834360a7c7d53b4d8fd3f3538b40baf4f804c52794afc271f15914d77091125b2b27305c835d475cc93fb2255059b0ac927ca9e05448979ea6a6904e2a7eacb9b39aeea95537d6dc142483b3bbeb16a9f3669227fbec64eb05f5986dc9aff5c653f3718e3ea2831018828e10cb47dfdb102b28671251cea423e59c93f604c2644fe239b29f27cf97341b340f5b4f20acd42142d6f421346be610ba35a41fc2f88ea21a5ee01cb4d118a7bbbad08e6efae826d0433f43e8c579f9a59727218929405a8c48488b3185a4c5a83469312e1d16d9d1206b8cf0e901d214f9a6314323e3b469e61cc3fa1ea16f6502436a93ce0179bd3ac408ae17b870ea66ad75f3c8a99b6d5c3c65b3deba79ecd4cd2fe2a5a0bc8d9b8dd6cd93a76c56dc5f261fbd2285400c90872bf6d84a7d03433f481d23661da12d457f5fc3d00e52bfc05ce5c21ca397a769fa3b42f82bc4f7e931493f65317995a0914f6b4cd06a09ba4ad0c9a71fa1bd9ea0d7128c63f4f0443ee3074442d8479ced5f61eafbd0b5837ab79ca5de04b13289d720a9394a72cc9328eb5494cfa9bacc7d5cf1aa77cc635cc615623d8a2f70957c21bc2ae58d9b31f107ce9848b78901f9db1f59e0cad2f72590e9774ae6065b5775e8b4640d3a18d35cd7d8c89662cf6e2d703facf975e527c2d1263f718d5b9267a7808a8cfcc3af5f76fb25eaffcbc4ee0a9608f103c27b5ec6249480570ffd13f31a711792cd1cc2dd0be22ff421447c8804d908ec9010d9e6e5dde6259d71adde99db740bf7cec24f88dd7b8278a2eb08dd8a7722d1a36c8ded5e6513c1ee449fb20df6f7937d8481d6be9c6fe8cb857a532fc8aceb7f03504b07083372bf1b7f040000d6090000504b03041400080808001d5f2c4d00000000000000000000000031000000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f566f74654372656174654576656e742e636c617373ad555b6f1b4514fec65e7b1dd78913e77e4f9342133ba9290d50929086a64d9ae2a4975c680b25ddd84bb2a96307ef3a124248bcf1ce23cf85bce4814a241520219e82c4ffe05f20e09cd9f5c65edb129190ed993367ce9cf9be33df8cfff8fbe75f014c62378c2edc6d808a0fb84971b3cccd0a4fdc53713f8c077818c62a1e5ec01a5b0fb0cec3751eaeabd808a3097743f890fb47dc3c0ee149081f85f071084fd9f1898a4d15cf048207794b5fca0834a776b5032d99d572dbc9543eb73d2d10b00c2bab0bc4caa656ad822127958c6ea629c6b0f43dd35d5eb48c6c326598164534ac1adb39cd2a1628c575cff44ccac82773c5ac99e4fd93e97cce2a68692bb997cfe8d9e40663a2bcd3b394263863e40c6b566071d40bb11a573dcf19aeb10dc23e4fdb084453464e5f29ee6de985356dcb669a4f6bd90dad60f0d8712ad68e410c27ea40d60ff49c2521cf1774cdd26ff398707754e6fa7cbf942fff7ff0f8cf0564be0ddbbab5e19c736c74acfaa41bccb380d62a789c224429d66c39b4556470051132dd88f6d1ea004ea252925b5236aa59b238f192ad21175ab98aa6aa9ce7d00e6372929768552a61daeb3d575d83fa67452d6b7a08dfdbdad5d394fe8980c857de1e674a6a4ab3041a572d2dfd7c59db97d2a0ab4d90773473c7d6a77f746c893629e866314bc18206212b6fd75320bc9a2f16d2fa8221cfc4a3bf2bbc670423a0a607bd11f4a13f82016e063114c116a8f48973085a45268219bca782607e1ac13c6e09747a4ff966d1c866f40209ea0bfb5d99a2bdb6b1c38d4190c787e4933235344c83e1f1217e43dc817c49a68688e897112ce22a3d2adeca09f49430bb70cdccf3a484280be648753eab99f2d0cba52a9d54fca64a7d57ec53aa6e53a52ce818b4fd7d3d47f763a296b8ab5c4e25a63df1256dd48dc7457ae9bb20d00d053e3e3bfa53f0f1f1c97ec0e9e91029e6a2b48711217b0497c87e8d3cdf501fa0be27fe0a229e38862f3e7e0c7f7ce2184abc5b3946e025cdfaf13ac720486d94f66a46035ae89f218656fa74a30d97e5df91cc84518c01d26244425a8cc9272d46e59716e35210273be2440d123ec5419a20df3826a8659c49ea392610ff11be1f6400430a4a67a7dcde4e1270b617b82217f1e2598ae6cd8392e04b7775587a7b694d9fccd06147b904820e01813770b50610bf17c8604d206fe25a2d207e2f90115a73a90e10ae1f6f3c591388e20572b92690b76a0351bc4012b466bc0e900107c8db78c791503990801748b20610fb7caf93ef5d4c3949ee97032ad39c0de81aad9dac03c856f7998a82524525bd4f93452f914d5b749287b5f7229ef81e01e528718aa6f8098209fa7d8780ff28f11bd46596d829dab81ba7df0942df227a480f92f453141fbd1de0279fff040d6e80bf14a0d8010af994f200a5141038452b77e40bfc84b00f8788b2fd3b54e5108affc8adc100dd7250bd54aa571731ea273eb3f4d9c40d7c85395997219b975b9717347f8358f7e36b8a1823deefcb8b12559bc45fe8537133283ae5b7233cc7e7476fb4a38d3f9da3d8b4ebd0189735b8c098669a077b776cf6ec26e611763f2bf915dbaf78fdc4351a973c1b05ec99de337e1df2ddb84d2fc902496f91a0dcc1532c959df7a6c3ab15298a5b20a0cc6606a19639f10fdae1233e44826c38b64f888dcae1a3ca21e55874efd22eedc2da99fb054d8f5f211a6b3e418bcd3b166bb56d22db126bb36d85ed76db0e704c07d927e8f4aa7fa54cfd73ee35bc23a396fe05504b07083c1bc221fc040000c50b0000504b03040a00000800001d5f2c4d0000000000000000000000001b000000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f504b03041400080808001d5f2c4d00000000000000000000000029000000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f42617365566f74652e636c617373ad580b781cd575feafb4bb33bb1a215bb26caf1fd21a1bb392bcc8d846d83296651b03127ee0f78b1856ab91b458da95775706d3b46e5293a69047e392a6d821bce334750850b396a3c4a124310d09812690b49036a13434699be6d524841ac87feecc8e9eb6c4f7e5b33d3bf7de73cf3d8ffffcf78c9f7dfb0b67002c515d2124d06fe0740845e80fa20d5f90c740085fc497e471c6c49743780aff20d34f9bf88a89af9af85a0867f18c817f0ca10cfd26be2ebfcfcae31bf2f866095af15c08dfc2f3065e08611afae5f14ff2f8b63cbe238f170dbc14c26c39febb21548b4cb5c854e37b25f867fc8bc8bc6ce015f9fdbe1cf8aff2f66fa2fb07067e18422d5e15d3feddc46b26fe2344037f14c2ebf84f133f16a19f98f82fd9f1df26fe477e7f2a5a9f33f1bf22f43379fcdcc42f64e597067e15c20afc9fe8f8b589df98f8adccbf61e277e2cf9b26fe5f369f13e3de12bfde36f18ea140254a99aac850c521ac573e53f94d153095c1ddca0ce28b2a68aa106d57252165a952535d242b653298249b278754b9aae0b16a8a0c2b4d35d554d3b8cc13d47443850d35c3503315ca7a92a9cd7622dd994ade1e4f256c85a9eb6e891f88d7f7c4735df5ab939d2da99cdd6967962bf80fa47376965b1c81be5cb2bb7e7dbc972bc12dc9ce543cd797e1f696e1ab5739c3ee78aab37e5d3ad5b97c5d325d9feaebced68bb6fa443a95cbc413b9fa9e74bbdd5dbf9d736b53b964eee0f226ea2d1119b12ed3ce7333e3691eb15c38c83b23dbbeaf7e557b7bc6ce66870aaf4b6673a39435e93f0a81ab92a964ae49211c1d3b2e35db157c6b68bd042699b237f4f5b4d999adf1b66ece94af4b27e2dddbe399a48cdd495fae2b49772e394f243afa5289fad5f1ac2dc1a005a55b72f1c43e7aa4b7ebd4cda25d898c1dcf515b3c3ac4f42db94cd28bc4d0993da3a76a269a095a9cccd93d0af3c7ddd14239099ac8b7b42ba816c2864a9c588c32819adbed6c8232b28131a918c34e015ebcbb8f1a0272aca89d34325bac98039ec10ad189bb66cac982004fab8789e5520bc3f277b0b790c3a5a3f033a1d0342d37d46c03ef33541509cc50d5125be24b6141b4755c156bd2a98e2413b79b816d1508e8f144dc7577f23491e0d668eb9e56d1631e704da34afe33bbe2d9b5b7e968283925a96038b964728af6f0d09033742266640ab579f1f8f5a4b0e90f5ea1868a902d6955c66eb77b7a73c9748a3e46b56b465bbcdb613423114f6dd77e07f7f7d99983ce7b1dc5268e93326fe7663bdbd74de7cb65ff4826dc3a6af20fe025eb429feeeeb92e9e753cb8780866c654aec31077060a55171656b0fa7adbc929e49b5c5f562039d1f0b408099666f53e9966d932d6e954f7c18db7a6ec8c93128a84b6a4fb3209fb9aa494506981e32e13972df4a8390a9307c34137bb183f0b9de8b2b00f5de43d4b5dace65a6a9eba846c34e2e68aa46cbb3dd2a9693113c975c55391dbed4cda50f32d75a98a5ab0d1c1486aa689101191543a1711d090302a34478d9c2d17721a3e69a81a0bef57b50ad34612d5eabe6477bb383b5dd3d518e658aa4e2d9047cc5297a97a4b2d54979309c4a945f46762c1b6d462b5c45257a8064b5d298fa520e62b06e3b62a93891f74ea73de4448c952cb5403a9c8528d6ab9a5ae522b78375de06a927d0e442cd5a4565aaa59adb2d46ab5c65257abb5acabb1f7da07ec54ce21231d93b53296ac5f63a96bd575449fc3ee113b9349338a150ebb79e1a7ca6e0b27f1246bdee2bdd22a59eb62ce1cb164d6d968a9ebd53a824b94e97d1dc954bba5d6abcb092e3de9c0b420bd416d642ef582206378b62d75836ab5d426d9cc8bffb648d6eeb613399ed997ca79a28339b6538e926cf276db529bd516859af1a2d142faf762b1d5c2713cc25814743b745da9b526db475ab74db1a8aad29af7644d96daecd1a0dba1305baa3192edebed4d67723430d549bc3bee70b3446da7a576a9dd96daa34805611a649354c5a9c8ad193251c4b581b11dc66f96ba5172511aefe6a9ed07b5c5ede745d0a0df9ecfefe1cdebc43feb254c6156a22f93a14464e852fa00bd3a6813d9157a9ab7959e4f74a7b336b3bc57d55aea2629f3aacc506610b9369bd9916bc2eea1283eaf5619ea660b9f965a5eb6d50192b631e2de1b72683789d109a3c46198ce788f80c05271417f1b18c2846a3714f3dea1a8ff713c61a94e25cd8a4bc01aa20eb194b9f7a6f68bb866c20b1e3a7c397702ad21350f52d0c6b65b9849b602e314ae74ad998eb8dc8a53c66a67872975784de1a2e1775261c2bbb426c05d6bdc56a5382af780a11972638774d585fb72f4f7463091eee98d67ecade90b74df6c30678c79ad6da37559dda2ecef4bca87c9d4e8ee319a605a337dccfdebb334777af4bcd605e2bdbdb620353646035e336acabd1d968f9077f276417933972e24624a74b4a03475c2373ab68c468517d1a1edb13f6be7a473ae888e5c9308985cddea74e99563792329a3c8d5ba572fe3dbf02fc6106798e01ccb955610ee23d4149cdced9cd4e2f6fad191fdb69c13a440a101f145756311c832ce02cd48b466bc1646f4bb3dc79ce838cd115517f7f6d1e4a563187be11cb9530ad78e8ae744bec6c672dc67f7c87740f579acd674a905fd892e3bb14fa79b012dee143a9c3f0ea63c7b839d83e1353bbd5c94476b46da44264866d7b3d34df676db5bf445c11b945bd6c76f73866b84009d8c15cabb6ec29f22e2c9f2d1c17b17bbc595c2b9b5d1f15b79ef1b68166175817aab1cbeec85cedfe9945079748cfa0a9065e2c2376549dd01af89a7d6a7db931d24fbb9e781c8f0f497758eac2adfeeb59bd99bccba10889d24ba8037b99cca76c8abe5a439c3aaee7198a1f57c3cb9ba3b2d680ae628c9d6a8a797f5ccdd6b53edb21773d08604bfb0da518c2269a101f8a425e75c92ef45b885e37d43c6dd28e17b0f527ca63973b7de095c517b0aaa760045bb4ea1f849f8065ffd75c17e04f2303e05c3771cbee272b31fc1daba27117a9c1b8bd1cbe70c04f89ccdc366a00c33f9ac423daab10411ece7ca54e710649005f49b18ab90e3fb6414bd831a1419e833700068966fc65b719b6361d152aa0e012a143b0b2b76c6b3a28456d49d2d8c2c8e1678a3528efa7151a32fecab3d89108d3fe62e0da08c6e4d2a9f9c47b9b35491c71471e8247ca751c9ccde7c473fa636fa07308d92d31b03e140d89f47381ca8cb634638b0208f999cf2e5316b00b32952d5681437989566eccc835834806a4e451a83e160a57947284e5579cc09076395e6a23c2e0e1be1e069cc2dc28ec3a63afece735464e4312f1c28ce637e38d08f4bf3888a29617f38701a35c5d83180da5d617fdd82b0710a75fd58100e3ca6b32c616fc3743ee7a10297100bf319f228435e83bda863ec628c613d0e6121eec0e5b80b8b7084abc7d0804770251ec5520c6019be8a467c8b732f62055e41135ec54afc04abf05bac5106d6eaf47530038f329507713b82f814a5ff08ef85295929a4946f7f8c3f61cee4ed10df8af4db9fe27d84c8127c17efa7161fad3a863fc361f869db11daf50166f71867ff1c1f8481bfa0228b3a9c993b3923006940a8b45959faef3984099266f50e7622a8117397fefb21ce1af8b0818f18f8288d78931053f84b7ccc41917a2fcf16880e5407eff6201463de631e682e1314549f427d2c8f85e597bb98a866064f6351119ec234c19327be9802828225470b3357b8330d8dfeb0ff2c2687fda771a58277dc52392e8f65f760267f1adde5870acbcbf576ae5c15f651cbfc01acd825a7c74ea18979f79df0d2dec41a035a3109d7b3ced6632e36620136717e0b47db70137630d83b9986dd0cf01e5ab0170f73f6b388e334094352ba84296038bc8a1c605a8e48faf8f6579a169a985049908fbab631911fe48e42829c993b392309aa4669c8cd4e8c19685693e4b58a996856b39b958f1b3e8ebf76ebf9e75458ca8c246babf35859deece4606865af3a4fe8f3582d91d5115c103b236f8d0f8da8eb35ac6bbd90c7d54e61eb0d4751113be3bbbf70c25a2f5381d135dcc65aad170a081637848a1b4a2a4ba41499a907511b0e54969cc635625275a315b6f2b8361ccce3ba7b10f435848e2378b88465fd4265e8284a8acb5b784cf18911357f2f5df30f71adb5d10c9bcf089968c26d340beb61d32100ed781ed71f25fb907a2fd5fb9e29b8b24e5c91e9b051e08bf51a36c2171b86e3e6032409f03208f13298cd6ba19ed74103af822626a693a848130d87d047b903f8280bf41e16fc832cf94758ec278986a759d6cf53e2dbccfd4b9c7b8585fc4362e475eef831f1f14bee790377b1ec3fa4caf061351d1f51517c4c2dc611d58a8fab1df884eaa456c1df6182e06912d727a8dfc267b0187f438d253cef0692cb61d2cc23c4f23d384a6b8f106fc75cc2497a84932c20966f9fc4bd446cbd6a7411dbc03305c57e8e5ed3d80dd0a3975909a419da7713ee631c4c8de708773a52777a52f77b520f504a30be0ce5d39ad55b58ac29e6c166159e4c64bf8d72a25c28e76d54927f945af026fcd61b283b877a030fcd74d0ff309d717868058d93c27b78240f8d04fc864162dae8f0c612e33e54eaa2f118e786c28a87ec4dcecce627b065e895bd555f88dbf2d82e85240243eec4f21dcea69dcefcae98de3c4b03c7b9de173145605826313d73e84d3d3ecd1be4385a48297bf0774cc9e798c647c9b74f3051272995d749aea5b7f4d5239987dd94cde1af24aa98bb6aa94b6e8641223987d99a45a6337825cdaa52666669d6e7d6e35e28a36e280f8d1fca67e02f3e1113fea0f77a2045b5bb1f7beebe17a19826714762094922581bf39fc28d32f2df57107e8f087f9234e2248232acaf1b8b4f0c89522bca357d4ec297e8e19779273f854bf115dec35f6304cf9272bf8e6bf12ca3f60d92f53749d2cf13622f9094bfc38eec4516de4b84fef758682f0f89de212f7a87bce8ed75a317c3660d73277ad310d2d19bc9e89d83459496abd26058a2f619fcaddbf09d71a3b6e2dd03b0a1d1179350cc8b0d76204ee3f703fafc2aed7a8dc8f8116fded7b19c8430e8c30acf87159e0fb35c1fae60814981fabccbc599b9d3f5aa14be2198e0f26709b822edcbf75d5f36bd4b5f4631b0464589cbc08f857d83fe55b107017e4aff7e469b7f41ff7ec5dee8d7b806bfc106fc6e888f9b3c1f37793e2e747d5cc5fd4238833e3a330fb83e56c03fc4c773984bea701bf61314fe1c4bcbc1fc456e1bb3fffc6dccdef11a973123a03b1657e0267d6bc6f45a61f2c48888bc45fbdf4615d977a12ac24ab2dc2615c0cdca1cd25cecf722b2df6b2ef6e3f3788c1159c8083854bd89042cb1196c2e9c9907dce662a646b56e2eaaddf0f0f7a16655413414c97fe5b9c8be8ea362fe06ea66b17b7a5c474f0c0ee956d4825f956ae3228e94675c401ba2f4dbdff39629e29f9378d2d57a3f4d94f4ae7cf7f5b253b7f33797f3232038f8a9345562a32661922ac71c358597d65434a969434c5be999b6d24352958ba4312b22af7d3df57b504b0708c5f0e424930f0000e0210000504b03041400080808001d5f2c4d0000000000000000000000002b000000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f566f74655374617475732e636c6173735d90cd4a033114854f3a6d476bffd4950fe0d66c7c81a158094847483a2e4b0c515a86043a491fce451fc087126fc6420777f7fb72c23dc9f7cfd711c0236e735ce7b861984b55a8b5dcbc15426dc44a28062618260bef9aa05da8741d6d4677f02f5b95ea2979c6303df9a4c4ea39d91ec3f8645f8bb56c93d9d92d5eca3fd76718491ff7c62eb7b56598553e58197488cdc34e1f34c3fdd67317eb861fe8841befc25e9bc03fa233fc1ca67229ce6bed3e79f9beb3260ce925e8d18e01ee90a14f3448cd3024ce3b7c417cd9e111f15587c7c4930e4fdbcf98b5f3fc17504b070820205379de00000052010000504b03041400080808001d5f2c4d0000000000000000000000002e000000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f566f7465496e746572666163652e636c6173738d50cd4e023118fc8a2bcbe20f08fe9d3dadd1d88b378889311a256b4cc4709053ed16525c5aec764978350f3e800f65fcb610c440a2bb8769a733fda6f3f9f5fe0100e770e8c3be0f07048adc0866050116460336663461aa4fdbd648d56f2c33dd65ea38929aaa2c49e9585b41b956d6306ee950c722a11de4ae959576d220e049252d81d3b0f5a7e74aab9ec4cb9fd1956b3069d8eab6f2bdcf99ea38ca0b1d51362216c391955a1108de326126d3f3133cff7fbacadcf928d22cc1a0b5dcef1e9c5999d07b364259d0967dc56c6670c0d392a0399f371f95c6aff4328e8d48d3c6823892a96d2ed419692cf3027f02759764e6b965e9f435470bb5adbcdc75d1d699e1e24626e8a8e5c63b6585e9312ecef25904c2d585f432c5e92f3d81ea4fba879781e0b648804001f2afe41158030f00711d8a0e7d28390ca0ec7063869bb0e5701b2ae8afa2bb003bb8af411dd704761db3f70d504b0708dcf90d46580100009e020000504b01020a000a00000800001d5f2c4d000000000000000000000000030004000000000000000000000000000000696f2ffeca0000504b01020a000a00000800001d5f2c4d000000000000000000000000080000000000000000000000000025000000696f2f6e756c732f504b01020a000a00000800001d5f2c4d0000000000000000000000000d000000000000000000000000004b000000696f2f6e756c732f766f74652f504b01020a000a00000800001d5f2c4d000000000000000000000000160000000000000000000000000076000000696f2f6e756c732f766f74652f636f6e74726163742f504b010214001400080808001d5f2c4d372f2223be0400002f0b00002800000000000000000000000000aa000000696f2f6e756c732f766f74652f636f6e74726163742f566f7465436f6e74726163742e636c617373504b01020a000a00000800001d5f2c4d0000000000000000000000001c00000000000000000000000000be050000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f504b010214001400080808001d5f2c4dd5267fac55030000b20600002a00000000000000000000000000f8050000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f566f74654974656d2e636c617373504b010214001400080808001d5f2c4d3101cfbe8e060000021100002c00000000000000000000000000a5090000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f566f7465456e746974792e636c617373504b010214001400080808001d5f2c4d2286dd2e79050000f50b00002c000000000000000000000000008d100000696f2f6e756c732f766f74652f636f6e74726163742f6d6f64656c2f566f7465436f6e6669672e636c617373504b01020a000a00000800001d5f2c4d0000000000000000000000001c0000000000000000000000000060160000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f504b010214001400080808001d5f2c4ddaefa656a40300003f0700002b000000000000000000000000009a160000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f566f74654576656e742e636c617373504b010214001400080808001d5f2c4d9ec970336a030000d80600002f00000000000000000000000000971a0000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f566f7465496e69744576656e742e636c617373504b010214001400080808001d5f2c4d3372bf1b7f040000d60900002e000000000000000000000000005e1e0000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f4164644974656d4576656e742e636c617373504b010214001400080808001d5f2c4d3c1bc221fc040000c50b0000310000000000000000000000000039230000696f2f6e756c732f766f74652f636f6e74726163742f6576656e742f566f74654372656174654576656e742e636c617373504b01020a000a00000800001d5f2c4d0000000000000000000000001b0000000000000000000000000094280000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f504b010214001400080808001d5f2c4dc5f0e424930f0000e02100002900000000000000000000000000cd280000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f42617365566f74652e636c617373504b010214001400080808001d5f2c4d20205379de000000520100002b00000000000000000000000000b7380000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f566f74655374617475732e636c617373504b010214001400080808001d5f2c4ddcf90d46580100009e0200002e00000000000000000000000000ee390000696f2f6e756c732f766f74652f636f6e74726163742f66756e632f566f7465496e746572666163652e636c617373504b05060000000012001200a6050000a23b00000000");
    // parameters.put("contractCode", "504b0304140008080800038b2d4d000000000000000000000000090004004d4554412d494e462ffeca00000300504b0708000000000200000000000000504b0304140008080800038b2d4d000000000000000000000000140000004d4554412d494e462f4d414e49464553542e4d46f34dcccb4c4b2d2ed10d4b2d2acecccfb35230d433e0e5722e4a4d2c494dd175aa040958e819c41b9a982868f8172526e7a42a38e71715e417259600d56bf272f1720100504b07089e7c76534400000045000000504b03040a0000080000fb8a2d4d0000000000000000000000001b00000074657374636f6e74726163742f6d756c74797472616e736665722f504b0304140008080800fb8a2d4d0000000000000000000000003200000074657374636f6e74726163742f6d756c74797472616e736665722f546573744d756c74795472616e736665722e636c6173739d56eb7313d715ffad257997454e8cea00f210aa262d91658cb00c989a94c498180cb6f143d8d86d4256d25a5a4bda95b52b83d31749daa4e933e9234ddf8f90a68fb40d2d96dd64265f3ac34cfb0ff463ff857eea97cc747acedd95ac48824e6a8ff69e7b9ebf73ef3967f7efff79e73d00c7f08e8a53585590df85fb505050e4d5e48725a3a442c62a3fd6149479b515382cacc85857710dd75584b0a1e219d8323eabe073bcff7c00fcf7daab3758f005667d51c18d1af75905cf0a5a1a1c8082e75cfa6f7fbda1e079155fc29715bcc0be5f64435ba5685f51f09282af32f36b8ce2eb0abec19b6ff2e65b0a5ee6cd2b0abeade03b2abe8beff1e35505dfe7f535053f50f043267fa4e0c7327e22e3a712fca656d425842657b5752d5ed0cc6c7cde291b66f694844e7ba398b20a12bac62cd37634d359d00a15d256327ada286a055b8234e123d82109b256284c982b1649af96b40d2d5520455fb46f81628c5919dadc3f6998fa74a598d2cb49571c9ab4d25a61412b1bbcf7987e276790e323938e6e3b69cb74ca5ada89172b05678348d35ed1cbf12489a69893f43884363c57311da3a82f18b6418e464dd37234c720e412fa260d2b6e560a76bceed0cee4e35a5d273ee342e6ac1f354cc3394d196575675a9c4e4fb4afddf9ec228579ef8876137db67e2a94f7043948696490d6f924c98293dba5653265ddb6af0e4a38d81ed4a8ab41fe0322e906a344033d44072ae4e356d9339170337a6f9f6e1645cdc9c5cf18d909d3d1b37476ff974dcb79b4d76b7b707e4a62904b8696aba626616f7b635733e16a26846617514394b2ebcb950cb99279474be7a7b49257479d5aa9a49b19090f445b3170592aae825e96a0ce5b95725a1f37d8706f4b751d61fb20a6312e614f8b34884f81caa523990ce2319c0e62146724ec6b8e79a6621432acade367748f9181c8e8e2e0f1939783f83966242088b3ece6f087297b19bf08e297783d88246eca7843c2817bdda584c8b49d71b2b3e746af5f99c91d1fb296af8f2eae2e94ccf3e6c5e162e5d8b525ce7225885fe1cd207e8ddf1050af884722c25a3fbe9c3766edc1d9c152e60967eee2b52bf913d3f91396b554494c26bc001b99e4c2a29d9f4a0f9fcb2f3f93b2d712e3d6586eede2f8b5a91509fb3d3491b4e8bf484a8fe8c592b37144c66f83f81ddea2a0aa2d6e662412c4ef393d1d64a8aa5ef13316455de761c41a7fc04dd6f8236b6435bba0af38cc7e1bb798fd276a4e6697ca465aa8ff19b7a843555595d0ada6e848cf14ac74febc66e74622326e07b1c986556cb161da32cc94660bc36dbcced072ba91cd398c21a8f2c0a1c9582cb1fc2fec5862b73b777f29b5aaa71d090fb6bd97316f2361a05d91b6b0bc1aa2c6501cabd602fbdbba9eb2bdeef02e3e7a9719b8336ef6d7a65c6b1bf6b4e3937b710597e86ac2d10b7735566af5cb6a779912d48ebd6de15d760c1ea872595fab1865eecee872fb76eeb4bd660eacbb6fa90f1ca97b0ff73c52d9ab1d31be2f502bd5736a7f03b59aba1b74515684cb14af3cee2466e4a8ce7826b5f1cd4e6bf546eaf5dac2c7e8e57f0a121e851f1d3c6df895cbb386788f13dd41fc108f9dfa7e8c7e6785de6ee23d8171da9fa35d3f7f63f0ef96503b4fcf4ec18863023c838410177091d6494f3a257834fde8c94e36e0137ac3b12d48b150c7267cb1907f1381587768139def425eda82125bbe0d5f15bb422a3daad82db4829be8da097d90be5b804142ff085444d18d3eec450247318413f455b60369d88324e112663c18715a59168851a0b79bf2196e300ed48d67ebc6039eb12fe46f363dd560eaab9bce61bed9b43bf45693e9636d4d93f5a8c73c53751bf757d15dc59ee6e0630d1ed4ba87cb750f05f2db41ebd177115a0a7d640b3d93fd3d78601bfbaad8ef9d7c284c275e8fe09efe4e9cfbc05f6ce7c8fb79f450348eb7d7f5e9c55371080b581458af5064b774b6c9ce4feb950f44eead4526de01e24d1deec1830dbc8f126f7aa007910f81d02d8b4b84638610ced17e9e8a23498571995a6051208eb958ea88a73dc407318225a23a48fb109689f235d5f1a7f1192fa37f924ca175a6ff0eba07ee20180edc81ec7f137e5fe8a16d3cdc7f98100f84fd5e2ee100e5322287e570e7ffcec42732e9a5b8a078fbf0240ee0293c84ab543e4f531d68228b3937be9705534f8a2c987a8a743b04f5b4c882298d787e41a5a8b903824a13af93bc3e2cb295911115dfb1e771a929f1b3b5229266c90907793f56cbe2e3228b4f5471c84d610b8fd465d15a866d647d4216aba2bf4970580806aa38d224880bc1d11d4168b0519c10e2a16d1c6b0d765cc84eb4061b768d5a839d14824f36041be1e76d74ed545b82ba0d58a1fbc9e2247234230cacd2fff3c8e325eab73750c47b30f10f58f8174af837d61a7af47defee3af813c5ebd139af477b1b26611721e9af0dc28611a80acd0ac2586fe8c4de7a45f412aad3a21373c2c6f82f504b07087c257e1c05070000b30e0000504b01021400140008080800038b2d4d0000000002000000000000000900040000000000000000000000000000004d4554412d494e462ffeca0000504b01021400140008080800038b2d4d9e7c7653440000004500000014000000000000000000000000003d0000004d4554412d494e462f4d414e49464553542e4d46504b01020a000a0000080000fb8a2d4d0000000000000000000000001b00000000000000000000000000c300000074657374636f6e74726163742f6d756c74797472616e736665722f504b01021400140008080800fb8a2d4d7c257e1c05070000b30e00003200000000000000000000000000fc00000074657374636f6e74726163742f6d756c74797472616e736665722f546573744d756c74795472616e736665722e636c617373504b0506000000000400040026010000610800000000");
    RpcClientResult result = restFul.post("/contract/constructor", parameters);
    if (result.isFailed()) {
        System.out.println("query fail");
    }
    Map<String, Object> map = ((Map) result.getData());
    System.out.println(map);
}
Also used : HashMap(java.util.HashMap) RpcClientResult(io.nuls.kernel.model.RpcClientResult)

Example 20 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class TransferTest method run.

@Override
public void run() {
    int count = 0;
    while (true) {
        try {
            Thread.sleep(100);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        for (String toAdd : to) {
            Map<String, Object> parameters = new HashMap<>();
            parameters.put("address", from);
            parameters.put("toAddress", toAdd);
            parameters.put("password", null);
            parameters.put("amount", 300000000);
            parameters.put("remark", Thread.currentThread().getName());
            RpcClientResult result = restFul.post("/accountledger/transfer", parameters);
            if (result.isFailed()) {
                System.out.println(Thread.currentThread().getName() + " - transfer fail : " + (++count));
            } else {
                System.out.println(Thread.currentThread().getName() + " - transfer success : " + (++count));
            }
        }
    }
}
Also used : HashMap(java.util.HashMap) RpcClientResult(io.nuls.kernel.model.RpcClientResult)

Aggregations

RpcClientResult (io.nuls.kernel.model.RpcClientResult)88 HashMap (java.util.HashMap)49 Map (java.util.Map)24 Date (java.util.Date)14 List (java.util.List)14 Result (io.nuls.kernel.model.Result)7 InputDto (io.nuls.accout.ledger.rpc.dto.InputDto)5 GET (javax.ws.rs.GET)5 Path (javax.ws.rs.Path)5 Produces (javax.ws.rs.Produces)5 ApiOperation (io.swagger.annotations.ApiOperation)4 ApiResponses (io.swagger.annotations.ApiResponses)4 NulsException (io.nuls.kernel.exception.NulsException)3 Na (io.nuls.kernel.model.Na)3 Node (io.nuls.network.model.Node)3 Test (org.junit.Test)3 RandomSeedDTO (io.nuls.consensus.poc.rpc.model.RandomSeedDTO)2 Coin (io.nuls.kernel.model.Coin)2 IOException (java.io.IOException)2 AccountKeyStoreDto (io.nuls.account.rpc.model.AccountKeyStoreDto)1