From d03ecb41ee1d87ae726183d07626f4ac5849bf59 Mon Sep 17 00:00:00 2001 From: Elnaril Date: Fri, 7 Feb 2025 08:52:03 +0100 Subject: [PATCH] update router address --- coverage.json | 2 +- tests/test_router_codec.py | 7 ++++++- uniswap_universal_router_decoder/_constants.py | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/coverage.json b/coverage.json index 35298a7..1eb6e3b 100644 --- a/coverage.json +++ b/coverage.json @@ -1 +1 @@ -{"meta": {"format": 3, "version": "7.6.10", "timestamp": "2025-02-06T18:14:55.339974", "branch_coverage": false, "show_contexts": false}, "files": {"uniswap_universal_router_decoder/__init__.py": {"executed_lines": [1, 5, 10, 13], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 5, 10, 13], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 5, 10, 13], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_abi_builder.py": {"executed_lines": [1, 8, 10, 11, 20, 21, 22, 23, 25, 32, 33, 34, 35, 36, 37, 39, 40, 43, 44, 47, 48, 49, 50, 51, 53, 54, 56, 57, 58, 59, 61, 62, 64, 65, 67, 68, 70, 71, 73, 74, 77, 80, 81, 82, 84, 85, 86, 88, 89, 90, 92, 93, 94, 96, 97, 98, 100, 101, 102, 104, 105, 106, 108, 109, 110, 112, 113, 114, 116, 117, 118, 120, 121, 123, 124, 125, 127, 128, 129, 131, 132, 133, 135, 136, 137, 139, 140, 141, 143, 144, 145, 147, 148, 149, 152, 153, 154, 155, 156, 158, 159, 200, 202, 203, 204, 205, 206, 208, 209, 210, 211, 212, 213, 214, 215, 217, 218, 219, 220, 222, 223, 224, 225, 226, 228, 229, 230, 231, 233, 234, 235, 236, 237, 239, 240, 241, 242, 243, 245, 246, 247, 248, 250, 251, 252, 253, 255, 256, 257, 258, 260, 261, 262, 263, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 277, 278, 280, 281, 282, 283, 284, 286, 287, 288, 289, 291, 292, 293, 294, 296, 297, 298, 299, 300, 301, 302, 304, 305, 306, 307, 309, 310, 311, 312, 314, 315, 316, 317, 319, 320, 321, 322, 324, 325, 326, 327, 329, 330, 331, 332, 334, 335, 336, 337, 339, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 355, 356, 357, 358, 359, 361, 362, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 374, 376, 377, 378, 379, 381, 382, 383, 384, 386, 387, 388, 389, 390, 391, 392, 393, 395, 396, 397, 398, 399, 400, 402, 403, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 417, 418, 419, 420, 422, 423, 424, 425, 427, 428, 429, 430, 431, 432, 434, 435, 436, 437], "summary": {"covered_lines": 297, "num_statements": 297, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"_get_types_from_list": {"executed_lines": [33, 34, 35, 36, 37, 39, 40], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "build_abi_type_list": {"executed_lines": [44], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.__init__": {"executed_lines": [49, 50, 51], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_abi": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_struct_abi": {"executed_lines": [57, 58, 59], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_full_abi": {"executed_lines": [62], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_abi_types": {"executed_lines": [65], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_signature": {"executed_lines": [68], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_selector": {"executed_lines": [71], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.encode": {"executed_lines": [74], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.__init__": {"executed_lines": [82], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_address": {"executed_lines": [85, 86], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint256": {"executed_lines": [89, 90], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint160": {"executed_lines": [93, 94], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint48": {"executed_lines": [97, 98], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint24": {"executed_lines": [101, 102], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_int24": {"executed_lines": [105, 106], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint128": {"executed_lines": [109, 110], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_address_array": {"executed_lines": [113, 114], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_bool": {"executed_lines": [117, 118], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.build": {"executed_lines": [121], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.create_struct_array": {"executed_lines": [125], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.create_struct": {"executed_lines": [129], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_struct": {"executed_lines": [132, 133], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_struct_array": {"executed_lines": [136, 137], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_bytes": {"executed_lines": [140, 141], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_bytes_array": {"executed_lines": [144, 145], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_v4_exact_input_params": {"executed_lines": [148, 149], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.__init__": {"executed_lines": [154, 155, 156], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.build_abi_map": {"executed_lines": [159, 200], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v2_swap_exact_in": {"executed_lines": [204, 205, 206], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_permit2_permit": {"executed_lines": [210, 211, 212, 213, 214, 215], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_unwrap_weth": {"executed_lines": [219, 220], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v3_swap_exact_in": {"executed_lines": [224, 225, 226], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_wrap_eth": {"executed_lines": [230, 231], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v2_swap_exact_out": {"executed_lines": [235, 236, 237], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v3_swap_exact_out": {"executed_lines": [241, 242, 243], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_sweep": {"executed_lines": [247, 248], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_pay_portion": {"executed_lines": [252, 253], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_transfer": {"executed_lines": [257, 258], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap": {"executed_lines": [262, 263], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._v4_pool_key_struct_builder": {"executed_lines": [267, 268, 269], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_in_single": {"executed_lines": [273, 274, 275, 276, 277, 278], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_initialize_pool": {"executed_lines": [282, 283, 284], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_modify_liquidities": {"executed_lines": [288, 289], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_unlock_data": {"executed_lines": [293, 294], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_mint_position": {"executed_lines": [298, 299, 300, 301, 302], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_settle_pair": {"executed_lines": [306, 307], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_settle": {"executed_lines": [311, 312], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_close_currency": {"executed_lines": [316, 317], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_sweep": {"executed_lines": [321, 322], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_permit2_transfer_from": {"executed_lines": [326, 327], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take_all": {"executed_lines": [331, 332], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_settle_all": {"executed_lines": [336, 337], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_execute": {"executed_lines": [341, 342], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_execute_with_deadline": {"executed_lines": [346, 347], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_pool_id": {"executed_lines": [351, 352, 353], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._v4_path_key_struct_array_builder": {"executed_lines": [357, 358, 359], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_strict_v4_swap_exact_in": {"executed_lines": [363, 364, 365, 366], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_mint_position_from_deltas": {"executed_lines": [370, 371, 372, 373, 374], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_wrap_eth": {"executed_lines": [378, 379], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_unwrap_weth": {"executed_lines": [383, 384], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_out_single": {"executed_lines": [388, 389, 390, 391, 392, 393], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_out": {"executed_lines": [397, 398, 399, 400], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take_pair": {"executed_lines": [404, 405], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_clear_or_take": {"executed_lines": [409, 410], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take_portion": {"executed_lines": [414, 415], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take": {"executed_lines": [419, 420], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_in": {"executed_lines": [424, 425], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.decode_v4_exact_input_params": {"executed_lines": [428, 429, 430, 431, 432], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.encode_v4_exact_input_params": {"executed_lines": [435, 436, 437], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 20, 21, 22, 23, 25, 32, 43, 47, 48, 53, 56, 61, 64, 67, 70, 73, 77, 80, 81, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 123, 124, 127, 128, 131, 135, 139, 143, 147, 152, 153, 158, 202, 203, 208, 209, 217, 218, 222, 223, 228, 229, 233, 234, 239, 240, 245, 246, 250, 251, 255, 256, 260, 261, 265, 266, 271, 272, 280, 281, 286, 287, 291, 292, 296, 297, 304, 305, 309, 310, 314, 315, 319, 320, 324, 325, 329, 330, 334, 335, 339, 340, 344, 345, 349, 350, 355, 356, 361, 362, 368, 369, 376, 377, 381, 382, 386, 387, 395, 396, 402, 403, 407, 408, 412, 413, 417, 418, 422, 423, 427, 434], "summary": {"covered_lines": 124, "num_statements": 124, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"FunctionABI": {"executed_lines": [49, 50, 51, 54, 57, 58, 59, 62, 65, 68, 71, 74], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder": {"executed_lines": [82, 85, 86, 89, 90, 93, 94, 97, 98, 101, 102, 105, 106, 109, 110, 113, 114, 117, 118, 121, 125, 129, 132, 133, 136, 137, 140, 141, 144, 145, 148, 149], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder": {"executed_lines": [154, 155, 156, 159, 200, 204, 205, 206, 210, 211, 212, 213, 214, 215, 219, 220, 224, 225, 226, 230, 231, 235, 236, 237, 241, 242, 243, 247, 248, 252, 253, 257, 258, 262, 263, 267, 268, 269, 273, 274, 275, 276, 277, 278, 282, 283, 284, 288, 289, 293, 294, 298, 299, 300, 301, 302, 306, 307, 311, 312, 316, 317, 321, 322, 326, 327, 331, 332, 336, 337, 341, 342, 346, 347, 351, 352, 353, 357, 358, 359, 363, 364, 365, 366, 370, 371, 372, 373, 374, 378, 379, 383, 384, 388, 389, 390, 391, 392, 393, 397, 398, 399, 400, 404, 405, 409, 410, 414, 415, 419, 420, 424, 425, 428, 429, 430, 431, 432, 435, 436, 437], "summary": {"covered_lines": 121, "num_statements": 121, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 20, 21, 22, 23, 25, 32, 33, 34, 35, 36, 37, 39, 40, 43, 44, 47, 48, 53, 56, 61, 64, 67, 70, 73, 77, 80, 81, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 123, 124, 127, 128, 131, 135, 139, 143, 147, 152, 153, 158, 202, 203, 208, 209, 217, 218, 222, 223, 228, 229, 233, 234, 239, 240, 245, 246, 250, 251, 255, 256, 260, 261, 265, 266, 271, 272, 280, 281, 286, 287, 291, 292, 296, 297, 304, 305, 309, 310, 314, 315, 319, 320, 324, 325, 329, 330, 334, 335, 339, 340, 344, 345, 349, 350, 355, 356, 361, 362, 368, 369, 376, 377, 381, 382, 386, 387, 395, 396, 402, 403, 407, 408, 412, 413, 417, 418, 422, 423, 427, 434], "summary": {"covered_lines": 132, "num_statements": 132, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_constants.py": {"executed_lines": [1, 8, 11, 12, 13, 14, 17, 18, 20, 21], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 8, 11, 12, 13, 14, 17, 18, 20, 21], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 8, 11, 12, 13, 14, 17, 18, 20, 21], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_decoder.py": {"executed_lines": [1, 8, 9, 10, 19, 20, 21, 22, 23, 24, 31, 35, 41, 48, 49, 50, 51, 52, 54, 58, 61, 62, 63, 64, 65, 66, 67, 70, 72, 73, 75, 76, 77, 80, 81, 82, 83, 84, 85, 87, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 109, 110, 111, 112, 125, 126, 137, 145, 146, 147, 148, 150, 159, 160, 161, 162, 163, 165, 166, 168, 169, 178, 179, 180, 181, 182, 183, 184, 191, 193, 194, 196, 198, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "summary": {"covered_lines": 98, "num_statements": 101, "percent_covered": 97.02970297029702, "percent_covered_display": "97", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [59, 68, 69], "excluded_lines": [], "functions": {"_V4Decoder.__init__": {"executed_lines": [50, 51, 52], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4Decoder._decode_v4_actions": {"executed_lines": [58, 61, 62, 63, 64, 65, 66, 67, 70], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [59, 68, 69], "excluded_lines": []}, "_V4Decoder.decode_v4_swap": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4Decoder.decode_v4_pm_call": {"executed_lines": [76, 77], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.__init__": {"executed_lines": [82, 83, 84, 85], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.function_input": {"executed_lines": [94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 109, 110, 111, 112, 125, 126, 137, 145, 146, 147, 148], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.transaction": {"executed_lines": [159, 160, 161, 162, 163], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder._get_transaction": {"executed_lines": [166], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.v3_path": {"executed_lines": [178, 179, 180, 181, 182, 183, 184, 191, 193, 194, 196], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.contract_error": {"executed_lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 19, 20, 21, 22, 23, 24, 31, 35, 41, 48, 49, 54, 72, 75, 80, 81, 87, 150, 165, 168, 169, 198], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"_V4Decoder": {"executed_lines": [50, 51, 52, 58, 61, 62, 63, 64, 65, 66, 67, 70, 73, 76, 77], "summary": {"covered_lines": 15, "num_statements": 18, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [59, 68, 69], "excluded_lines": []}, "_Decoder": {"executed_lines": [82, 83, 84, 85, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 109, 110, 111, 112, 125, 126, 137, 145, 146, 147, 148, 159, 160, 161, 162, 163, 166, 178, 179, 180, 181, 182, 183, 184, 191, 193, 194, 196, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "summary": {"covered_lines": 58, "num_statements": 58, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 19, 20, 21, 22, 23, 24, 31, 35, 41, 48, 49, 54, 72, 75, 80, 81, 87, 150, 165, 168, 169, 198], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_encoder.py": {"executed_lines": [1, 8, 10, 11, 23, 24, 25, 26, 35, 36, 40, 48, 54, 57, 58, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 76, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 100, 101, 116, 117, 118, 126, 127, 128, 129, 131, 132, 138, 146, 150, 153, 156, 157, 158, 159, 160, 161, 162, 164, 165, 166, 167, 169, 174, 175, 176, 178, 183, 184, 185, 188, 190, 200, 210, 211, 213, 221, 222, 223, 224, 226, 227, 228, 229, 252, 263, 274, 283, 291, 292, 293, 294, 295, 296, 297, 300, 302, 319, 320, 321, 323, 324, 325, 326, 328, 329, 330, 331, 333, 339, 340, 341, 343, 360, 361, 362, 364, 374, 383, 384, 385, 386, 389, 390, 391, 392, 393, 394, 395, 397, 398, 399, 400, 401, 403, 404, 407, 412, 413, 414, 416, 421, 422, 423, 425, 439, 440, 441, 442, 444, 458, 459, 460, 461, 463, 484, 485, 486, 487, 489, 508, 517, 538, 539, 540, 541, 543, 565, 566, 567, 568, 569, 571, 591, 600, 622, 623, 624, 625, 626, 628, 641, 646, 647, 648, 650, 666, 667, 668, 669, 671, 688, 693, 695, 696, 697, 698, 700, 718, 719, 720, 721, 723, 734, 735, 737, 738, 739, 740, 741, 743, 744, 746, 753, 754, 755, 756, 758, 759, 760, 762, 805, 807, 808, 810, 811, 813, 814, 815, 817, 818, 820, 821, 823, 824, 825, 831, 843, 844, 845, 847, 849], "summary": {"covered_lines": 251, "num_statements": 276, "percent_covered": 90.94202898550725, "percent_covered_display": "91", "missing_lines": 25, "excluded_lines": 0}, "missing_lines": [217, 218, 219, 259, 260, 261, 270, 271, 272, 279, 280, 281, 287, 288, 289, 370, 371, 372, 379, 380, 381, 729, 730, 731, 732], "excluded_lines": [], "functions": {"_Encoder.__init__": {"executed_lines": [78, 79, 80], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v3_path": {"executed_lines": [84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v4_pool_key": {"executed_lines": [116, 117, 118], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v4_pool_id": {"executed_lines": [127, 128, 129], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v4_path_key": {"executed_lines": [138], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.chain": {"executed_lines": [150], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder.__init__": {"executed_lines": [158, 159, 160, 161, 162], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder._add_action": {"executed_lines": [165, 166, 167], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder.settle": {"executed_lines": [174, 175, 176], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder.take": {"executed_lines": [183, 184, 185], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.mint_position": {"executed_lines": [200, 210, 211], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.settle_pair": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [217, 218, 219], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.close_currency": {"executed_lines": [222, 223, 224], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.sweep": {"executed_lines": [227, 228, 229], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.wrap_eth": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [259, 260, 261], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.unwrap_weth": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [270, 271, 272], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.take_pair": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [279, 280, 281], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.clear_or_take": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [287, 288, 289], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.build_v4_posm_call": {"executed_lines": [292, 293, 294, 295, 296, 297], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_in_single": {"executed_lines": [319, 320, 321], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.take_all": {"executed_lines": [324, 325, 326], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.settle_all": {"executed_lines": [329, 330, 331], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_in": {"executed_lines": [339, 340, 341], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_out_single": {"executed_lines": [360, 361, 362], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_out": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [370, 371, 372], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.take_portion": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [379, 380, 381], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.build_v4_swap": {"executed_lines": [384, 385, 386], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.__init__": {"executed_lines": [391, 392, 393, 394, 395], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder._add_command": {"executed_lines": [398, 399, 400, 401], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder._get_recipient": {"executed_lines": [407, 412, 413, 414, 416], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder._get_command": {"executed_lines": [423], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.wrap_eth": {"executed_lines": [439, 440, 441, 442], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.unwrap_weth": {"executed_lines": [458, 459, 460, 461], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v2_swap_exact_in": {"executed_lines": [484, 485, 486, 487], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v2_swap_exact_in_from_balance": {"executed_lines": [508], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v2_swap_exact_out": {"executed_lines": [538, 539, 540, 541], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v3_swap_exact_in": {"executed_lines": [565, 566, 567, 568, 569], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v3_swap_exact_in_from_balance": {"executed_lines": [591], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v3_swap_exact_out": {"executed_lines": [622, 623, 624, 625, 626], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.permit2_permit": {"executed_lines": [641, 646, 647, 648], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.sweep": {"executed_lines": [666, 667, 668, 669], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.pay_portion": {"executed_lines": [688, 693, 695, 696, 697, 698], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.transfer": {"executed_lines": [718, 719, 720, 721], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.permit2_transfer_from": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [729, 730, 731, 732], "excluded_lines": []}, "_ChainedFunctionBuilder.v4_swap": {"executed_lines": [735], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v4_initialize_pool": {"executed_lines": [738, 739, 740, 741], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v4_posm_call": {"executed_lines": [744], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.build": {"executed_lines": [753, 754, 755, 756, 758, 759, 760], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.build_transaction": {"executed_lines": [805, 807, 808, 810, 811, 813, 814, 815, 817, 818, 820, 821, 823, 824, 825, 831, 843, 844, 845, 847, 849], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 23, 24, 25, 26, 35, 36, 40, 48, 54, 57, 58, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 76, 77, 82, 83, 100, 101, 126, 131, 132, 146, 153, 156, 157, 164, 169, 178, 188, 190, 213, 221, 226, 252, 263, 274, 283, 291, 300, 302, 323, 328, 333, 343, 364, 374, 383, 389, 390, 397, 403, 404, 421, 422, 425, 444, 463, 489, 517, 543, 571, 600, 628, 650, 671, 700, 723, 734, 737, 743, 746, 762], "summary": {"covered_lines": 84, "num_statements": 84, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"PoolKey": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "PathKey": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder": {"executed_lines": [78, 79, 80, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 116, 117, 118, 127, 128, 129, 138, 150], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder": {"executed_lines": [158, 159, 160, 161, 162, 165, 166, 167, 174, 175, 176, 183, 184, 185], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder": {"executed_lines": [200, 210, 211, 222, 223, 224, 227, 228, 229, 292, 293, 294, 295, 296, 297], "summary": {"covered_lines": 15, "num_statements": 30, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 15, "excluded_lines": 0}, "missing_lines": [217, 218, 219, 259, 260, 261, 270, 271, 272, 279, 280, 281, 287, 288, 289], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder": {"executed_lines": [319, 320, 321, 324, 325, 326, 329, 330, 331, 339, 340, 341, 360, 361, 362, 384, 385, 386], "summary": {"covered_lines": 18, "num_statements": 24, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [370, 371, 372, 379, 380, 381], "excluded_lines": []}, "_ChainedFunctionBuilder": {"executed_lines": [391, 392, 393, 394, 395, 398, 399, 400, 401, 407, 412, 413, 414, 416, 423, 439, 440, 441, 442, 458, 459, 460, 461, 484, 485, 486, 487, 508, 538, 539, 540, 541, 565, 566, 567, 568, 569, 591, 622, 623, 624, 625, 626, 641, 646, 647, 648, 666, 667, 668, 669, 688, 693, 695, 696, 697, 698, 718, 719, 720, 721, 735, 738, 739, 740, 741, 744, 753, 754, 755, 756, 758, 759, 760, 805, 807, 808, 810, 811, 813, 814, 815, 817, 818, 820, 821, 823, 824, 825, 831, 843, 844, 845, 847, 849], "summary": {"covered_lines": 95, "num_statements": 99, "percent_covered": 95.95959595959596, "percent_covered_display": "96", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [729, 730, 731, 732], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 23, 24, 25, 26, 35, 36, 40, 48, 54, 57, 58, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 76, 77, 82, 83, 100, 101, 126, 131, 132, 146, 153, 156, 157, 164, 169, 178, 188, 190, 213, 221, 226, 252, 263, 274, 283, 291, 300, 302, 323, 328, 333, 343, 364, 374, 383, 389, 390, 397, 403, 404, 421, 422, 425, 444, 463, 489, 517, 543, 571, 600, 628, 650, 671, 700, 723, 734, 737, 743, 746, 762], "summary": {"covered_lines": 84, "num_statements": 84, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_enums.py": {"executed_lines": [1, 10, 15, 16, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 45, 46, 47, 50, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 89, 90, 93, 94, 95, 98, 99, 100, 101, 102], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 10, 15, 16, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 45, 46, 47, 50, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 89, 90, 93, 94, 95, 98, 99, 100, 101, 102], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"RouterFunction": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionRecipient": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_RouterConstant": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TransactionSpeed": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "V4Actions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "V4Constants": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MiscFunctions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 10, 15, 16, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 45, 46, 47, 50, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 89, 90, 93, 94, 95, 98, 99, 100, 101, 102], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/router_codec.py": {"executed_lines": [1, 8, 9, 16, 20, 21, 28, 29, 36, 37, 40, 41, 42, 45, 46, 47, 48, 49, 50, 51, 53, 54, 55, 57, 58, 62, 64, 65, 69, 71, 72, 76, 78, 79, 111, 117, 122, 123, 124, 125, 130, 132, 153, 154, 155, 156], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"RouterCodec.__init__": {"executed_lines": [47, 48, 49, 50, 51, 53, 54, 55], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.get_default_deadline": {"executed_lines": [62], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.get_default_expiration": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.get_max_expiration": {"executed_lines": [76], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.create_permit2_signable_message": {"executed_lines": [111, 117, 122, 123, 124, 125, 130], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.fetch_permit2_allowance": {"executed_lines": [153, 154, 155, 156], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 16, 20, 21, 28, 29, 36, 37, 40, 41, 42, 45, 46, 57, 58, 64, 65, 71, 72, 78, 79, 132], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"RouterCodec": {"executed_lines": [47, 48, 49, 50, 51, 53, 54, 55, 62, 69, 76, 111, 117, 122, 123, 124, 125, 130, 153, 154, 155, 156], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 16, 20, 21, 28, 29, 36, 37, 40, 41, 42, 45, 46, 57, 58, 64, 65, 71, 72, 78, 79, 132], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/utils.py": {"executed_lines": [1, 2, 8, 9, 15, 18, 26, 43, 44, 45, 51, 52, 54, 55, 57, 58, 60, 63, 70, 73], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [79], "excluded_lines": [], "functions": {"compute_gas_fees": {"executed_lines": [43, 44, 45, 51, 52, 54, 55, 57, 58, 60], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "compute_sqrt_price_x96": {"executed_lines": [70], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "convert_sqrt_price_x96": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [79], "excluded_lines": []}, "": {"executed_lines": [1, 2, 8, 9, 15, 18, 26, 63, 73], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 2, 8, 9, 15, 18, 26, 43, 44, 45, 51, 52, 54, 55, 57, 58, 60, 63, 70, 73], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [79], "excluded_lines": []}}}}, "totals": {"covered_lines": 784, "num_statements": 813, "percent_covered": 96.4329643296433, "percent_covered_display": "96", "missing_lines": 29, "excluded_lines": 0}} \ No newline at end of file +{"meta": {"format": 3, "version": "7.6.10", "timestamp": "2025-02-07T08:45:29.144744", "branch_coverage": false, "show_contexts": false}, "files": {"uniswap_universal_router_decoder/__init__.py": {"executed_lines": [1, 5, 10, 13], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 5, 10, 13], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 5, 10, 13], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_abi_builder.py": {"executed_lines": [1, 8, 10, 11, 20, 21, 22, 23, 25, 32, 33, 34, 35, 36, 37, 39, 40, 43, 44, 47, 48, 49, 50, 51, 53, 54, 56, 57, 58, 59, 61, 62, 64, 65, 67, 68, 70, 71, 73, 74, 77, 80, 81, 82, 84, 85, 86, 88, 89, 90, 92, 93, 94, 96, 97, 98, 100, 101, 102, 104, 105, 106, 108, 109, 110, 112, 113, 114, 116, 117, 118, 120, 121, 123, 124, 125, 127, 128, 129, 131, 132, 133, 135, 136, 137, 139, 140, 141, 143, 144, 145, 147, 148, 149, 152, 153, 154, 155, 156, 158, 159, 200, 202, 203, 204, 205, 206, 208, 209, 210, 211, 212, 213, 214, 215, 217, 218, 219, 220, 222, 223, 224, 225, 226, 228, 229, 230, 231, 233, 234, 235, 236, 237, 239, 240, 241, 242, 243, 245, 246, 247, 248, 250, 251, 252, 253, 255, 256, 257, 258, 260, 261, 262, 263, 265, 266, 267, 268, 269, 271, 272, 273, 274, 275, 276, 277, 278, 280, 281, 282, 283, 284, 286, 287, 288, 289, 291, 292, 293, 294, 296, 297, 298, 299, 300, 301, 302, 304, 305, 306, 307, 309, 310, 311, 312, 314, 315, 316, 317, 319, 320, 321, 322, 324, 325, 326, 327, 329, 330, 331, 332, 334, 335, 336, 337, 339, 340, 341, 342, 344, 345, 346, 347, 349, 350, 351, 352, 353, 355, 356, 357, 358, 359, 361, 362, 363, 364, 365, 366, 368, 369, 370, 371, 372, 373, 374, 376, 377, 378, 379, 381, 382, 383, 384, 386, 387, 388, 389, 390, 391, 392, 393, 395, 396, 397, 398, 399, 400, 402, 403, 404, 405, 407, 408, 409, 410, 412, 413, 414, 415, 417, 418, 419, 420, 422, 423, 424, 425, 427, 428, 429, 430, 431, 432, 434, 435, 436, 437], "summary": {"covered_lines": 297, "num_statements": 297, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"_get_types_from_list": {"executed_lines": [33, 34, 35, 36, 37, 39, 40], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "build_abi_type_list": {"executed_lines": [44], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.__init__": {"executed_lines": [49, 50, 51], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_abi": {"executed_lines": [54], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_struct_abi": {"executed_lines": [57, 58, 59], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_full_abi": {"executed_lines": [62], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_abi_types": {"executed_lines": [65], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_signature": {"executed_lines": [68], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.get_selector": {"executed_lines": [71], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABI.encode": {"executed_lines": [74], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.__init__": {"executed_lines": [82], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_address": {"executed_lines": [85, 86], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint256": {"executed_lines": [89, 90], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint160": {"executed_lines": [93, 94], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint48": {"executed_lines": [97, 98], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint24": {"executed_lines": [101, 102], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_int24": {"executed_lines": [105, 106], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_uint128": {"executed_lines": [109, 110], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_address_array": {"executed_lines": [113, 114], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_bool": {"executed_lines": [117, 118], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.build": {"executed_lines": [121], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.create_struct_array": {"executed_lines": [125], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.create_struct": {"executed_lines": [129], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_struct": {"executed_lines": [132, 133], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_struct_array": {"executed_lines": [136, 137], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_bytes": {"executed_lines": [140, 141], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_bytes_array": {"executed_lines": [144, 145], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder.add_v4_exact_input_params": {"executed_lines": [148, 149], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.__init__": {"executed_lines": [154, 155, 156], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.build_abi_map": {"executed_lines": [159, 200], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v2_swap_exact_in": {"executed_lines": [204, 205, 206], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_permit2_permit": {"executed_lines": [210, 211, 212, 213, 214, 215], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_unwrap_weth": {"executed_lines": [219, 220], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v3_swap_exact_in": {"executed_lines": [224, 225, 226], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_wrap_eth": {"executed_lines": [230, 231], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v2_swap_exact_out": {"executed_lines": [235, 236, 237], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v3_swap_exact_out": {"executed_lines": [241, 242, 243], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_sweep": {"executed_lines": [247, 248], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_pay_portion": {"executed_lines": [252, 253], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_transfer": {"executed_lines": [257, 258], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap": {"executed_lines": [262, 263], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._v4_pool_key_struct_builder": {"executed_lines": [267, 268, 269], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_in_single": {"executed_lines": [273, 274, 275, 276, 277, 278], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_initialize_pool": {"executed_lines": [282, 283, 284], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_modify_liquidities": {"executed_lines": [288, 289], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_unlock_data": {"executed_lines": [293, 294], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_mint_position": {"executed_lines": [298, 299, 300, 301, 302], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_settle_pair": {"executed_lines": [306, 307], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_settle": {"executed_lines": [311, 312], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_close_currency": {"executed_lines": [316, 317], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_sweep": {"executed_lines": [321, 322], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_permit2_transfer_from": {"executed_lines": [326, 327], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take_all": {"executed_lines": [331, 332], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_settle_all": {"executed_lines": [336, 337], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_execute": {"executed_lines": [341, 342], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_execute_with_deadline": {"executed_lines": [346, 347], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_pool_id": {"executed_lines": [351, 352, 353], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._v4_path_key_struct_array_builder": {"executed_lines": [357, 358, 359], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_strict_v4_swap_exact_in": {"executed_lines": [363, 364, 365, 366], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_mint_position_from_deltas": {"executed_lines": [370, 371, 372, 373, 374], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_wrap_eth": {"executed_lines": [378, 379], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_unwrap_weth": {"executed_lines": [383, 384], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_out_single": {"executed_lines": [388, 389, 390, 391, 392, 393], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_out": {"executed_lines": [397, 398, 399, 400], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take_pair": {"executed_lines": [404, 405], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_clear_or_take": {"executed_lines": [409, 410], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take_portion": {"executed_lines": [414, 415], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_take": {"executed_lines": [419, 420], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder._build_v4_swap_exact_in": {"executed_lines": [424, 425], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.decode_v4_exact_input_params": {"executed_lines": [428, 429, 430, 431, 432], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder.encode_v4_exact_input_params": {"executed_lines": [435, 436, 437], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 20, 21, 22, 23, 25, 32, 43, 47, 48, 53, 56, 61, 64, 67, 70, 73, 77, 80, 81, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 123, 124, 127, 128, 131, 135, 139, 143, 147, 152, 153, 158, 202, 203, 208, 209, 217, 218, 222, 223, 228, 229, 233, 234, 239, 240, 245, 246, 250, 251, 255, 256, 260, 261, 265, 266, 271, 272, 280, 281, 286, 287, 291, 292, 296, 297, 304, 305, 309, 310, 314, 315, 319, 320, 324, 325, 329, 330, 334, 335, 339, 340, 344, 345, 349, 350, 355, 356, 361, 362, 368, 369, 376, 377, 381, 382, 386, 387, 395, 396, 402, 403, 407, 408, 412, 413, 417, 418, 422, 423, 427, 434], "summary": {"covered_lines": 124, "num_statements": 124, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"FunctionABI": {"executed_lines": [49, 50, 51, 54, 57, 58, 59, 62, 65, 68, 71, 74], "summary": {"covered_lines": 12, "num_statements": 12, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionABIBuilder": {"executed_lines": [82, 85, 86, 89, 90, 93, 94, 97, 98, 101, 102, 105, 106, 109, 110, 113, 114, 117, 118, 121, 125, 129, 132, 133, 136, 137, 140, 141, 144, 145, 148, 149], "summary": {"covered_lines": 32, "num_statements": 32, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ABIBuilder": {"executed_lines": [154, 155, 156, 159, 200, 204, 205, 206, 210, 211, 212, 213, 214, 215, 219, 220, 224, 225, 226, 230, 231, 235, 236, 237, 241, 242, 243, 247, 248, 252, 253, 257, 258, 262, 263, 267, 268, 269, 273, 274, 275, 276, 277, 278, 282, 283, 284, 288, 289, 293, 294, 298, 299, 300, 301, 302, 306, 307, 311, 312, 316, 317, 321, 322, 326, 327, 331, 332, 336, 337, 341, 342, 346, 347, 351, 352, 353, 357, 358, 359, 363, 364, 365, 366, 370, 371, 372, 373, 374, 378, 379, 383, 384, 388, 389, 390, 391, 392, 393, 397, 398, 399, 400, 404, 405, 409, 410, 414, 415, 419, 420, 424, 425, 428, 429, 430, 431, 432, 435, 436, 437], "summary": {"covered_lines": 121, "num_statements": 121, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 20, 21, 22, 23, 25, 32, 33, 34, 35, 36, 37, 39, 40, 43, 44, 47, 48, 53, 56, 61, 64, 67, 70, 73, 77, 80, 81, 84, 88, 92, 96, 100, 104, 108, 112, 116, 120, 123, 124, 127, 128, 131, 135, 139, 143, 147, 152, 153, 158, 202, 203, 208, 209, 217, 218, 222, 223, 228, 229, 233, 234, 239, 240, 245, 246, 250, 251, 255, 256, 260, 261, 265, 266, 271, 272, 280, 281, 286, 287, 291, 292, 296, 297, 304, 305, 309, 310, 314, 315, 319, 320, 324, 325, 329, 330, 334, 335, 339, 340, 344, 345, 349, 350, 355, 356, 361, 362, 368, 369, 376, 377, 381, 382, 386, 387, 395, 396, 402, 403, 407, 408, 412, 413, 417, 418, 422, 423, 427, 434], "summary": {"covered_lines": 132, "num_statements": 132, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_constants.py": {"executed_lines": [1, 8, 11, 12, 13, 14, 17, 18, 20, 21], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 8, 11, 12, 13, 14, 17, 18, 20, 21], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 8, 11, 12, 13, 14, 17, 18, 20, 21], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_decoder.py": {"executed_lines": [1, 8, 9, 10, 19, 20, 21, 22, 23, 24, 31, 35, 41, 48, 49, 50, 51, 52, 54, 58, 61, 62, 63, 64, 65, 66, 67, 70, 72, 73, 75, 76, 77, 80, 81, 82, 83, 84, 85, 87, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 109, 110, 111, 112, 125, 126, 137, 145, 146, 147, 148, 150, 159, 160, 161, 162, 163, 165, 166, 168, 169, 178, 179, 180, 181, 182, 183, 184, 191, 193, 194, 196, 198, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "summary": {"covered_lines": 98, "num_statements": 101, "percent_covered": 97.02970297029702, "percent_covered_display": "97", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [59, 68, 69], "excluded_lines": [], "functions": {"_V4Decoder.__init__": {"executed_lines": [50, 51, 52], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4Decoder._decode_v4_actions": {"executed_lines": [58, 61, 62, 63, 64, 65, 66, 67, 70], "summary": {"covered_lines": 9, "num_statements": 12, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [59, 68, 69], "excluded_lines": []}, "_V4Decoder.decode_v4_swap": {"executed_lines": [73], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4Decoder.decode_v4_pm_call": {"executed_lines": [76, 77], "summary": {"covered_lines": 2, "num_statements": 2, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.__init__": {"executed_lines": [82, 83, 84, 85], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.function_input": {"executed_lines": [94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 109, 110, 111, 112, 125, 126, 137, 145, 146, 147, 148], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.transaction": {"executed_lines": [159, 160, 161, 162, 163], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder._get_transaction": {"executed_lines": [166], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.v3_path": {"executed_lines": [178, 179, 180, 181, 182, 183, 184, 191, 193, 194, 196], "summary": {"covered_lines": 11, "num_statements": 11, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Decoder.contract_error": {"executed_lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 19, 20, 21, 22, 23, 24, 31, 35, 41, 48, 49, 54, 72, 75, 80, 81, 87, 150, 165, 168, 169, 198], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"_V4Decoder": {"executed_lines": [50, 51, 52, 58, 61, 62, 63, 64, 65, 66, 67, 70, 73, 76, 77], "summary": {"covered_lines": 15, "num_statements": 18, "percent_covered": 83.33333333333333, "percent_covered_display": "83", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [59, 68, 69], "excluded_lines": []}, "_Decoder": {"executed_lines": [82, 83, 84, 85, 94, 96, 97, 98, 99, 101, 102, 103, 104, 105, 107, 108, 109, 110, 111, 112, 125, 126, 137, 145, 146, 147, 148, 159, 160, 161, 162, 163, 166, 178, 179, 180, 181, 182, 183, 184, 191, 193, 194, 196, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216], "summary": {"covered_lines": 58, "num_statements": 58, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 10, 19, 20, 21, 22, 23, 24, 31, 35, 41, 48, 49, 54, 72, 75, 80, 81, 87, 150, 165, 168, 169, 198], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_encoder.py": {"executed_lines": [1, 8, 10, 11, 23, 24, 25, 26, 35, 36, 40, 48, 54, 57, 58, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 76, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 100, 101, 116, 117, 118, 126, 127, 128, 129, 131, 132, 138, 146, 150, 153, 156, 157, 158, 159, 160, 161, 162, 164, 165, 166, 167, 169, 174, 175, 176, 178, 183, 184, 185, 188, 190, 200, 210, 211, 213, 221, 222, 223, 224, 226, 227, 228, 229, 252, 263, 274, 283, 291, 292, 293, 294, 295, 296, 297, 300, 302, 319, 320, 321, 323, 324, 325, 326, 328, 329, 330, 331, 333, 339, 340, 341, 343, 360, 361, 362, 364, 374, 383, 384, 385, 386, 389, 390, 391, 392, 393, 394, 395, 397, 398, 399, 400, 401, 403, 404, 407, 412, 413, 414, 416, 421, 422, 423, 425, 439, 440, 441, 442, 444, 458, 459, 460, 461, 463, 484, 485, 486, 487, 489, 508, 517, 538, 539, 540, 541, 543, 565, 566, 567, 568, 569, 571, 591, 600, 622, 623, 624, 625, 626, 628, 641, 646, 647, 648, 650, 666, 667, 668, 669, 671, 688, 693, 695, 696, 697, 698, 700, 718, 719, 720, 721, 723, 734, 735, 737, 738, 739, 740, 741, 743, 744, 746, 753, 754, 755, 756, 758, 759, 760, 762, 805, 807, 808, 810, 811, 813, 814, 815, 817, 818, 820, 821, 823, 824, 825, 831, 843, 844, 845, 847, 849], "summary": {"covered_lines": 251, "num_statements": 276, "percent_covered": 90.94202898550725, "percent_covered_display": "91", "missing_lines": 25, "excluded_lines": 0}, "missing_lines": [217, 218, 219, 259, 260, 261, 270, 271, 272, 279, 280, 281, 287, 288, 289, 370, 371, 372, 379, 380, 381, 729, 730, 731, 732], "excluded_lines": [], "functions": {"_Encoder.__init__": {"executed_lines": [78, 79, 80], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v3_path": {"executed_lines": [84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v4_pool_key": {"executed_lines": [116, 117, 118], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v4_pool_id": {"executed_lines": [127, 128, 129], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.v4_path_key": {"executed_lines": [138], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder.chain": {"executed_lines": [150], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder.__init__": {"executed_lines": [158, 159, 160, 161, 162], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder._add_action": {"executed_lines": [165, 166, 167], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder.settle": {"executed_lines": [174, 175, 176], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder.take": {"executed_lines": [183, 184, 185], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.mint_position": {"executed_lines": [200, 210, 211], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.settle_pair": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [217, 218, 219], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.close_currency": {"executed_lines": [222, 223, 224], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.sweep": {"executed_lines": [227, 228, 229], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.wrap_eth": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [259, 260, 261], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.unwrap_weth": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [270, 271, 272], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.take_pair": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [279, 280, 281], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.clear_or_take": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [287, 288, 289], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder.build_v4_posm_call": {"executed_lines": [292, 293, 294, 295, 296, 297], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_in_single": {"executed_lines": [319, 320, 321], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.take_all": {"executed_lines": [324, 325, 326], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.settle_all": {"executed_lines": [329, 330, 331], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_in": {"executed_lines": [339, 340, 341], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_out_single": {"executed_lines": [360, 361, 362], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.swap_exact_out": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [370, 371, 372], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.take_portion": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 3, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 3, "excluded_lines": 0}, "missing_lines": [379, 380, 381], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder.build_v4_swap": {"executed_lines": [384, 385, 386], "summary": {"covered_lines": 3, "num_statements": 3, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.__init__": {"executed_lines": [391, 392, 393, 394, 395], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder._add_command": {"executed_lines": [398, 399, 400, 401], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder._get_recipient": {"executed_lines": [407, 412, 413, 414, 416], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder._get_command": {"executed_lines": [423], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.wrap_eth": {"executed_lines": [439, 440, 441, 442], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.unwrap_weth": {"executed_lines": [458, 459, 460, 461], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v2_swap_exact_in": {"executed_lines": [484, 485, 486, 487], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v2_swap_exact_in_from_balance": {"executed_lines": [508], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v2_swap_exact_out": {"executed_lines": [538, 539, 540, 541], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v3_swap_exact_in": {"executed_lines": [565, 566, 567, 568, 569], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v3_swap_exact_in_from_balance": {"executed_lines": [591], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v3_swap_exact_out": {"executed_lines": [622, 623, 624, 625, 626], "summary": {"covered_lines": 5, "num_statements": 5, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.permit2_permit": {"executed_lines": [641, 646, 647, 648], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.sweep": {"executed_lines": [666, 667, 668, 669], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.pay_portion": {"executed_lines": [688, 693, 695, 696, 697, 698], "summary": {"covered_lines": 6, "num_statements": 6, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.transfer": {"executed_lines": [718, 719, 720, 721], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.permit2_transfer_from": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 4, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [729, 730, 731, 732], "excluded_lines": []}, "_ChainedFunctionBuilder.v4_swap": {"executed_lines": [735], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v4_initialize_pool": {"executed_lines": [738, 739, 740, 741], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.v4_posm_call": {"executed_lines": [744], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.build": {"executed_lines": [753, 754, 755, 756, 758, 759, 760], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_ChainedFunctionBuilder.build_transaction": {"executed_lines": [805, 807, 808, 810, 811, 813, 814, 815, 817, 818, 820, 821, 823, 824, 825, 831, 843, 844, 845, 847, 849], "summary": {"covered_lines": 21, "num_statements": 21, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 23, 24, 25, 26, 35, 36, 40, 48, 54, 57, 58, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 76, 77, 82, 83, 100, 101, 126, 131, 132, 146, 153, 156, 157, 164, 169, 178, 188, 190, 213, 221, 226, 252, 263, 274, 283, 291, 300, 302, 323, 328, 333, 343, 364, 374, 383, 389, 390, 397, 403, 404, 421, 422, 425, 444, 463, 489, 517, 543, 571, 600, 628, 650, 671, 700, 723, 734, 737, 743, 746, 762], "summary": {"covered_lines": 84, "num_statements": 84, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"PoolKey": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "PathKey": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_Encoder": {"executed_lines": [78, 79, 80, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, 116, 117, 118, 127, 128, 129, 138, 150], "summary": {"covered_lines": 25, "num_statements": 25, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedCommonFunctionBuilder": {"executed_lines": [158, 159, 160, 161, 162, 165, 166, 167, 174, 175, 176, 183, 184, 185], "summary": {"covered_lines": 14, "num_statements": 14, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_V4ChainedPositionFunctionBuilder": {"executed_lines": [200, 210, 211, 222, 223, 224, 227, 228, 229, 292, 293, 294, 295, 296, 297], "summary": {"covered_lines": 15, "num_statements": 30, "percent_covered": 50.0, "percent_covered_display": "50", "missing_lines": 15, "excluded_lines": 0}, "missing_lines": [217, 218, 219, 259, 260, 261, 270, 271, 272, 279, 280, 281, 287, 288, 289], "excluded_lines": []}, "_V4ChainedSwapFunctionBuilder": {"executed_lines": [319, 320, 321, 324, 325, 326, 329, 330, 331, 339, 340, 341, 360, 361, 362, 384, 385, 386], "summary": {"covered_lines": 18, "num_statements": 24, "percent_covered": 75.0, "percent_covered_display": "75", "missing_lines": 6, "excluded_lines": 0}, "missing_lines": [370, 371, 372, 379, 380, 381], "excluded_lines": []}, "_ChainedFunctionBuilder": {"executed_lines": [391, 392, 393, 394, 395, 398, 399, 400, 401, 407, 412, 413, 414, 416, 423, 439, 440, 441, 442, 458, 459, 460, 461, 484, 485, 486, 487, 508, 538, 539, 540, 541, 565, 566, 567, 568, 569, 591, 622, 623, 624, 625, 626, 641, 646, 647, 648, 666, 667, 668, 669, 688, 693, 695, 696, 697, 698, 718, 719, 720, 721, 735, 738, 739, 740, 741, 744, 753, 754, 755, 756, 758, 759, 760, 805, 807, 808, 810, 811, 813, 814, 815, 817, 818, 820, 821, 823, 824, 825, 831, 843, 844, 845, 847, 849], "summary": {"covered_lines": 95, "num_statements": 99, "percent_covered": 95.95959595959596, "percent_covered_display": "96", "missing_lines": 4, "excluded_lines": 0}, "missing_lines": [729, 730, 731, 732], "excluded_lines": []}, "": {"executed_lines": [1, 8, 10, 11, 23, 24, 25, 26, 35, 36, 40, 48, 54, 57, 58, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 76, 77, 82, 83, 100, 101, 126, 131, 132, 146, 153, 156, 157, 164, 169, 178, 188, 190, 213, 221, 226, 252, 263, 274, 283, 291, 300, 302, 323, 328, 333, 343, 364, 374, 383, 389, 390, 397, 403, 404, 421, 422, 425, 444, 463, 489, 517, 543, 571, 600, 628, 650, 671, 700, 723, 734, 737, 743, 746, 762], "summary": {"covered_lines": 84, "num_statements": 84, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/_enums.py": {"executed_lines": [1, 10, 15, 16, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 45, 46, 47, 50, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 89, 90, 93, 94, 95, 98, 99, 100, 101, 102], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"": {"executed_lines": [1, 10, 15, 16, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 45, 46, 47, 50, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 89, 90, 93, 94, 95, 98, 99, 100, 101, 102], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"RouterFunction": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "FunctionRecipient": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "_RouterConstant": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "TransactionSpeed": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "V4Actions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "V4Constants": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "MiscFunctions": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 0, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 10, 15, 16, 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 45, 46, 47, 50, 52, 53, 54, 55, 56, 59, 60, 61, 62, 63, 66, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 89, 90, 93, 94, 95, 98, 99, 100, 101, 102], "summary": {"covered_lines": 60, "num_statements": 60, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/router_codec.py": {"executed_lines": [1, 8, 9, 16, 20, 21, 28, 29, 36, 37, 40, 41, 42, 45, 46, 47, 48, 49, 50, 51, 53, 54, 55, 57, 58, 62, 64, 65, 69, 71, 72, 76, 78, 79, 111, 117, 122, 123, 124, 125, 130, 132, 153, 154, 155, 156], "summary": {"covered_lines": 45, "num_statements": 45, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": [], "functions": {"RouterCodec.__init__": {"executed_lines": [47, 48, 49, 50, 51, 53, 54, 55], "summary": {"covered_lines": 8, "num_statements": 8, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.get_default_deadline": {"executed_lines": [62], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.get_default_expiration": {"executed_lines": [69], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.get_max_expiration": {"executed_lines": [76], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.create_permit2_signable_message": {"executed_lines": [111, 117, 122, 123, 124, 125, 130], "summary": {"covered_lines": 7, "num_statements": 7, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "RouterCodec.fetch_permit2_allowance": {"executed_lines": [153, 154, 155, 156], "summary": {"covered_lines": 4, "num_statements": 4, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 16, 20, 21, 28, 29, 36, 37, 40, 41, 42, 45, 46, 57, 58, 64, 65, 71, 72, 78, 79, 132], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"RouterCodec": {"executed_lines": [47, 48, 49, 50, 51, 53, 54, 55, 62, 69, 76, 111, 117, 122, 123, 124, 125, 130, 153, 154, 155, 156], "summary": {"covered_lines": 22, "num_statements": 22, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "": {"executed_lines": [1, 8, 9, 16, 20, 21, 28, 29, 36, 37, 40, 41, 42, 45, 46, 57, 58, 64, 65, 71, 72, 78, 79, 132], "summary": {"covered_lines": 23, "num_statements": 23, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}}, "uniswap_universal_router_decoder/utils.py": {"executed_lines": [1, 2, 8, 9, 15, 18, 26, 43, 44, 45, 51, 52, 54, 55, 57, 58, 60, 63, 70, 73], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [79], "excluded_lines": [], "functions": {"compute_gas_fees": {"executed_lines": [43, 44, 45, 51, 52, 54, 55, 57, 58, 60], "summary": {"covered_lines": 10, "num_statements": 10, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "compute_sqrt_price_x96": {"executed_lines": [70], "summary": {"covered_lines": 1, "num_statements": 1, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}, "convert_sqrt_price_x96": {"executed_lines": [], "summary": {"covered_lines": 0, "num_statements": 1, "percent_covered": 0.0, "percent_covered_display": "0", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [79], "excluded_lines": []}, "": {"executed_lines": [1, 2, 8, 9, 15, 18, 26, 63, 73], "summary": {"covered_lines": 9, "num_statements": 9, "percent_covered": 100.0, "percent_covered_display": "100", "missing_lines": 0, "excluded_lines": 0}, "missing_lines": [], "excluded_lines": []}}, "classes": {"": {"executed_lines": [1, 2, 8, 9, 15, 18, 26, 43, 44, 45, 51, 52, 54, 55, 57, 58, 60, 63, 70, 73], "summary": {"covered_lines": 20, "num_statements": 21, "percent_covered": 95.23809523809524, "percent_covered_display": "95", "missing_lines": 1, "excluded_lines": 0}, "missing_lines": [79], "excluded_lines": []}}}}, "totals": {"covered_lines": 784, "num_statements": 813, "percent_covered": 96.4329643296433, "percent_covered_display": "96", "missing_lines": 29, "excluded_lines": 0}} \ No newline at end of file diff --git a/tests/test_router_codec.py b/tests/test_router_codec.py index 6b41230..7dc24e9 100644 --- a/tests/test_router_codec.py +++ b/tests/test_router_codec.py @@ -22,5 +22,10 @@ def test_get_max_expiration(codec): ) ) def test_fetch_permit2_allowance(wallet, token, block_identifier, expected_result, codec_rpc): - amount, expiration, nonce = codec_rpc.fetch_permit2_allowance(wallet, token, block_identifier=block_identifier) + amount, expiration, nonce = codec_rpc.fetch_permit2_allowance( + wallet, + token, + spender=Web3.to_checksum_address("0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD"), # old UR address + block_identifier=block_identifier + ) assert (amount, expiration, nonce) == expected_result diff --git a/uniswap_universal_router_decoder/_constants.py b/uniswap_universal_router_decoder/_constants.py index 513f367..4a2ced4 100644 --- a/uniswap_universal_router_decoder/_constants.py +++ b/uniswap_universal_router_decoder/_constants.py @@ -15,7 +15,7 @@ # Mainnet addresses _permit2_address = Web3.to_checksum_address("0x000000000022D473030F116dDEE9F6B43aC78BA3") -_ur_address = Web3.to_checksum_address("0x3fC91A3afd70395Cd496C647d5a6CC9D4B2b7FAD") +_ur_address = Web3.to_checksum_address("0x66a9893cC07D91D95644AEDD05D03f95e1dBA8Af") _permit2_domain_data = {'name': 'Permit2', 'chainId': 1, 'verifyingContract': _permit2_address} _permit2_types = {