diff --git a/slither.db.json b/slither.db.json index 4efd6b22c..ce7fdf5cd 100644 --- a/slither.db.json +++ b/slither.db.json @@ -1 +1 @@ -[{"elements": [{"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}, {"type": "node", "name": "(success,None) = deployer.call{value: address(this).balance}()", "source_mapping": {"start": 4756, "length": 65, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [118], "starting_column": 9, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}], "description": "L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#77-120) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success,None) = deployer.call{value: address(this).balance}() (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#118)\n", "markdown": "[L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success,None) = deployer.call{value: address(this).balance}()](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L118)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120", "id": "04b7713760c9cd5b98aaa53a7e551c516febef4ad6844a984d8a91a36843bb5e", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "node", "name": "_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)", "source_mapping": {"start": 14536, "length": 53, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [341], "starting_column": 9, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)", "source_mapping": {"start": 14536, "length": 53, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [341], "starting_column": 9, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "Multiple retryable tickets created in the same function:\n\t -_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#341)\n\t -_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#341)\n", "markdown": "Multiple retryable tickets created in the same function:\n\t -[_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L341)\n\t -[_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L341)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L341", "id": "a5e3feb7f2c59d43132c3ae5f4b1d458ebcc490d790a35328f9b5374e676bfac", "check": "out-of-order-retryable", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "node", "name": "_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)", "source_mapping": {"start": 4464, "length": 82, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [113], "starting_column": 9, "ending_column": 91}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}, {"type": "node", "name": "_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)", "source_mapping": {"start": 4464, "length": 82, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [113], "starting_column": 9, "ending_column": 91}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}], "description": "Multiple retryable tickets created in the same function:\n\t -_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#113)\n\t -_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#113)\n", "markdown": "Multiple retryable tickets created in the same function:\n\t -[_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L113)\n\t -[_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L113)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L113", "id": "17648cf433b86bf06bcab3f179d37fe19e73adff495e0e9485ce4b5d2d22a91b", "check": "out-of-order-retryable", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "outboundEscrowTransfer", "source_mapping": {"start": 11053, "length": 592, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumGateway", "source_mapping": {"start": 1279, "length": 14336, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404], "starting_column": 1, "ending_column": 2}}, "signature": "outboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IERC20(_l1Token).safeTransferFrom(_from,address(this),_amount)", "source_mapping": {"start": 11459, "length": 64, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [301], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "outboundEscrowTransfer", "source_mapping": {"start": 11053, "length": 592, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumGateway", "source_mapping": {"start": 1279, "length": 14336, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404], "starting_column": 1, "ending_column": 2}}, "signature": "outboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L1ArbitrumGateway.outboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#293-304) uses arbitrary from in transferFrom: IERC20(_l1Token).safeTransferFrom(_from,address(this),_amount) (contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#301)\n", "markdown": "[L1ArbitrumGateway.outboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#L293-L304) uses arbitrary from in transferFrom: [IERC20(_l1Token).safeTransferFrom(_from,address(this),_amount)](contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#L301)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#L293-L304", "id": "7f2693a46b04c9b469a640c442acfb2aaa3e814506fef81efed08031db2d23bd", "check": "arbitrary-send-erc20", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2818, "length": 266, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2WethGateway", "source_mapping": {"start": 864, "length": 2787, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IWETH9(_l2TokenAddress).deposit{value: _amount}()", "source_mapping": {"start": 2964, "length": 51, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2818, "length": 266, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2WethGateway", "source_mapping": {"start": 864, "length": 2787, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L2WethGateway.inboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#80-87) sends eth to arbitrary user\n\tDangerous calls:\n\t- IWETH9(_l2TokenAddress).deposit{value: _amount}() (contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#85)\n", "markdown": "[L2WethGateway.inboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#L80-L87) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IWETH9(_l2TokenAddress).deposit{value: _amount}()](contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#L85)\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#L80-L87", "id": "e2c734fd5c5ec43d4faaa9a093395e2556c3b429c34215a26107de1a4271f405", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}, {"type": "node", "name": "retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#191-391) sends eth to arbitrary user\n\tDangerous calls:\n\t- retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n\t- retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n\t- retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n\t- retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n", "markdown": "[L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L191-L391) sends eth to arbitrary user\n\tDangerous calls:\n\t- [retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n\t- [retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n\t- [retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n\t- [retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L191-L391", "id": "034dbaa890789f67476e34943c87feda61f5b86e72bde1b9618797d0fa794382", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)", "source_mapping": {"start": 18665, "length": 317, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [446, 447, 448, 449, 450, 451, 452, 453, 454, 455], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}}}], "description": "L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#419-457) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#446-455)\n", "markdown": "[L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L446-L455)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457", "id": "fb98f7278a5196cafc9e11bf1f3cea87582f2d4b2f02ca2d1a86e2eba55090ee", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}, {"type": "node", "name": "(success) = deployer.call{value: address(this).balance}()", "source_mapping": {"start": 4756, "length": 65, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [118], "starting_column": 9, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}], "description": "L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#77-120) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success) = deployer.call{value: address(this).balance}() (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#118)\n", "markdown": "[L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success) = deployer.call{value: address(this).balance}()](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L118)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120", "id": "ada2d1435f09d3b48a0786ea951cb74800a804b9f25e399cf86fef60054fd1cc", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}, {"type": "node", "name": "IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)", "source_mapping": {"start": 6332, "length": 356, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [164, 165, 166, 167, 168, 169, 170, 171, 172, 173], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}}}], "description": "L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#158-174) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#164-173)\n", "markdown": "[L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L164-L173)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174", "id": "4c4f70964e6cde91afbc799d6ab9b4dc837d537053b2cc98e9c92a36582269d8", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2941, "length": 245, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [88, 89, 90, 91, 92, 93, 94, 95], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1WethGateway", "source_mapping": {"start": 965, "length": 3233, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IWETH9(_l1Token).deposit{value: _amount}()", "source_mapping": {"start": 3080, "length": 44, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [93], "starting_column": 9, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2941, "length": 245, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [88, 89, 90, 91, 92, 93, 94, 95], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1WethGateway", "source_mapping": {"start": 965, "length": 3233, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L1WethGateway.inboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#88-95) sends eth to arbitrary user\n\tDangerous calls:\n\t- IWETH9(_l1Token).deposit{value: _amount}() (contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#93)\n", "markdown": "[L1WethGateway.inboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#L88-L95) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IWETH9(_l1Token).deposit{value: _amount}()](contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#L93)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#L88-L95", "id": "aefde4912f3446b807349549a2c0405d67afd0d48c7f40e4f14c642fc6454318", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "contract", "name": "IERC20Bridge", "source_mapping": {"start": 23832, "length": 86, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [574, 575, 576], "starting_column": 1, "ending_column": 2}}, {"type": "contract", "name": "IERC20Bridge", "source_mapping": {"start": 119, "length": 229, "filename_relative": "contracts/tokenbridge/libraries/IERC20Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/libraries/IERC20Bridge.sol", "filename_short": "contracts/tokenbridge/libraries/IERC20Bridge.sol", "is_dependency": false, "lines": [6, 7, 8, 9, 10, 11], "starting_column": 1, "ending_column": 2}}], "description": "IERC20Bridge is re-used:\n\t- IERC20Bridge (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#574-576)\n\t- IERC20Bridge (contracts/tokenbridge/libraries/IERC20Bridge.sol#6-11)\n", "markdown": "IERC20Bridge is re-used:\n\t- [IERC20Bridge](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L574-L576)\n\t- [IERC20Bridge](contracts/tokenbridge/libraries/IERC20Bridge.sol#L6-L11)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L574-L576", "id": "2ca35f4fbb313c6294b93a66b333ff2dc0f962a9c98de3f908d0dff6b4538f26", "check": "name-reused", "impact": "High", "confidence": "High"}, {"elements": [{"type": "contract", "name": "IERC20Inbox", "source_mapping": {"start": 6152, "length": 380, "filename_relative": "contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol", "filename_short": "contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol", "is_dependency": false, "lines": [192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205], "starting_column": 1, "ending_column": 0}}, {"type": "contract", "name": "IERC20Inbox", "source_mapping": {"start": 8253, "length": 380, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255], "starting_column": 1, "ending_column": 2}}], "description": "IERC20Inbox is re-used:\n\t- IERC20Inbox (contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol#192-205)\n\t- IERC20Inbox (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#243-255)\n", "markdown": "IERC20Inbox is re-used:\n\t- [IERC20Inbox](contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol#L192-L205)\n\t- [IERC20Inbox](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L243-L255)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol#L192-L205", "id": "d9200075657b7d891f639f04329e159f258cf6e64fd3881860ed334af315532f", "check": "name-reused", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "redirectedExits", "source_mapping": {"start": 1128, "length": 51, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [42], "starting_column": 5, "ending_column": 56}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumExtendedGateway", "source_mapping": {"start": 927, "length": 4270, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getExternalCall", "source_mapping": {"start": 3628, "length": 925, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumExtendedGateway", "source_mapping": {"start": 927, "length": 4270, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140], "starting_column": 1, "ending_column": 2}}, "signature": "getExternalCall(uint256,address,bytes)"}}], "description": "L1ArbitrumExtendedGateway.redirectedExits (contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#42) is never initialized. It is used in:\n\t- L1ArbitrumExtendedGateway.getExternalCall(uint256,address,bytes) (contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#103-120)\n", "markdown": "[L1ArbitrumExtendedGateway.redirectedExits](contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#L42) is never initialized. It is used in:\n\t- [L1ArbitrumExtendedGateway.getExternalCall(uint256,address,bytes)](contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#L103-L120)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#L42", "id": "e5aa1893c702d02a90473a1c603e113adcc2f5f0696cde71aac9ae09574067bf", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "shouldWithdraw", "source_mapping": {"start": 9380, "length": 19, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "is_dependency": false, "lines": [263], "starting_column": 13, "ending_column": 32}, "type_specific_fields": {"parent": {"type": "function", "name": "finalizeInboundTransfer", "source_mapping": {"start": 8148, "length": 2321, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "is_dependency": false, "lines": [227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2ArbitrumGateway", "source_mapping": {"start": 1103, "length": 9658, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299], "starting_column": 1, "ending_column": 2}}, "signature": "finalizeInboundTransfer(address,address,address,uint256,bytes)"}}}}], "description": "L2ArbitrumGateway.finalizeInboundTransfer(address,address,address,uint256,bytes).shouldWithdraw (contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol#263) is a local variable never initialized\n", "markdown": "[L2ArbitrumGateway.finalizeInboundTransfer(address,address,address,uint256,bytes).shouldWithdraw](contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol#L263) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol#L263", "id": "99efcf80cf8863b2ea366b5c3a40419d4d30f7aa6912ddfcfc6869d533f387f9", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "l1Deployment", "source_mapping": {"start": 9536, "length": 41, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [222], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l1Deployment (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#222) is a local variable never initialized\n", "markdown": "[L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l1Deployment](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L222) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L222", "id": "83541fa7c678a7dc42b6a8c5709120d6d76a9a51c8ccf8c6cf6e984776341180", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "l2NewDefaultGateway", "source_mapping": {"start": 2756, "length": 27, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "is_dependency": false, "lines": [92], "starting_column": 9, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "function", "name": "_setDefaultGateway", "source_mapping": {"start": 2425, "length": 1071, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "is_dependency": false, "lines": [81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1GatewayRouter", "source_mapping": {"start": 1254, "length": 11109, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354], "starting_column": 1, "ending_column": 2}}, "signature": "_setDefaultGateway(address,uint256,uint256,uint256,uint256)"}}}}], "description": "L1GatewayRouter._setDefaultGateway(address,uint256,uint256,uint256,uint256).l2NewDefaultGateway (contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol#92) is a local variable never initialized\n", "markdown": "[L1GatewayRouter._setDefaultGateway(address,uint256,uint256,uint256,uint256).l2NewDefaultGateway](contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol#L92) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol#L92", "id": "8557712f770f31a8c2dbfa8451859919fe91c55860d5c13d31210fc167b6085e", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "l2Deployment", "source_mapping": {"start": 9587, "length": 41, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [223], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l2Deployment (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#223) is a local variable never initialized\n", "markdown": "[L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l2Deployment](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L223) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L223", "id": "9bfb8ca665ae98867b761c889e2c325d50e1cb30307188f74f012df830627e2b", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deployL2Contracts", "source_mapping": {"start": 1836, "length": 2106, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2AtomicTokenBridgeFactory", "source_mapping": {"start": 1325, "length": 10350, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address)"}}, {"type": "node", "name": "Create2.deploy(0,_getL2Salt(OrbitSalts.L2_MULTICALL),CreationCodeHelper.getCreationCodeFor(l2Code.multicall))", "source_mapping": {"start": 3658, "length": 157, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [78, 79, 80, 81, 82], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "deployL2Contracts", "source_mapping": {"start": 1836, "length": 2106, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2AtomicTokenBridgeFactory", "source_mapping": {"start": 1325, "length": 10350, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address)"}}}}], "description": "L2AtomicTokenBridgeFactory.deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address) (contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#35-86) ignores return value by Create2.deploy(0,_getL2Salt(OrbitSalts.L2_MULTICALL),CreationCodeHelper.getCreationCodeFor(l2Code.multicall)) (contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#78-82)\n", "markdown": "[L2AtomicTokenBridgeFactory.deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address)](contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#L35-L86) ignores return value by [Create2.deploy(0,_getL2Salt(OrbitSalts.L2_MULTICALL),CreationCodeHelper.getCreationCodeFor(l2Code.multicall))](contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#L78-L82)\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#L35-L86", "id": "2956ed76e7f9c4953ba1242f2735d68b34ea04746ec3353fe026ad5948aa4de9", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}, {"type": "node", "name": "IERC20Inbox(inbox).createRetryableTicket(address(0),0,0,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,retryableFee,deploymentData)", "source_mapping": {"start": 18088, "length": 315, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}}}], "description": "L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#419-457) ignores return value by IERC20Inbox(inbox).createRetryableTicket(address(0),0,0,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,retryableFee,deploymentData) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#430-440)\n", "markdown": "[L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457) ignores return value by [IERC20Inbox(inbox).createRetryableTicket(address(0),0,0,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,retryableFee,deploymentData)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L430-L440)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457", "id": "5b42d3da6788d2620013e282eb36392b896719376d0e6e696cdf0f834f4304e5", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)", "source_mapping": {"start": 18665, "length": 317, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [446, 447, 448, 449, 450, 451, 452, 453, 454, 455], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}}}], "description": "L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#419-457) ignores return value by IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#446-455)\n", "markdown": "[L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457) ignores return value by [IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L446-L455)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457", "id": "aafe49a231e7d3b126341a33da7db43715357cb892fe24472837df4c5f33ec11", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}, {"type": "node", "name": "IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)", "source_mapping": {"start": 6332, "length": 356, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [164, 165, 166, 167, 168, 169, 170, 171, 172, 173], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}}}], "description": "L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#158-174) ignores return value by IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#164-173)\n", "markdown": "[L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174) ignores return value by [IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L164-L173)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174", "id": "5f74ad6c8ee4fc18cbf8d669df2b679b3512ee14642ecb63b05bf84023e9a896", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_createRetryableUsingFeeToken", "source_mapping": {"start": 6701, "length": 535, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingFeeToken(RetryableParams,uint256,bytes)"}}, {"type": "node", "name": "IERC20Inbox(retryableParams.inbox).createRetryableTicket(retryableParams.target,0,0,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,retryableFee,data)", "source_mapping": {"start": 6872, "length": 357, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "_createRetryableUsingFeeToken", "source_mapping": {"start": 6701, "length": 535, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingFeeToken(RetryableParams,uint256,bytes)"}}}}], "description": "L1TokenBridgeRetryableSender._createRetryableUsingFeeToken(RetryableParams,uint256,bytes) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#176-192) ignores return value by IERC20Inbox(retryableParams.inbox).createRetryableTicket(retryableParams.target,0,0,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,retryableFee,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#181-191)\n", "markdown": "[L1TokenBridgeRetryableSender._createRetryableUsingFeeToken(RetryableParams,uint256,bytes)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L176-L192) ignores return value by [IERC20Inbox(retryableParams.inbox).createRetryableTicket(retryableParams.target,0,0,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,retryableFee,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L181-L191)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L176-L192", "id": "7d88b6a8fd8fe6fea6815daf535353cce2e2f5054dbb4c9d49a56e61dcdcd6f0", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}] \ No newline at end of file +[{"elements": [{"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 5617, "length": 181, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "is_dependency": false, "lines": [169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2USDCGateway", "source_mapping": {"start": 1212, "length": 5513, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "is_dependency": false, "lines": [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IFiatToken(_l2Address).mint(_dest,_amount)", "source_mapping": {"start": 5748, "length": 43, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "is_dependency": false, "lines": [173], "starting_column": 9, "ending_column": 52}, "type_specific_fields": {"parent": {"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 5617, "length": 181, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "is_dependency": false, "lines": [169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2USDCGateway", "source_mapping": {"start": 1212, "length": 5513, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol", "is_dependency": false, "lines": [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L2USDCGateway.inboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol#169-174) ignores return value by IFiatToken(_l2Address).mint(_dest,_amount) (contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol#173)\n", "markdown": "[L2USDCGateway.inboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol#L169-L174) ignores return value by [IFiatToken(_l2Address).mint(_dest,_amount)](contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol#L173)\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/gateway/L2USDCGateway.sol#L169-L174", "id": "2ecde5370079977f02445e55196dbe5d73a3cb64b4f74f7aca0286300948b5d3", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}, {"type": "node", "name": "(success,None) = deployer.call{value: address(this).balance}()", "source_mapping": {"start": 4756, "length": 65, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [118], "starting_column": 9, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}], "description": "L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#77-120) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success,None) = deployer.call{value: address(this).balance}() (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#118)\n", "markdown": "[L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success,None) = deployer.call{value: address(this).balance}()](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L118)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120", "id": "04b7713760c9cd5b98aaa53a7e551c516febef4ad6844a984d8a91a36843bb5e", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "node", "name": "_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)", "source_mapping": {"start": 14536, "length": 53, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [341], "starting_column": 9, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)", "source_mapping": {"start": 14536, "length": 53, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [341], "starting_column": 9, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "Multiple retryable tickets created in the same function:\n\t -_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#341)\n\t -_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#341)\n", "markdown": "Multiple retryable tickets created in the same function:\n\t -[_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L341)\n\t -[_deployL2Factory(inbox,gasPriceBid,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L341)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L341", "id": "a5e3feb7f2c59d43132c3ae5f4b1d458ebcc490d790a35328f9b5374e676bfac", "check": "out-of-order-retryable", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "node", "name": "_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)", "source_mapping": {"start": 4464, "length": 82, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [113], "starting_column": 9, "ending_column": 91}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}, {"type": "node", "name": "_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)", "source_mapping": {"start": 4464, "length": 82, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [113], "starting_column": 9, "ending_column": 91}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}], "description": "Multiple retryable tickets created in the same function:\n\t -_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#113)\n\t -_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#113)\n", "markdown": "Multiple retryable tickets created in the same function:\n\t -[_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L113)\n\t -[_createRetryableUsingEth(retryableParams,maxSubmissionCost,retryableValue,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L113)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L113", "id": "17648cf433b86bf06bcab3f179d37fe19e73adff495e0e9485ce4b5d2d22a91b", "check": "out-of-order-retryable", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "outboundEscrowTransfer", "source_mapping": {"start": 11053, "length": 592, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumGateway", "source_mapping": {"start": 1279, "length": 14336, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404], "starting_column": 1, "ending_column": 2}}, "signature": "outboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IERC20(_l1Token).safeTransferFrom(_from,address(this),_amount)", "source_mapping": {"start": 11459, "length": 64, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [301], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "outboundEscrowTransfer", "source_mapping": {"start": 11053, "length": 592, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumGateway", "source_mapping": {"start": 1279, "length": 14336, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol", "is_dependency": false, "lines": [36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404], "starting_column": 1, "ending_column": 2}}, "signature": "outboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L1ArbitrumGateway.outboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#293-304) uses arbitrary from in transferFrom: IERC20(_l1Token).safeTransferFrom(_from,address(this),_amount) (contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#301)\n", "markdown": "[L1ArbitrumGateway.outboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#L293-L304) uses arbitrary from in transferFrom: [IERC20(_l1Token).safeTransferFrom(_from,address(this),_amount)](contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#L301)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumGateway.sol#L293-L304", "id": "7f2693a46b04c9b469a640c442acfb2aaa3e814506fef81efed08031db2d23bd", "check": "arbitrary-send-erc20", "impact": "High", "confidence": "High"}, {"elements": [{"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2818, "length": 266, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2WethGateway", "source_mapping": {"start": 864, "length": 2787, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IWETH9(_l2TokenAddress).deposit{value: _amount}()", "source_mapping": {"start": 2964, "length": 51, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2818, "length": 266, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2WethGateway", "source_mapping": {"start": 864, "length": 2787, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L2WethGateway.inboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#80-87) sends eth to arbitrary user\n\tDangerous calls:\n\t- IWETH9(_l2TokenAddress).deposit{value: _amount}() (contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#85)\n", "markdown": "[L2WethGateway.inboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#L80-L87) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IWETH9(_l2TokenAddress).deposit{value: _amount}()](contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#L85)\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/gateway/L2WethGateway.sol#L80-L87", "id": "e2c734fd5c5ec43d4faaa9a093395e2556c3b429c34215a26107de1a4271f405", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}, {"type": "node", "name": "retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}, {"type": "node", "name": "retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)", "source_mapping": {"start": 15324, "length": 887, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#191-391) sends eth to arbitrary user\n\tDangerous calls:\n\t- retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n\t- retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n\t- retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n\t- retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#357-381)\n", "markdown": "[L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L191-L391) sends eth to arbitrary user\n\tDangerous calls:\n\t- [retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n\t- [retryableSender.sendRetryable{value: 0}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n\t- [retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,address(0),address(0),address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n\t- [retryableSender.sendRetryable{value: address(this).balance}(RetryableParams(inbox,canonicalL2FactoryAddress,msg.sender,msg.sender,maxGasForContracts,gasPriceBid),L2TemplateAddresses(l2RouterTemplate,l2StandardGatewayTemplate,l2CustomGatewayTemplate,l2WethGatewayTemplate,l2WethTemplate,address(l1Templates.upgradeExecutor),l2MulticallTemplate),l1Deployment,l2Deployment.standardGateway,l2RollupOwner,msg.sender,upgradeExecutor,isUsingFeeToken)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L357-L381)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L191-L391", "id": "034dbaa890789f67476e34943c87feda61f5b86e72bde1b9618797d0fa794382", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)", "source_mapping": {"start": 18665, "length": 317, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [446, 447, 448, 449, 450, 451, 452, 453, 454, 455], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}}}], "description": "L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#419-457) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#446-455)\n", "markdown": "[L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L446-L455)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457", "id": "fb98f7278a5196cafc9e11bf1f3cea87582f2d4b2f02ca2d1a86e2eba55090ee", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}, {"type": "node", "name": "(success) = deployer.call{value: address(this).balance}()", "source_mapping": {"start": 4756, "length": 65, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [118], "starting_column": 9, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "_sendRetryableUsingEth", "source_mapping": {"start": 3088, "length": 1814, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)"}}}}], "description": "L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#77-120) sends eth to arbitrary user\n\tDangerous calls:\n\t- (success) = deployer.call{value: address(this).balance}() (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#118)\n", "markdown": "[L1TokenBridgeRetryableSender._sendRetryableUsingEth(RetryableParams,L2TemplateAddresses,L1DeploymentAddresses,address,address,address,address)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120) sends eth to arbitrary user\n\tDangerous calls:\n\t- [(success) = deployer.call{value: address(this).balance}()](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L118)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L77-L120", "id": "ada2d1435f09d3b48a0786ea951cb74800a804b9f25e399cf86fef60054fd1cc", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}, {"type": "node", "name": "IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)", "source_mapping": {"start": 6332, "length": 356, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [164, 165, 166, 167, 168, 169, 170, 171, 172, 173], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}}}], "description": "L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#158-174) sends eth to arbitrary user\n\tDangerous calls:\n\t- IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#164-173)\n", "markdown": "[L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L164-L173)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174", "id": "4c4f70964e6cde91afbc799d6ab9b4dc837d537053b2cc98e9c92a36582269d8", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2941, "length": 245, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [88, 89, 90, 91, 92, 93, 94, 95], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1WethGateway", "source_mapping": {"start": 965, "length": 3233, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}, {"type": "node", "name": "IWETH9(_l1Token).deposit{value: _amount}()", "source_mapping": {"start": 3080, "length": 44, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [93], "starting_column": 9, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "inboundEscrowTransfer", "source_mapping": {"start": 2941, "length": 245, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [88, 89, 90, 91, 92, 93, 94, 95], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1WethGateway", "source_mapping": {"start": 965, "length": 3233, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol", "is_dependency": false, "lines": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130], "starting_column": 1, "ending_column": 2}}, "signature": "inboundEscrowTransfer(address,address,uint256)"}}}}], "description": "L1WethGateway.inboundEscrowTransfer(address,address,uint256) (contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#88-95) sends eth to arbitrary user\n\tDangerous calls:\n\t- IWETH9(_l1Token).deposit{value: _amount}() (contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#93)\n", "markdown": "[L1WethGateway.inboundEscrowTransfer(address,address,uint256)](contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#L88-L95) sends eth to arbitrary user\n\tDangerous calls:\n\t- [IWETH9(_l1Token).deposit{value: _amount}()](contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#L93)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1WethGateway.sol#L88-L95", "id": "aefde4912f3446b807349549a2c0405d67afd0d48c7f40e4f14c642fc6454318", "check": "arbitrary-send-eth", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "contract", "name": "IERC20Bridge", "source_mapping": {"start": 23832, "length": 86, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [574, 575, 576], "starting_column": 1, "ending_column": 2}}, {"type": "contract", "name": "IERC20Bridge", "source_mapping": {"start": 119, "length": 229, "filename_relative": "contracts/tokenbridge/libraries/IERC20Bridge.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/libraries/IERC20Bridge.sol", "filename_short": "contracts/tokenbridge/libraries/IERC20Bridge.sol", "is_dependency": false, "lines": [6, 7, 8, 9, 10, 11], "starting_column": 1, "ending_column": 2}}], "description": "IERC20Bridge is re-used:\n\t- IERC20Bridge (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#574-576)\n\t- IERC20Bridge (contracts/tokenbridge/libraries/IERC20Bridge.sol#6-11)\n", "markdown": "IERC20Bridge is re-used:\n\t- [IERC20Bridge](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L574-L576)\n\t- [IERC20Bridge](contracts/tokenbridge/libraries/IERC20Bridge.sol#L6-L11)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L574-L576", "id": "2ca35f4fbb313c6294b93a66b333ff2dc0f962a9c98de3f908d0dff6b4538f26", "check": "name-reused", "impact": "High", "confidence": "High"}, {"elements": [{"type": "contract", "name": "IERC20Inbox", "source_mapping": {"start": 6152, "length": 380, "filename_relative": "contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol", "filename_short": "contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol", "is_dependency": false, "lines": [192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205], "starting_column": 1, "ending_column": 0}}, {"type": "contract", "name": "IERC20Inbox", "source_mapping": {"start": 8253, "length": 380, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255], "starting_column": 1, "ending_column": 2}}], "description": "IERC20Inbox is re-used:\n\t- IERC20Inbox (contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol#192-205)\n\t- IERC20Inbox (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#243-255)\n", "markdown": "IERC20Inbox is re-used:\n\t- [IERC20Inbox](contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol#L192-L205)\n\t- [IERC20Inbox](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L243-L255)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1ArbitrumMessenger.sol#L192-L205", "id": "d9200075657b7d891f639f04329e159f258cf6e64fd3881860ed334af315532f", "check": "name-reused", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "redirectedExits", "source_mapping": {"start": 1128, "length": 51, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [42], "starting_column": 5, "ending_column": 56}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumExtendedGateway", "source_mapping": {"start": 927, "length": 4270, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140], "starting_column": 1, "ending_column": 2}}}}, {"type": "function", "name": "getExternalCall", "source_mapping": {"start": 3628, "length": 925, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1ArbitrumExtendedGateway", "source_mapping": {"start": 927, "length": 4270, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol", "is_dependency": false, "lines": [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140], "starting_column": 1, "ending_column": 2}}, "signature": "getExternalCall(uint256,address,bytes)"}}], "description": "L1ArbitrumExtendedGateway.redirectedExits (contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#42) is never initialized. It is used in:\n\t- L1ArbitrumExtendedGateway.getExternalCall(uint256,address,bytes) (contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#103-120)\n", "markdown": "[L1ArbitrumExtendedGateway.redirectedExits](contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#L42) is never initialized. It is used in:\n\t- [L1ArbitrumExtendedGateway.getExternalCall(uint256,address,bytes)](contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#L103-L120)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1ArbitrumExtendedGateway.sol#L42", "id": "e5aa1893c702d02a90473a1c603e113adcc2f5f0696cde71aac9ae09574067bf", "check": "uninitialized-state", "impact": "High", "confidence": "High"}, {"elements": [{"type": "variable", "name": "shouldWithdraw", "source_mapping": {"start": 9380, "length": 19, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "is_dependency": false, "lines": [263], "starting_column": 13, "ending_column": 32}, "type_specific_fields": {"parent": {"type": "function", "name": "finalizeInboundTransfer", "source_mapping": {"start": 8148, "length": 2321, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "is_dependency": false, "lines": [227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2ArbitrumGateway", "source_mapping": {"start": 1103, "length": 9658, "filename_relative": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "filename_short": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299], "starting_column": 1, "ending_column": 2}}, "signature": "finalizeInboundTransfer(address,address,address,uint256,bytes)"}}}}], "description": "L2ArbitrumGateway.finalizeInboundTransfer(address,address,address,uint256,bytes).shouldWithdraw (contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol#263) is a local variable never initialized\n", "markdown": "[L2ArbitrumGateway.finalizeInboundTransfer(address,address,address,uint256,bytes).shouldWithdraw](contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol#L263) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/gateway/L2ArbitrumGateway.sol#L263", "id": "99efcf80cf8863b2ea366b5c3a40419d4d30f7aa6912ddfcfc6869d533f387f9", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "l1Deployment", "source_mapping": {"start": 9536, "length": 41, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [222], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l1Deployment (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#222) is a local variable never initialized\n", "markdown": "[L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l1Deployment](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L222) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L222", "id": "83541fa7c678a7dc42b6a8c5709120d6d76a9a51c8ccf8c6cf6e984776341180", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "l2NewDefaultGateway", "source_mapping": {"start": 2756, "length": 27, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "is_dependency": false, "lines": [92], "starting_column": 9, "ending_column": 36}, "type_specific_fields": {"parent": {"type": "function", "name": "_setDefaultGateway", "source_mapping": {"start": 2425, "length": 1071, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "is_dependency": false, "lines": [81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1GatewayRouter", "source_mapping": {"start": 1254, "length": 11109, "filename_relative": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "filename_short": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354], "starting_column": 1, "ending_column": 2}}, "signature": "_setDefaultGateway(address,uint256,uint256,uint256,uint256)"}}}}], "description": "L1GatewayRouter._setDefaultGateway(address,uint256,uint256,uint256,uint256).l2NewDefaultGateway (contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol#92) is a local variable never initialized\n", "markdown": "[L1GatewayRouter._setDefaultGateway(address,uint256,uint256,uint256,uint256).l2NewDefaultGateway](contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol#L92) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/ethereum/gateway/L1GatewayRouter.sol#L92", "id": "8557712f770f31a8c2dbfa8451859919fe91c55860d5c13d31210fc167b6085e", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "l2Deployment", "source_mapping": {"start": 9587, "length": 41, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [223], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "createTokenBridge", "source_mapping": {"start": 8206, "length": 8378, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "createTokenBridge(address,address,uint256,uint256)"}}}}], "description": "L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l2Deployment (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#223) is a local variable never initialized\n", "markdown": "[L1AtomicTokenBridgeCreator.createTokenBridge(address,address,uint256,uint256).l2Deployment](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L223) is a local variable never initialized\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L223", "id": "9bfb8ca665ae98867b761c889e2c325d50e1cb30307188f74f012df830627e2b", "check": "uninitialized-local", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deployL2Contracts", "source_mapping": {"start": 1836, "length": 2106, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2AtomicTokenBridgeFactory", "source_mapping": {"start": 1325, "length": 10350, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address)"}}, {"type": "node", "name": "Create2.deploy(0,_getL2Salt(OrbitSalts.L2_MULTICALL),CreationCodeHelper.getCreationCodeFor(l2Code.multicall))", "source_mapping": {"start": 3658, "length": 157, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [78, 79, 80, 81, 82], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "deployL2Contracts", "source_mapping": {"start": 1836, "length": 2106, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L2AtomicTokenBridgeFactory", "source_mapping": {"start": 1325, "length": 10350, "filename_relative": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "filename_short": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol", "is_dependency": false, "lines": [26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284], "starting_column": 1, "ending_column": 2}}, "signature": "deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address)"}}}}], "description": "L2AtomicTokenBridgeFactory.deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address) (contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#35-86) ignores return value by Create2.deploy(0,_getL2Salt(OrbitSalts.L2_MULTICALL),CreationCodeHelper.getCreationCodeFor(l2Code.multicall)) (contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#78-82)\n", "markdown": "[L2AtomicTokenBridgeFactory.deployL2Contracts(L2RuntimeCode,address,address,address,address,address,address,address,address)](contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#L35-L86) ignores return value by [Create2.deploy(0,_getL2Salt(OrbitSalts.L2_MULTICALL),CreationCodeHelper.getCreationCodeFor(l2Code.multicall))](contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#L78-L82)\n", "first_markdown_element": "contracts/tokenbridge/arbitrum/L2AtomicTokenBridgeFactory.sol#L35-L86", "id": "2956ed76e7f9c4953ba1242f2735d68b34ea04746ec3353fe026ad5948aa4de9", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}, {"type": "node", "name": "IERC20Inbox(inbox).createRetryableTicket(address(0),0,0,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,retryableFee,deploymentData)", "source_mapping": {"start": 18088, "length": 315, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}}}], "description": "L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#419-457) ignores return value by IERC20Inbox(inbox).createRetryableTicket(address(0),0,0,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,retryableFee,deploymentData) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#430-440)\n", "markdown": "[L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457) ignores return value by [IERC20Inbox(inbox).createRetryableTicket(address(0),0,0,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,retryableFee,deploymentData)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L430-L440)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457", "id": "5b42d3da6788d2620013e282eb36392b896719376d0e6e696cdf0f834f4304e5", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}, {"type": "node", "name": "IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)", "source_mapping": {"start": 18665, "length": 317, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [446, 447, 448, 449, 450, 451, 452, 453, 454, 455], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "_deployL2Factory", "source_mapping": {"start": 17504, "length": 1495, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1AtomicTokenBridgeCreator", "source_mapping": {"start": 2103, "length": 21727, "filename_relative": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "filename_short": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol", "is_dependency": false, "lines": [51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572], "starting_column": 1, "ending_column": 2}}, "signature": "_deployL2Factory(address,uint256,bool)"}}}}], "description": "L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#419-457) ignores return value by IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData) (contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#446-455)\n", "markdown": "[L1AtomicTokenBridgeCreator._deployL2Factory(address,uint256,bool)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457) ignores return value by [IInbox(inbox).createRetryableTicket{value: retryableFee_scope_0}(address(0),0,maxSubmissionCost,msg.sender,msg.sender,gasLimitForL2FactoryDeployment,gasPriceBid,deploymentData)](contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L446-L455)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1AtomicTokenBridgeCreator.sol#L419-L457", "id": "aafe49a231e7d3b126341a33da7db43715357cb892fe24472837df4c5f33ec11", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}, {"type": "node", "name": "IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)", "source_mapping": {"start": 6332, "length": 356, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [164, 165, 166, 167, 168, 169, 170, 171, 172, 173], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "_createRetryableUsingEth", "source_mapping": {"start": 6138, "length": 557, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)"}}}}], "description": "L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#158-174) ignores return value by IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#164-173)\n", "markdown": "[L1TokenBridgeRetryableSender._createRetryableUsingEth(RetryableParams,uint256,uint256,bytes)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174) ignores return value by [IInbox(retryableParams.inbox).createRetryableTicket{value: value}(retryableParams.target,0,maxSubmissionCost,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L164-L173)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L158-L174", "id": "5f74ad6c8ee4fc18cbf8d669df2b679b3512ee14642ecb63b05bf84023e9a896", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_createRetryableUsingFeeToken", "source_mapping": {"start": 6701, "length": 535, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingFeeToken(RetryableParams,uint256,bytes)"}}, {"type": "node", "name": "IERC20Inbox(retryableParams.inbox).createRetryableTicket(retryableParams.target,0,0,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,retryableFee,data)", "source_mapping": {"start": 6872, "length": 357, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "_createRetryableUsingFeeToken", "source_mapping": {"start": 6701, "length": 535, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "L1TokenBridgeRetryableSender", "source_mapping": {"start": 1390, "length": 5848, "filename_relative": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_absolute": "/Users/goran/repos/offchain/token-bridge-contracts/contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "filename_short": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol", "is_dependency": false, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193], "starting_column": 1, "ending_column": 2}}, "signature": "_createRetryableUsingFeeToken(RetryableParams,uint256,bytes)"}}}}], "description": "L1TokenBridgeRetryableSender._createRetryableUsingFeeToken(RetryableParams,uint256,bytes) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#176-192) ignores return value by IERC20Inbox(retryableParams.inbox).createRetryableTicket(retryableParams.target,0,0,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,retryableFee,data) (contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#181-191)\n", "markdown": "[L1TokenBridgeRetryableSender._createRetryableUsingFeeToken(RetryableParams,uint256,bytes)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L176-L192) ignores return value by [IERC20Inbox(retryableParams.inbox).createRetryableTicket(retryableParams.target,0,0,retryableParams.excessFeeRefundAddress,retryableParams.callValueRefundAddress,retryableParams.maxGas,retryableParams.gasPriceBid,retryableFee,data)](contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L181-L191)\n", "first_markdown_element": "contracts/tokenbridge/ethereum/L1TokenBridgeRetryableSender.sol#L176-L192", "id": "7d88b6a8fd8fe6fea6815daf535353cce2e2f5054dbb4c9d49a56e61dcdcd6f0", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}] \ No newline at end of file