diff --git a/tools/slither/slither.db.json b/tools/slither/slither.db.json index 9ec73691..ea39c83b 100644 --- a/tools/slither/slither.db.json +++ b/tools/slither/slither.db.json @@ -1 +1 @@ -[{"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 13079, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [275], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#274-277):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#275)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#276)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L274-L277):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L275)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L276)\n", "id": "2972817205fa09132776a776771c75332d54703d65939778c214889eb9202d50", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 13079, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [275], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#274-277):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#275)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#276)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L274-L277):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L275)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L276)\n", "id": "2972817205fa09132776a776771c75332d54703d65939778c214889eb9202d50", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 34129, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}, {"type": "node", "name": "amountToSend = _amount.mul(rate).div(magnitude)", "source_mapping": {"start": 35020, "length": 47, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [760], "starting_column": 13, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 34129, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}, {"type": "node", "name": "amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)", "source_mapping": {"start": 35598, "length": 64, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [769], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 34129, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}], "description": "Wallet.convertToStablecoin(address,uint256) (../../contracts/wallet.sol#744-770) performs a multiplication on the result of a division:\n\t-amountToSend = _amount.mul(rate).div(magnitude) (../../contracts/wallet.sol#760)\n\t-amountToSend.mul(stablecoinMagnitude).div(stablecoinRate) (../../contracts/wallet.sol#769)\n", "markdown": "[Wallet.convertToStablecoin(address,uint256)](../../contracts/wallet.sol#L744-L770) performs a multiplication on the result of a division:\n\t-[amountToSend = _amount.mul(rate).div(magnitude)](../../contracts/wallet.sol#L760)\n\t-[amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)](../../contracts/wallet.sol#L769)\n", "id": "4b0e71551b32c84224e4a31db04d8fadb08ad76e73a3dbb0ca276d7835fb4b28", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 1111, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}, {"type": "node", "name": "(success,returndata) = address(this).call(_data)", "source_mapping": {"start": 27423, "length": 67, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [612], "starting_column": 9, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 1111, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeRelayedTransaction(uint256,bytes,bytes) (../../contracts/wallet.sol#597-616):\n\tExternal calls:\n\t- (success,returndata) = address(this).call(_data) (../../contracts/wallet.sol#612)\n\tEvent emitted after the call(s):\n\t- ExecutedRelayedTransaction(_data,returndata) (../../contracts/wallet.sol#615)\n", "markdown": "Reentrancy in [Wallet.executeRelayedTransaction(uint256,bytes,bytes)](../../contracts/wallet.sol#L597-L616):\n\tExternal calls:\n\t- [(success,returndata) = address(this).call(_data)](../../contracts/wallet.sol#L612)\n\tEvent emitted after the call(s):\n\t- [ExecutedRelayedTransaction(_data,returndata)](../../contracts/wallet.sol#L615)\n", "id": "1cb890c1c96ec65cdac8be7e856a111fbf1ce58f2ac6c1181477b7d3256bf319", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "ERC20(_destination).callOptionalReturn(_data)", "source_mapping": {"start": 37238, "length": 45, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [796], "starting_column": 13, "ending_column": 58}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#776-812):\n\tExternal calls:\n\t- ERC20(_destination).callOptionalReturn(_data) (../../contracts/wallet.sol#796)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,b) (../../contracts/wallet.sol#802)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L776-L812):\n\tExternal calls:\n\t- [ERC20(_destination).callOptionalReturn(_data)](../../contracts/wallet.sol#L796)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,b)](../../contracts/wallet.sol#L802)\n", "id": "a521190cdea15435dd406278a3113b60b1ca0419122518d83d48c0c066d0d824", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "(success,returndata) = _destination.call.value(_value)(_data)", "source_mapping": {"start": 37557, "length": 80, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [806], "starting_column": 9, "ending_column": 89}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#776-812):\n\tExternal calls:\n\t- (success,returndata) = _destination.call.value(_value)(_data) (../../contracts/wallet.sol#806)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,returndata) (../../contracts/wallet.sol#809)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L776-L812):\n\tExternal calls:\n\t- [(success,returndata) = _destination.call.value(_value)(_data)](../../contracts/wallet.sol#L806)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,returndata)](../../contracts/wallet.sol#L809)\n", "id": "f38d60906d621f94935a94a8bf54194809cd6e1303bc78b6d078b03864af8d5b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeApprove(licenceAddress,_amount)", "source_mapping": {"start": 29769, "length": 50, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [660], "starting_column": 13, "ending_column": 63}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load(_asset,_amount)", "source_mapping": {"start": 29833, "length": 46, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [661], "starting_column": 13, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29910, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [663], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29910, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [663], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Wallet.loadTokenCard(address,uint256) (../../contracts/wallet.sol#650-667):\n\tExternal calls:\n\t- ERC20(_asset).safeApprove(licenceAddress,_amount) (../../contracts/wallet.sol#660)\n\t- ILicence(licenceAddress).load(_asset,_amount) (../../contracts/wallet.sol#661)\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#663)\n\tExternal calls sending eth:\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#663)\n\tEvent emitted after the call(s):\n\t- LoadedTokenCard(_asset,_amount) (../../contracts/wallet.sol#666)\n", "markdown": "Reentrancy in [Wallet.loadTokenCard(address,uint256)](../../contracts/wallet.sol#L650-L667):\n\tExternal calls:\n\t- [ERC20(_asset).safeApprove(licenceAddress,_amount)](../../contracts/wallet.sol#L660)\n\t- [ILicence(licenceAddress).load(_asset,_amount)](../../contracts/wallet.sol#L661)\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L663)\n\tExternal calls sending eth:\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L663)\n\tEvent emitted after the call(s):\n\t- [LoadedTokenCard(_asset,_amount)](../../contracts/wallet.sol#L666)\n", "id": "b2bc1ee4c2b6b9e996f6297ab095a68e7ee110cea29b2f714bbbbf51827aa313", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39638, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [845], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#828-848):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#845)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#847)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L828-L848):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L845)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L847)\n", "id": "0a03d32dd410fe941c02ed32c1418b1ef361ba946da9bd7f73f8af466a72e5a4", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "topUpGas", "source_mapping": {"start": 30418, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [676, 677, 678, 679, 680, 681, 682, 683], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}, {"type": "node", "name": "owner().transfer(_amount)", "source_mapping": {"start": 30717, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [680], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "topUpGas", "source_mapping": {"start": 30418, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [676, 677, 678, 679, 680, 681, 682, 683], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.topUpGas(uint256) (../../contracts/wallet.sol#676-683):\n\tExternal calls:\n\t- owner().transfer(_amount) (../../contracts/wallet.sol#680)\n\tEvent emitted after the call(s):\n\t- ToppedUpGas(msg.sender,owner(),_amount) (../../contracts/wallet.sol#682)\n", "markdown": "Reentrancy in [Wallet.topUpGas(uint256)](../../contracts/wallet.sol#L676-L683):\n\tExternal calls:\n\t- [owner().transfer(_amount)](../../contracts/wallet.sol#L680)\n\tEvent emitted after the call(s):\n\t- [ToppedUpGas(msg.sender,owner(),_amount)](../../contracts/wallet.sol#L682)\n", "id": "e6649e217a3dc747bf9293377b87e22ca6c1fa46c3819acc8e6b233d9f3ad2c3", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39638, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [845], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#828-848):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#845)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#847)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L828-L848):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L845)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L847)\n", "id": "0a03d32dd410fe941c02ed32c1418b1ef361ba946da9bd7f73f8af466a72e5a4", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)", "source_mapping": {"start": 3510, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [81], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.burn(address,uint256) (../../contracts/holder.sol#70-87):\n\tExternal calls:\n\t- _safeTransfer(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#81)\n\tEvent emitted after the call(s):\n\t- CashAndBurned(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#82)\n", "markdown": "Reentrancy in [Holder.burn(address,uint256)](../../contracts/holder.sol#L70-L87):\n\tExternal calls:\n\t- [_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L81)\n\tEvent emitted after the call(s):\n\t- [CashAndBurned(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L82)\n", "id": "ada49538df8b91af85bc7b17e3e69344542d64d979dc332e09a0d1cacd0f5472", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}, {"type": "node", "name": "_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)", "source_mapping": {"start": 4448, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [98], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.nonRedeemableTokenClaim(address,address[]) (../../contracts/holder.sol#92-104):\n\tExternal calls:\n\t- _safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#98)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#99)\n", "markdown": "Reentrancy in [Holder.nonRedeemableTokenClaim(address,address[])](../../contracts/holder.sol#L92-L104):\n\tExternal calls:\n\t- [_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L98)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L99)\n", "id": "c01c2890786e16cf021933229bf22cd869c10bd132d254ab36635b2d4a220e94", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)", "source_mapping": {"start": 3510, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [81], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.burn(address,uint256) (../../contracts/holder.sol#70-87):\n\tExternal calls:\n\t- _safeTransfer(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#81)\n\tEvent emitted after the call(s):\n\t- CashAndBurned(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#82)\n", "markdown": "Reentrancy in [Holder.burn(address,uint256)](../../contracts/holder.sol#L70-L87):\n\tExternal calls:\n\t- [_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L81)\n\tEvent emitted after the call(s):\n\t- [CashAndBurned(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L82)\n", "id": "ada49538df8b91af85bc7b17e3e69344542d64d979dc332e09a0d1cacd0f5472", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}, {"type": "node", "name": "_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)", "source_mapping": {"start": 4448, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [98], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.nonRedeemableTokenClaim(address,address[]) (../../contracts/holder.sol#92-104):\n\tExternal calls:\n\t- _safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#98)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#99)\n", "markdown": "Reentrancy in [Holder.nonRedeemableTokenClaim(address,address[])](../../contracts/holder.sol#L92-L104):\n\tExternal calls:\n\t- [_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L98)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L99)\n", "id": "c01c2890786e16cf021933229bf22cd869c10bd132d254ab36635b2d4a220e94", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10 ** (decMinted))", "source_mapping": {"start": 7623, "length": 32, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [146], "starting_column": 13, "ending_column": 45}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10 ** (decMinted)) (../../contracts/internals/parseIntScientific.sol#146)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10 ** (decMinted))](../../contracts/internals/parseIntScientific.sol#L146)\n", "id": "7f2a8a8833de43e4bde53359583557ee2e1dd2c6c047aa209df3b9574e4a0801", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10 ** (_magnitudeMult - decMinted))", "source_mapping": {"start": 7867, "length": 49, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [150], "starting_column": 13, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10 ** (_magnitudeMult - decMinted)) (../../contracts/internals/parseIntScientific.sol#150)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10 ** (_magnitudeMult - decMinted))](../../contracts/internals/parseIntScientific.sol#L150)\n", "id": "a82b7c9693de1c9605223cd9c9b544a7e3cafa00cc860a652f4702656c06516e", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10 ** (_magnitudeMult))", "source_mapping": {"start": 8376, "length": 37, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [159], "starting_column": 13, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10 ** (_magnitudeMult)) (../../contracts/internals/parseIntScientific.sol#159)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10 ** (_magnitudeMult))](../../contracts/internals/parseIntScientific.sol#L159)\n", "id": "298bd6ddafc691cf4f164caea46b84f7d806fa4aa46de23a15f20ba149f569d4", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mintDec /= 10 ** (decMinted)", "source_mapping": {"start": 8193, "length": 26, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [156], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mintDec = mintDec.mul(10)", "source_mapping": {"start": 3690, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [68], "starting_column": 21, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mintDec /= 10 ** (decMinted) (../../contracts/internals/parseIntScientific.sol#156)\n\t-mintDec = mintDec.mul(10) (../../contracts/internals/parseIntScientific.sol#68)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mintDec /= 10 ** (decMinted)](../../contracts/internals/parseIntScientific.sol#L156)\n\t-[mintDec = mintDec.mul(10)](../../contracts/internals/parseIntScientific.sol#L68)\n", "id": "470f40a7333d285b7694adabe7173b9c0362522e9144fa61ef4a6eaa2daf9e01", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10)", "source_mapping": {"start": 4060, "length": 19, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [75], "starting_column": 21, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10) (../../contracts/internals/parseIntScientific.sol#75)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10)](../../contracts/internals/parseIntScientific.sol#L75)\n", "id": "f8b2ecf16caf3e893d94cb419fc0ab2f8ea68dd9192e609cb5a3db13bc7a8e17", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(10000000000)", "source_mapping": {"start": 3680, "length": 39, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [84], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "oraclize"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "OAR"}}], "description": "Reentrancy in Oracle.constructor(address,address,bytes32,bytes32) (../../contracts/oracle.sol#76-86):\n\tExternal calls:\n\t- oraclize_setCustomGasPrice(10000000000) (../../contracts/oracle.sol#84)\n\t- oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n\tState variables written after the call(s):\n\t- usingOraclize.OAR (../../contracts/externals/oraclizeAPI_0.5.sol#277) in oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n\t- usingOraclize.oraclize (../../contracts/externals/oraclizeAPI_0.5.sol#276) in oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n", "markdown": "Reentrancy in [Oracle.constructor(address,address,bytes32,bytes32)](../../contracts/oracle.sol#L76-L86):\n\tExternal calls:\n\t- [oraclize_setCustomGasPrice(10000000000)](../../contracts/oracle.sol#L84)\n\t- [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n\tState variables written after the call(s):\n\t- [usingOraclize.OAR](../../contracts/externals/oraclizeAPI_0.5.sol#L277) in [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n\t- [usingOraclize.oraclize](../../contracts/externals/oraclizeAPI_0.5.sol#L276) in [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n", "id": "9b7e0458df6a12ccc25ca885c1158caac10cabbd5102f026e8d09d61744c3bdc", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}, {"type": "node", "name": "body.split(:.toSlice())", "source_mapping": {"start": 7485, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [164], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}}}], "description": "Oracle.parseRate(string) (../../contracts/oracle.sol#154-171) ignores return value by body.split(:.toSlice()) (../../contracts/oracle.sol#164)\n", "markdown": "[Oracle.parseRate(string)](../../contracts/oracle.sol#L154-L171) ignores return value by [body.split(:.toSlice())](../../contracts/oracle.sol#L164)\n", "id": "57e01c5a18e167847c5f051264b26625750a50707c631291a707dc983e9f897a", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}, {"type": "node", "name": "body.until(}.toSlice())", "source_mapping": {"start": 7638, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [167], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}}}], "description": "Oracle.parseRate(string) (../../contracts/oracle.sol#154-171) ignores return value by body.until(}.toSlice()) (../../contracts/oracle.sol#167)\n", "markdown": "[Oracle.parseRate(string)](../../contracts/oracle.sol#L154-L171) ignores return value by [body.until(}.toSlice())](../../contracts/oracle.sol#L167)\n", "id": "616e085a90cc424dbae3174c4fd9b1d1f5183a86c86ce007f8695a946e877534", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "__callback", "source_mapping": {"start": 5655, "length": 1150, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "__callback(bytes32,string,bytes)"}}, {"type": "node", "name": "require(bool,string)(msg.sender == oraclize_cbAddress(),sender is not oraclize)", "source_mapping": {"start": 5815, "length": 69, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [128], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "__callback", "source_mapping": {"start": 5655, "length": 1150, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "__callback(bytes32,string,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "delete _queryToToken[_queryID]", "source_mapping": {"start": 6690, "length": 30, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [146], "starting_column": 13, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "__callback", "source_mapping": {"start": 5655, "length": 1150, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "__callback(bytes32,string,bytes)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_queryToToken"}}], "description": "Reentrancy in Oracle.__callback(bytes32,string,bytes) (../../contracts/oracle.sol#126-150):\n\tExternal calls:\n\t- require(bool,string)(msg.sender == oraclize_cbAddress(),sender is not oraclize) (../../contracts/oracle.sol#128)\n\tState variables written after the call(s):\n\t- Oracle._queryToToken (../../contracts/oracle.sol#69) in delete _queryToToken[_queryID] (../../contracts/oracle.sol#146)\n", "markdown": "Reentrancy in [Oracle.__callback(bytes32,string,bytes)](../../contracts/oracle.sol#L126-L150):\n\tExternal calls:\n\t- [require(bool,string)(msg.sender == oraclize_cbAddress(),sender is not oraclize)](../../contracts/oracle.sol#L128)\n\tState variables written after the call(s):\n\t- [Oracle._queryToToken](../../contracts/oracle.sol#L69) in [delete _queryToToken[_queryID]](../../contracts/oracle.sol#L146)\n", "id": "96f52b522121a67e0809b83b7c0c23acacec140804d52333c8f74ba8792ebf60", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 9284, "length": 101, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [197], "starting_column": 17, "ending_column": 118}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_queryToToken[queryID] = tokenAddresses[i]", "source_mapping": {"start": 9485, "length": 42, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [199], "starting_column": 17, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_queryToToken"}}], "description": "Reentrancy in Oracle._updateTokenRates(uint256) (../../contracts/oracle.sol#175-204):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#197)\n\tState variables written after the call(s):\n\t- Oracle._queryToToken (../../contracts/oracle.sol#69) in _queryToToken[queryID] = tokenAddresses[i] (../../contracts/oracle.sol#199)\n", "markdown": "Reentrancy in [Oracle._updateTokenRates(uint256)](../../contracts/oracle.sol#L175-L204):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L197)\n\tState variables written after the call(s):\n\t- [Oracle._queryToToken](../../contracts/oracle.sol#L69) in [_queryToToken[queryID] = tokenAddresses[i]](../../contracts/oracle.sol#L199)\n", "id": "16b3faa45646ffaa585e8b26e48f95a6e9925a319fda401faa86fa7297616386", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 11332, "length": 104, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [231], "starting_column": 17, "ending_column": 121}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_queryToToken[queryID] = _tokenList[i]", "source_mapping": {"start": 11536, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [233], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_queryToToken"}}], "description": "Reentrancy in Oracle._updateTokenRatesList(uint256,address[]) (../../contracts/oracle.sol#209-238):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#231)\n\tState variables written after the call(s):\n\t- Oracle._queryToToken (../../contracts/oracle.sol#69) in _queryToToken[queryID] = _tokenList[i] (../../contracts/oracle.sol#233)\n", "markdown": "Reentrancy in [Oracle._updateTokenRatesList(uint256,address[])](../../contracts/oracle.sol#L209-L238):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L231)\n\tState variables written after the call(s):\n\t- [Oracle._queryToToken](../../contracts/oracle.sol#L69) in [_queryToToken[queryID] = _tokenList[i]](../../contracts/oracle.sol#L233)\n", "id": "83738ff45e3ef3c1e6f15d976fd83893e3f2a03389e0a95ca82093faa2d6a43b", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(10000000000)", "source_mapping": {"start": 3680, "length": 39, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [84], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "oraclize_network_name"}}], "description": "Reentrancy in Oracle.constructor(address,address,bytes32,bytes32) (../../contracts/oracle.sol#76-86):\n\tExternal calls:\n\t- oraclize_setCustomGasPrice(10000000000) (../../contracts/oracle.sol#84)\n\t- oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n\tState variables written after the call(s):\n\t- usingOraclize.oraclize_network_name (../../contracts/externals/oraclizeAPI_0.5.sol#290) in oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n", "markdown": "Reentrancy in [Oracle.constructor(address,address,bytes32,bytes32)](../../contracts/oracle.sol#L76-L86):\n\tExternal calls:\n\t- [oraclize_setCustomGasPrice(10000000000)](../../contracts/oracle.sol#L84)\n\t- [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n\tState variables written after the call(s):\n\t- [usingOraclize.oraclize_network_name](../../contracts/externals/oraclizeAPI_0.5.sol#L290) in [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n", "id": "e098718d09215ba2db2ded1adb0dd896e18d18a0e8655793f6428c160d896c23", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}, {"type": "node", "name": "oraclize_getPrice(URL) * tokenAddresses.length > address(this).balance", "source_mapping": {"start": 8402, "length": 72, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [182], "starting_column": 20, "ending_column": 92}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRates(uint256) (../../contracts/oracle.sol#175-204):\n\tExternal calls:\n\t- oraclize_getPrice(URL) * tokenAddresses.length > address(this).balance (../../contracts/oracle.sol#182)\n\tEvent emitted after the call(s):\n\t- FailedUpdateRequest(insufficient balance) (../../contracts/oracle.sol#184)\n", "markdown": "Reentrancy in [Oracle._updateTokenRates(uint256)](../../contracts/oracle.sol#L175-L204):\n\tExternal calls:\n\t- [oraclize_getPrice(URL) * tokenAddresses.length > address(this).balance](../../contracts/oracle.sol#L182)\n\tEvent emitted after the call(s):\n\t- [FailedUpdateRequest(insufficient balance)](../../contracts/oracle.sol#L184)\n", "id": "d6eccca5bf4804a1c0291b279cf3357c4e86afac91c79486ef0a6eeb2d7817e2", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 9284, "length": 101, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [197], "starting_column": 17, "ending_column": 118}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRates(uint256) (../../contracts/oracle.sol#175-204):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#197)\n\tEvent emitted after the call(s):\n\t- RequestedUpdate(sym.toString(),queryID) (../../contracts/oracle.sol#201)\n", "markdown": "Reentrancy in [Oracle._updateTokenRates(uint256)](../../contracts/oracle.sol#L175-L204):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L197)\n\tEvent emitted after the call(s):\n\t- [RequestedUpdate(sym.toString(),queryID)](../../contracts/oracle.sol#L201)\n", "id": "67e816edc4c01f223b1b491b28fa18e18e9d0bf94df8b573b4ca749c137c8f2b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}, {"type": "node", "name": "oraclize_getPrice(URL) * _tokenList.length > address(this).balance", "source_mapping": {"start": 10316, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [215], "starting_column": 20, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRatesList(uint256,address[]) (../../contracts/oracle.sol#209-238):\n\tExternal calls:\n\t- oraclize_getPrice(URL) * _tokenList.length > address(this).balance (../../contracts/oracle.sol#215)\n\tEvent emitted after the call(s):\n\t- FailedUpdateRequest(insufficient balance) (../../contracts/oracle.sol#217)\n", "markdown": "Reentrancy in [Oracle._updateTokenRatesList(uint256,address[])](../../contracts/oracle.sol#L209-L238):\n\tExternal calls:\n\t- [oraclize_getPrice(URL) * _tokenList.length > address(this).balance](../../contracts/oracle.sol#L215)\n\tEvent emitted after the call(s):\n\t- [FailedUpdateRequest(insufficient balance)](../../contracts/oracle.sol#L217)\n", "id": "3bc620013729beee01c7257dcd5dcd9060cbbd06dd8074c67a1196cf3472c9e0", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 11332, "length": 104, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [231], "starting_column": 17, "ending_column": 121}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRatesList(uint256,address[]) (../../contracts/oracle.sol#209-238):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#231)\n\tEvent emitted after the call(s):\n\t- RequestedUpdate(symbol.toString(),queryID) (../../contracts/oracle.sol#235)\n", "markdown": "Reentrancy in [Oracle._updateTokenRatesList(uint256,address[])](../../contracts/oracle.sol#L209-L238):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L231)\n\tEvent emitted after the call(s):\n\t- [RequestedUpdate(symbol.toString(),queryID)](../../contracts/oracle.sol#L235)\n", "id": "9013fb9a0619ea53422592b79906b387224b37255fa39732b204c2023b0730e9", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 5284, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [117], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle.claim(address,address,uint256) (../../contracts/oracle.sol#116-119):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/oracle.sol#117)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/oracle.sol#118)\n", "markdown": "Reentrancy in [Oracle.claim(address,address,uint256)](../../contracts/oracle.sol#L116-L119):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/oracle.sol#L117)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/oracle.sol#L118)\n", "id": "3114aa97e4690b19c139ae5191ce3250a974721acffb05fc28e68d7d4e696262", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "setCustomGasPrice", "source_mapping": {"start": 4212, "length": 173, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "setCustomGasPrice(uint256)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(_gasPrice)", "source_mapping": {"start": 4292, "length": 37, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [98], "starting_column": 9, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "function", "name": "setCustomGasPrice", "source_mapping": {"start": 4212, "length": 173, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "setCustomGasPrice(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle.setCustomGasPrice(uint256) (../../contracts/oracle.sol#97-100):\n\tExternal calls:\n\t- oraclize_setCustomGasPrice(_gasPrice) (../../contracts/oracle.sol#98)\n\tEvent emitted after the call(s):\n\t- SetGasPrice(msg.sender,_gasPrice) (../../contracts/oracle.sol#99)\n", "markdown": "Reentrancy in [Oracle.setCustomGasPrice(uint256)](../../contracts/oracle.sol#L97-L100):\n\tExternal calls:\n\t- [oraclize_setCustomGasPrice(_gasPrice)](../../contracts/oracle.sol#L98)\n\tEvent emitted after the call(s):\n\t- [SetGasPrice(msg.sender,_gasPrice)](../../contracts/oracle.sol#L99)\n", "id": "39ed098b5f36b84612653d7ab8c9d466bd9a7e0106d086f0b5787daf51d4afad", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 5284, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [117], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle.claim(address,address,uint256) (../../contracts/oracle.sol#116-119):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/oracle.sol#117)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/oracle.sol#118)\n", "markdown": "Reentrancy in [Oracle.claim(address,address,uint256)](../../contracts/oracle.sol#L116-L119):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/oracle.sol#L117)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/oracle.sol#L118)\n", "id": "3114aa97e4690b19c139ae5191ce3250a974721acffb05fc28e68d7d4e696262", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(10000000000)", "source_mapping": {"start": 3680, "length": 39, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [84], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}}], "description": "Oracle.constructor(address,address,bytes32,bytes32) (../../contracts/oracle.sol#76-86) uses literals with too many digits:\n\t- oraclize_setCustomGasPrice(10000000000) (../../contracts/oracle.sol#84)\n", "markdown": "[Oracle.constructor(address,address,bytes32,bytes32)](../../contracts/oracle.sol#L76-L86) uses literals with too many digits:\n\t- [oraclize_setCustomGasPrice(10000000000)](../../contracts/oracle.sol#L84)\n", "id": "42c28e01a625ad23a0f9609278a92d25b44d2b7c00a9de61f230623adfe8d099", "check": "too-many-digits", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "controllerNode", "source_mapping": {"start": 2169, "length": 95, "filename_used": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_relative": "../../contracts/internals/controllable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_short": "../../contracts/internals/controllable.sol", "is_dependency": false, "lines": [57, 58, 59], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controllable", "source_mapping": {"start": 955, "length": 1749, "filename_used": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_relative": "../../contracts/internals/controllable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_short": "../../contracts/internals/controllable.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], "starting_column": 1, "ending_column": 2}}, "signature": "controllerNode()"}}], "description": "controllerNode() should be declared external:\n\t- Controllable.controllerNode() (../../contracts/internals/controllable.sol#57-59)\n", "markdown": "controllerNode() should be declared external:\n\t- [Controllable.controllerNode()](../../contracts/internals/controllable.sol#L57-L59)\n", "id": "d13a5d67fbaa6821edc17da5f446b38ce126b2b8abcbc3c21b79428186db1d29", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "owner", "source_mapping": {"start": 3932, "length": 85, "filename_used": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_relative": "../../contracts/internals/ownable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_short": "../../contracts/internals/ownable.sol", "is_dependency": false, "lines": [90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Ownable", "source_mapping": {"start": 1149, "length": 3083, "filename_used": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_relative": "../../contracts/internals/ownable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_short": "../../contracts/internals/ownable.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], "starting_column": 1, "ending_column": 2}}, "signature": "owner()"}}], "description": "owner() should be declared external:\n\t- Ownable.owner() (../../contracts/internals/ownable.sol#90-92)\n", "markdown": "owner() should be declared external:\n\t- [Ownable.owner()](../../contracts/internals/ownable.sol#L90-L92)\n", "id": "698811821ed34357d834c197b976565a1354eaff150bcbc8a352f2d8c7df57f3", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}}], "description": "Licence.load(address,uint256) (../../contracts/licence.sol#203-225) sends eth to arbitrary user\n\tDangerous calls:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n", "markdown": "[Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225) sends eth to arbitrary user\n\tDangerous calls:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n", "id": "83160c7dc873f30ad73fff30071a3e5f97ce66637b4add1555f4eb937231d937", "check": "arbitrary-send", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 33974, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}, {"type": "node", "name": "amountToSend = _amount.mul(rate).div(magnitude)", "source_mapping": {"start": 34865, "length": 47, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [756], "starting_column": 13, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 33974, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}, {"type": "node", "name": "amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)", "source_mapping": {"start": 35443, "length": 64, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [765], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 33974, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}], "description": "Wallet.convertToStablecoin(address,uint256) (../../contracts/wallet.sol#740-766) performs a multiplication on the result of a division:\n\t-amountToSend = _amount.mul(rate).div(magnitude) (../../contracts/wallet.sol#756)\n\t-amountToSend.mul(stablecoinMagnitude).div(stablecoinRate) (../../contracts/wallet.sol#765)\n", "markdown": "[Wallet.convertToStablecoin(address,uint256)](../../contracts/wallet.sol#L740-L766) performs a multiplication on the result of a division:\n\t-[amountToSend = _amount.mul(rate).div(magnitude)](../../contracts/wallet.sol#L756)\n\t-[amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)](../../contracts/wallet.sol#L765)\n", "id": "f90b4b9d2d1e6f9e4e2bf2311f622b9d445791754d7213af3961a5b12d671973", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 3437, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [80], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "deployedWallets[_owner] = address(wallet)", "source_mapping": {"start": 3591, "length": 41, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [83], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "deployedWallets"}}], "description": "Reentrancy in WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[]) (../../contracts/walletDeployer.sol#65-104):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#80)\n\tState variables written after the call(s):\n\t- WalletDeployer.deployedWallets (../../contracts/walletDeployer.sol#37) in deployedWallets[_owner] = address(wallet) (../../contracts/walletDeployer.sol#83)\n", "markdown": "Reentrancy in [WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])](../../contracts/walletDeployer.sol#L65-L104):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L80)\n\tState variables written after the call(s):\n\t- [WalletDeployer.deployedWallets](../../contracts/walletDeployer.sol#L37) in [deployedWallets[_owner] = address(wallet)](../../contracts/walletDeployer.sol#L83)\n", "id": "6a3cf866f4b842653e71e5ad276b7296053b7e7cf7960f962fbf41d3f76f9a02", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 2132, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [51], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "deployedWallets[_owner] = address(wallet)", "source_mapping": {"start": 2263, "length": 41, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [54], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "deployedWallets"}}], "description": "Reentrancy in WalletDeployer.deployWallet(address) (../../contracts/walletDeployer.sol#50-58):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#51)\n\tState variables written after the call(s):\n\t- WalletDeployer.deployedWallets (../../contracts/walletDeployer.sol#37) in deployedWallets[_owner] = address(wallet) (../../contracts/walletDeployer.sol#54)\n", "markdown": "Reentrancy in [WalletDeployer.deployWallet(address)](../../contracts/walletDeployer.sol#L50-L58):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L51)\n\tState variables written after the call(s):\n\t- [WalletDeployer.deployedWallets](../../contracts/walletDeployer.sol#L37) in [deployedWallets[_owner] = address(wallet)](../../contracts/walletDeployer.sol#L54)\n", "id": "5dd6055bd01a0fb619cd464b024bbb108c56d1839c3a66c176eca65548024888", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 7120, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [185], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Controller.claim(address,address,uint256) (../../contracts/controller.sol#184-187):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/controller.sol#185)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/controller.sol#186)\n", "markdown": "Reentrancy in [Controller.claim(address,address,uint256)](../../contracts/controller.sol#L184-L187):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/controller.sol#L185)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/controller.sol#L186)\n", "id": "f3b1bb804b6e0637c9d0f95872ea5b209bf89f91ca774177d35ad56ba1dde407", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 9546, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [229], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Licence.claim(address,address,uint256) (../../contracts/licence.sol#228-231):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/licence.sol#229)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/licence.sol#230)\n", "markdown": "Reentrancy in [Licence.claim(address,address,uint256)](../../contracts/licence.sol#L228-L231):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/licence.sol#L229)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/licence.sol#L230)\n", "id": "5acfa120418c5a829b0b4f674255577d660452e82249a1eb2cdd74411915b9cf", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 12676, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [269], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#268-271):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#269)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#270)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L268-L271):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L269)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L270)\n", "id": "fb00aec0dfb5bdcba13a23a4427225ceef48db29f0d9006ddeb01c9ed84f0105", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 2132, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [51], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in WalletDeployer.deployWallet(address) (../../contracts/walletDeployer.sol#50-58):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#51)\n\tEvent emitted after the call(s):\n\t- DeployedWallet(wallet,_owner) (../../contracts/walletDeployer.sol#52)\n", "markdown": "Reentrancy in [WalletDeployer.deployWallet(address)](../../contracts/walletDeployer.sol#L50-L58):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L51)\n\tEvent emitted after the call(s):\n\t- [DeployedWallet(wallet,_owner)](../../contracts/walletDeployer.sol#L52)\n", "id": "13215e2a7cdd7b7b01fee013b0174829e1df1bde1d64129132117eb421e03ab1", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 954, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}, {"type": "node", "name": "(success,returndata) = address(this).call(_data)", "source_mapping": {"start": 27266, "length": 67, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [608], "starting_column": 9, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 954, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeRelayedTransaction(uint256,bytes,bytes) (../../contracts/wallet.sol#597-612):\n\tExternal calls:\n\t- (success,returndata) = address(this).call(_data) (../../contracts/wallet.sol#608)\n\tEvent emitted after the call(s):\n\t- ExecutedRelayedTransaction(_data,returndata) (../../contracts/wallet.sol#611)\n", "markdown": "Reentrancy in [Wallet.executeRelayedTransaction(uint256,bytes,bytes)](../../contracts/wallet.sol#L597-L612):\n\tExternal calls:\n\t- [(success,returndata) = address(this).call(_data)](../../contracts/wallet.sol#L608)\n\tEvent emitted after the call(s):\n\t- [ExecutedRelayedTransaction(_data,returndata)](../../contracts/wallet.sol#L611)\n", "id": "eab9e0722a360f01189b0880090ccb910dce9a87700a8b2785b493c075f33efa", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "ERC20(_destination).callOptionalReturn(_data)", "source_mapping": {"start": 37083, "length": 45, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [792], "starting_column": 13, "ending_column": 58}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#772-808):\n\tExternal calls:\n\t- ERC20(_destination).callOptionalReturn(_data) (../../contracts/wallet.sol#792)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,b) (../../contracts/wallet.sol#798)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L772-L808):\n\tExternal calls:\n\t- [ERC20(_destination).callOptionalReturn(_data)](../../contracts/wallet.sol#L792)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,b)](../../contracts/wallet.sol#L798)\n", "id": "df815fd0cc323d5a806cb963c1939e1c7b9eb8e51c6853d9134f823ca6999f52", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "(success,returndata) = _destination.call.value(_value)(_data)", "source_mapping": {"start": 37402, "length": 80, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [802], "starting_column": 9, "ending_column": 89}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#772-808):\n\tExternal calls:\n\t- (success,returndata) = _destination.call.value(_value)(_data) (../../contracts/wallet.sol#802)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,returndata) (../../contracts/wallet.sol#805)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L772-L808):\n\tExternal calls:\n\t- [(success,returndata) = _destination.call.value(_value)(_data)](../../contracts/wallet.sol#L802)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,returndata)](../../contracts/wallet.sol#L805)\n", "id": "b8eb04191b1a00faadd7cbc4828efadac50f610f8f6797089af3baa205906fd3", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)", "source_mapping": {"start": 8784, "length": 71, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [213], "starting_column": 17, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)", "source_mapping": {"start": 8873, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [214], "starting_column": 17, "ending_column": 85}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Licence.load(address,uint256) (../../contracts/licence.sol#203-225):\n\tExternal calls:\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount) (../../contracts/licence.sol#213)\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount) (../../contracts/licence.sol#214)\n\tExternal calls sending eth:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n\tEvent emitted after the call(s):\n\t- TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount) (../../contracts/licence.sol#221)\n", "markdown": "Reentrancy in [Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225):\n\tExternal calls:\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)](../../contracts/licence.sol#L213)\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)](../../contracts/licence.sol#L214)\n\tExternal calls sending eth:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n\tEvent emitted after the call(s):\n\t- [TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount)](../../contracts/licence.sol#L221)\n", "id": "c4548603fecb173fc668ed0fd68e075876c605435a7128c855aa20fa7e21b018", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)", "source_mapping": {"start": 8478, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [207], "starting_column": 13, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)", "source_mapping": {"start": 8784, "length": 71, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [213], "starting_column": 17, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)", "source_mapping": {"start": 8873, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [214], "starting_column": 17, "ending_column": 85}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Licence.load(address,uint256) (../../contracts/licence.sol#203-225):\n\tExternal calls:\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount) (../../contracts/licence.sol#207)\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount) (../../contracts/licence.sol#213)\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount) (../../contracts/licence.sol#214)\n\tExternal calls sending eth:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n\tEvent emitted after the call(s):\n\t- TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount) (../../contracts/licence.sol#224)\n", "markdown": "Reentrancy in [Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225):\n\tExternal calls:\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)](../../contracts/licence.sol#L207)\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)](../../contracts/licence.sol#L213)\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)](../../contracts/licence.sol#L214)\n\tExternal calls sending eth:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n\tEvent emitted after the call(s):\n\t- [TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount)](../../contracts/licence.sol#L224)\n", "id": "81030ab99342faad35bf6caa22de7e049dd26b36d139bbb04cca307bed35661d", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeApprove(licenceAddress,_amount)", "source_mapping": {"start": 29614, "length": 50, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [656], "starting_column": 13, "ending_column": 63}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load(_asset,_amount)", "source_mapping": {"start": 29678, "length": 46, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [657], "starting_column": 13, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29755, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [659], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29755, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [659], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Wallet.loadTokenCard(address,uint256) (../../contracts/wallet.sol#646-663):\n\tExternal calls:\n\t- ERC20(_asset).safeApprove(licenceAddress,_amount) (../../contracts/wallet.sol#656)\n\t- ILicence(licenceAddress).load(_asset,_amount) (../../contracts/wallet.sol#657)\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#659)\n\tExternal calls sending eth:\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#659)\n\tEvent emitted after the call(s):\n\t- LoadedTokenCard(_asset,_amount) (../../contracts/wallet.sol#662)\n", "markdown": "Reentrancy in [Wallet.loadTokenCard(address,uint256)](../../contracts/wallet.sol#L646-L663):\n\tExternal calls:\n\t- [ERC20(_asset).safeApprove(licenceAddress,_amount)](../../contracts/wallet.sol#L656)\n\t- [ILicence(licenceAddress).load(_asset,_amount)](../../contracts/wallet.sol#L657)\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L659)\n\tExternal calls sending eth:\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L659)\n\tEvent emitted after the call(s):\n\t- [LoadedTokenCard(_asset,_amount)](../../contracts/wallet.sol#L662)\n", "id": "db06bb2b9de24602497ebd08d73b062ae0d58e8a84954d01ba0be0d943ddbda7", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 3437, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [80], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[]) (../../contracts/walletDeployer.sol#65-104):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#80)\n\tEvent emitted after the call(s):\n\t- MigratedWallet(wallet,_oldWallet,_owner,msg.value) (../../contracts/walletDeployer.sol#81)\n", "markdown": "Reentrancy in [WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])](../../contracts/walletDeployer.sol#L65-L104):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L80)\n\tEvent emitted after the call(s):\n\t- [MigratedWallet(wallet,_oldWallet,_owner,msg.value)](../../contracts/walletDeployer.sol#L81)\n", "id": "3c09bd74201f7bfa242e35e1cd92e5d07392171b6edf5ae0436bbe0bd5c88d14", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39476, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [841], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#824-844):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#841)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#843)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L824-L844):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L841)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L843)\n", "id": "48a8d6500f2ae73e66f1d59c7ada3f8a64d52edb2029ba10136e4917cc323e9b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 7120, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [185], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Controller.claim(address,address,uint256) (../../contracts/controller.sol#184-187):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/controller.sol#185)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/controller.sol#186)\n", "markdown": "Reentrancy in [Controller.claim(address,address,uint256)](../../contracts/controller.sol#L184-L187):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/controller.sol#L185)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/controller.sol#L186)\n", "id": "f3b1bb804b6e0637c9d0f95872ea5b209bf89f91ca774177d35ad56ba1dde407", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 9546, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [229], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Licence.claim(address,address,uint256) (../../contracts/licence.sol#228-231):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/licence.sol#229)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/licence.sol#230)\n", "markdown": "Reentrancy in [Licence.claim(address,address,uint256)](../../contracts/licence.sol#L228-L231):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/licence.sol#L229)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/licence.sol#L230)\n", "id": "5acfa120418c5a829b0b4f674255577d660452e82249a1eb2cdd74411915b9cf", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 12676, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [269], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#268-271):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#269)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#270)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L268-L271):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L269)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L270)\n", "id": "fb00aec0dfb5bdcba13a23a4427225ceef48db29f0d9006ddeb01c9ed84f0105", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Licence.load(address,uint256) (../../contracts/licence.sol#203-225):\n\tExternal calls:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n\tEvent emitted after the call(s):\n\t- TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount) (../../contracts/licence.sol#221)\n\t- TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount) (../../contracts/licence.sol#224)\n", "markdown": "Reentrancy in [Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225):\n\tExternal calls:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n\tEvent emitted after the call(s):\n\t- [TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount)](../../contracts/licence.sol#L221)\n\t- [TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount)](../../contracts/licence.sol#L224)\n", "id": "6d0fd4c950083201dd8f60bbb293d33f5672a0629399c9827be2b962c755674d", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "topUpGas", "source_mapping": {"start": 30263, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}, {"type": "node", "name": "owner().transfer(_amount)", "source_mapping": {"start": 30562, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [676], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "topUpGas", "source_mapping": {"start": 30263, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.topUpGas(uint256) (../../contracts/wallet.sol#672-679):\n\tExternal calls:\n\t- owner().transfer(_amount) (../../contracts/wallet.sol#676)\n\tEvent emitted after the call(s):\n\t- ToppedUpGas(msg.sender,owner(),_amount) (../../contracts/wallet.sol#678)\n", "markdown": "Reentrancy in [Wallet.topUpGas(uint256)](../../contracts/wallet.sol#L672-L679):\n\tExternal calls:\n\t- [owner().transfer(_amount)](../../contracts/wallet.sol#L676)\n\tEvent emitted after the call(s):\n\t- [ToppedUpGas(msg.sender,owner(),_amount)](../../contracts/wallet.sol#L678)\n", "id": "1bc35714f9df74871b7b945a2e8a275fa4b13f5edf0a6cca1696986db2232dd1", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39476, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [841], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#824-844):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#841)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#843)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L824-L844):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L841)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L843)\n", "id": "48a8d6500f2ae73e66f1d59c7ada3f8a64d52edb2029ba10136e4917cc323e9b", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "batchExecuteTransaction", "source_mapping": {"start": 31020, "length": 2016, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "batchExecuteTransaction(bytes)"}}], "description": "batchExecuteTransaction(bytes) should be declared external:\n\t- Wallet.batchExecuteTransaction(bytes) (../../contracts/wallet.sol#685-720)\n", "markdown": "batchExecuteTransaction(bytes) should be declared external:\n\t- [Wallet.batchExecuteTransaction(bytes)](../../contracts/wallet.sol#L685-L720)\n", "id": "25be393b22a852005aebc844d44187435f0cfff81e7632ced668dd912f0e2261", "check": "external-function", "impact": "Optimization", "confidence": "High"}] \ No newline at end of file +[{"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 13268, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [279, 280, 281, 282], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15842, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 13366, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [280], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 13268, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [279, 280, 281, 282], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15842, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#279-282):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#280)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#281)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L279-L282):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L280)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L281)\n", "id": "5c0b395f9c49fa284bbc373af3bba5478ce7e4ed5f3d5c1a34fc23e96eba7625", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 13268, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [279, 280, 281, 282], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15842, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 13366, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [280], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 13268, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [279, 280, 281, 282], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15842, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#279-282):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#280)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#281)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L279-L282):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L280)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L281)\n", "id": "5c0b395f9c49fa284bbc373af3bba5478ce7e4ed5f3d5c1a34fc23e96eba7625", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 13079, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [275], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#274-277):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#275)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#276)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L274-L277):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L275)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L276)\n", "id": "2972817205fa09132776a776771c75332d54703d65939778c214889eb9202d50", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 13079, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [275], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12981, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [274, 275, 276, 277], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 15310, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#274-277):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#275)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#276)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L274-L277):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L275)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L276)\n", "id": "2972817205fa09132776a776771c75332d54703d65939778c214889eb9202d50", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 34129, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}, {"type": "node", "name": "amountToSend = _amount.mul(rate).div(magnitude)", "source_mapping": {"start": 35020, "length": 47, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [760], "starting_column": 13, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 34129, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}, {"type": "node", "name": "amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)", "source_mapping": {"start": 35598, "length": 64, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [769], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 34129, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}], "description": "Wallet.convertToStablecoin(address,uint256) (../../contracts/wallet.sol#744-770) performs a multiplication on the result of a division:\n\t-amountToSend = _amount.mul(rate).div(magnitude) (../../contracts/wallet.sol#760)\n\t-amountToSend.mul(stablecoinMagnitude).div(stablecoinRate) (../../contracts/wallet.sol#769)\n", "markdown": "[Wallet.convertToStablecoin(address,uint256)](../../contracts/wallet.sol#L744-L770) performs a multiplication on the result of a division:\n\t-[amountToSend = _amount.mul(rate).div(magnitude)](../../contracts/wallet.sol#L760)\n\t-[amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)](../../contracts/wallet.sol#L769)\n", "id": "4b0e71551b32c84224e4a31db04d8fadb08ad76e73a3dbb0ca276d7835fb4b28", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 1111, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}, {"type": "node", "name": "(success,returndata) = address(this).call(_data)", "source_mapping": {"start": 27423, "length": 67, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [612], "starting_column": 9, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 1111, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeRelayedTransaction(uint256,bytes,bytes) (../../contracts/wallet.sol#597-616):\n\tExternal calls:\n\t- (success,returndata) = address(this).call(_data) (../../contracts/wallet.sol#612)\n\tEvent emitted after the call(s):\n\t- ExecutedRelayedTransaction(_data,returndata) (../../contracts/wallet.sol#615)\n", "markdown": "Reentrancy in [Wallet.executeRelayedTransaction(uint256,bytes,bytes)](../../contracts/wallet.sol#L597-L616):\n\tExternal calls:\n\t- [(success,returndata) = address(this).call(_data)](../../contracts/wallet.sol#L612)\n\tEvent emitted after the call(s):\n\t- [ExecutedRelayedTransaction(_data,returndata)](../../contracts/wallet.sol#L615)\n", "id": "1cb890c1c96ec65cdac8be7e856a111fbf1ce58f2ac6c1181477b7d3256bf319", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "ERC20(_destination).callOptionalReturn(_data)", "source_mapping": {"start": 37238, "length": 45, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [796], "starting_column": 13, "ending_column": 58}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#776-812):\n\tExternal calls:\n\t- ERC20(_destination).callOptionalReturn(_data) (../../contracts/wallet.sol#796)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,b) (../../contracts/wallet.sol#802)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L776-L812):\n\tExternal calls:\n\t- [ERC20(_destination).callOptionalReturn(_data)](../../contracts/wallet.sol#L796)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,b)](../../contracts/wallet.sol#L802)\n", "id": "a521190cdea15435dd406278a3113b60b1ca0419122518d83d48c0c066d0d824", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "(success,returndata) = _destination.call.value(_value)(_data)", "source_mapping": {"start": 37557, "length": 80, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [806], "starting_column": 9, "ending_column": 89}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35929, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#776-812):\n\tExternal calls:\n\t- (success,returndata) = _destination.call.value(_value)(_data) (../../contracts/wallet.sol#806)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,returndata) (../../contracts/wallet.sol#809)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L776-L812):\n\tExternal calls:\n\t- [(success,returndata) = _destination.call.value(_value)(_data)](../../contracts/wallet.sol#L806)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,returndata)](../../contracts/wallet.sol#L809)\n", "id": "f38d60906d621f94935a94a8bf54194809cd6e1303bc78b6d078b03864af8d5b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeApprove(licenceAddress,_amount)", "source_mapping": {"start": 29769, "length": 50, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [660], "starting_column": 13, "ending_column": 63}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load(_asset,_amount)", "source_mapping": {"start": 29833, "length": 46, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [661], "starting_column": 13, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29910, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [663], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29910, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [663], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 29093, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Wallet.loadTokenCard(address,uint256) (../../contracts/wallet.sol#650-667):\n\tExternal calls:\n\t- ERC20(_asset).safeApprove(licenceAddress,_amount) (../../contracts/wallet.sol#660)\n\t- ILicence(licenceAddress).load(_asset,_amount) (../../contracts/wallet.sol#661)\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#663)\n\tExternal calls sending eth:\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#663)\n\tEvent emitted after the call(s):\n\t- LoadedTokenCard(_asset,_amount) (../../contracts/wallet.sol#666)\n", "markdown": "Reentrancy in [Wallet.loadTokenCard(address,uint256)](../../contracts/wallet.sol#L650-L667):\n\tExternal calls:\n\t- [ERC20(_asset).safeApprove(licenceAddress,_amount)](../../contracts/wallet.sol#L660)\n\t- [ILicence(licenceAddress).load(_asset,_amount)](../../contracts/wallet.sol#L661)\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L663)\n\tExternal calls sending eth:\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L663)\n\tEvent emitted after the call(s):\n\t- [LoadedTokenCard(_asset,_amount)](../../contracts/wallet.sol#L666)\n", "id": "b2bc1ee4c2b6b9e996f6297ab095a68e7ee110cea29b2f714bbbbf51827aa313", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39638, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [845], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#828-848):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#845)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#847)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L828-L848):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L845)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L847)\n", "id": "0a03d32dd410fe941c02ed32c1418b1ef361ba946da9bd7f73f8af466a72e5a4", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "topUpGas", "source_mapping": {"start": 30418, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [676, 677, 678, 679, 680, 681, 682, 683], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}, {"type": "node", "name": "owner().transfer(_amount)", "source_mapping": {"start": 30717, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [680], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "topUpGas", "source_mapping": {"start": 30418, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [676, 677, 678, 679, 680, 681, 682, 683], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.topUpGas(uint256) (../../contracts/wallet.sol#676-683):\n\tExternal calls:\n\t- owner().transfer(_amount) (../../contracts/wallet.sol#680)\n\tEvent emitted after the call(s):\n\t- ToppedUpGas(msg.sender,owner(),_amount) (../../contracts/wallet.sol#682)\n", "markdown": "Reentrancy in [Wallet.topUpGas(uint256)](../../contracts/wallet.sol#L676-L683):\n\tExternal calls:\n\t- [owner().transfer(_amount)](../../contracts/wallet.sol#L680)\n\tEvent emitted after the call(s):\n\t- [ToppedUpGas(msg.sender,owner(),_amount)](../../contracts/wallet.sol#L682)\n", "id": "e6649e217a3dc747bf9293377b87e22ca6c1fa46c3819acc8e6b233d9f3ad2c3", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39638, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [845], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38667, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17557, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#828-848):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#845)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#847)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L828-L848):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L845)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L847)\n", "id": "0a03d32dd410fe941c02ed32c1418b1ef361ba946da9bd7f73f8af466a72e5a4", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)", "source_mapping": {"start": 3510, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [81], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.burn(address,uint256) (../../contracts/holder.sol#70-87):\n\tExternal calls:\n\t- _safeTransfer(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#81)\n\tEvent emitted after the call(s):\n\t- CashAndBurned(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#82)\n", "markdown": "Reentrancy in [Holder.burn(address,uint256)](../../contracts/holder.sol#L70-L87):\n\tExternal calls:\n\t- [_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L81)\n\tEvent emitted after the call(s):\n\t- [CashAndBurned(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L82)\n", "id": "ada49538df8b91af85bc7b17e3e69344542d64d979dc332e09a0d1cacd0f5472", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}, {"type": "node", "name": "_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)", "source_mapping": {"start": 4448, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [98], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.nonRedeemableTokenClaim(address,address[]) (../../contracts/holder.sol#92-104):\n\tExternal calls:\n\t- _safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#98)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#99)\n", "markdown": "Reentrancy in [Holder.nonRedeemableTokenClaim(address,address[])](../../contracts/holder.sol#L92-L104):\n\tExternal calls:\n\t- [_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L98)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L99)\n", "id": "c01c2890786e16cf021933229bf22cd869c10bd132d254ab36635b2d4a220e94", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)", "source_mapping": {"start": 3510, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [81], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "burn", "source_mapping": {"start": 2850, "length": 856, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "burn(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.burn(address,uint256) (../../contracts/holder.sol#70-87):\n\tExternal calls:\n\t- _safeTransfer(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#81)\n\tEvent emitted after the call(s):\n\t- CashAndBurned(_to,redeemableAddresses[i],redeemableAmount) (../../contracts/holder.sol#82)\n", "markdown": "Reentrancy in [Holder.burn(address,uint256)](../../contracts/holder.sol#L70-L87):\n\tExternal calls:\n\t- [_safeTransfer(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L81)\n\tEvent emitted after the call(s):\n\t- [CashAndBurned(_to,redeemableAddresses[i],redeemableAmount)](../../contracts/holder.sol#L82)\n", "id": "ada49538df8b91af85bc7b17e3e69344542d64d979dc332e09a0d1cacd0f5472", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}, {"type": "node", "name": "_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)", "source_mapping": {"start": 4448, "length": 60, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [98], "starting_column": 17, "ending_column": 77}, "type_specific_fields": {"parent": {"type": "function", "name": "nonRedeemableTokenClaim", "source_mapping": {"start": 3956, "length": 682, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Holder", "source_mapping": {"start": 1250, "length": 3571, "filename_used": "/contracts/tools/slither/../../contracts/holder.sol", "filename_relative": "../../contracts/holder.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/holder.sol", "filename_short": "../../contracts/holder.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "nonRedeemableTokenClaim(address,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Holder.nonRedeemableTokenClaim(address,address[]) (../../contracts/holder.sol#92-104):\n\tExternal calls:\n\t- _safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#98)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_nonRedeemableAddresses[i],claimBalance) (../../contracts/holder.sol#99)\n", "markdown": "Reentrancy in [Holder.nonRedeemableTokenClaim(address,address[])](../../contracts/holder.sol#L92-L104):\n\tExternal calls:\n\t- [_safeTransfer(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L98)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_nonRedeemableAddresses[i],claimBalance)](../../contracts/holder.sol#L99)\n", "id": "c01c2890786e16cf021933229bf22cd869c10bd132d254ab36635b2d4a220e94", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10 ** (decMinted))", "source_mapping": {"start": 7623, "length": 32, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [146], "starting_column": 13, "ending_column": 45}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10 ** (decMinted)) (../../contracts/internals/parseIntScientific.sol#146)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10 ** (decMinted))](../../contracts/internals/parseIntScientific.sol#L146)\n", "id": "7f2a8a8833de43e4bde53359583557ee2e1dd2c6c047aa209df3b9574e4a0801", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10 ** (_magnitudeMult - decMinted))", "source_mapping": {"start": 7867, "length": 49, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [150], "starting_column": 13, "ending_column": 62}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10 ** (_magnitudeMult - decMinted)) (../../contracts/internals/parseIntScientific.sol#150)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10 ** (_magnitudeMult - decMinted))](../../contracts/internals/parseIntScientific.sol#L150)\n", "id": "a82b7c9693de1c9605223cd9c9b544a7e3cafa00cc860a652f4702656c06516e", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10 ** (_magnitudeMult))", "source_mapping": {"start": 8376, "length": 37, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [159], "starting_column": 13, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10 ** (_magnitudeMult)) (../../contracts/internals/parseIntScientific.sol#159)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10 ** (_magnitudeMult))](../../contracts/internals/parseIntScientific.sol#L159)\n", "id": "298bd6ddafc691cf4f164caea46b84f7d806fa4aa46de23a15f20ba149f569d4", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mintDec /= 10 ** (decMinted)", "source_mapping": {"start": 8193, "length": 26, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [156], "starting_column": 13, "ending_column": 39}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mintDec = mintDec.mul(10)", "source_mapping": {"start": 3690, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [68], "starting_column": 21, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mintDec /= 10 ** (decMinted) (../../contracts/internals/parseIntScientific.sol#156)\n\t-mintDec = mintDec.mul(10) (../../contracts/internals/parseIntScientific.sol#68)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mintDec /= 10 ** (decMinted)](../../contracts/internals/parseIntScientific.sol#L156)\n\t-[mintDec = mintDec.mul(10)](../../contracts/internals/parseIntScientific.sol#L68)\n", "id": "470f40a7333d285b7694adabe7173b9c0362522e9144fa61ef4a6eaa2daf9e01", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}, {"type": "node", "name": "mint /= 10 ** (mintExp - _magnitudeMult)", "source_mapping": {"start": 6736, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [128], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}, {"type": "node", "name": "mint = mint.mul(10)", "source_mapping": {"start": 4060, "length": 19, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [75], "starting_column": 21, "ending_column": 40}, "type_specific_fields": {"parent": {"type": "function", "name": "_parseIntScientific", "source_mapping": {"start": 2339, "length": 6150, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ParseIntScientific", "source_mapping": {"start": 952, "length": 7539, "filename_used": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_relative": "../../contracts/internals/parseIntScientific.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/parseIntScientific.sol", "filename_short": "../../contracts/internals/parseIntScientific.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "_parseIntScientific(string,uint256)"}}}}], "description": "ParseIntScientific._parseIntScientific(string,uint256) (../../contracts/internals/parseIntScientific.sol#49-163) performs a multiplication on the result of a division:\n\t-mint /= 10 ** (mintExp - _magnitudeMult) (../../contracts/internals/parseIntScientific.sol#128)\n\t-mint = mint.mul(10) (../../contracts/internals/parseIntScientific.sol#75)\n", "markdown": "[ParseIntScientific._parseIntScientific(string,uint256)](../../contracts/internals/parseIntScientific.sol#L49-L163) performs a multiplication on the result of a division:\n\t-[mint /= 10 ** (mintExp - _magnitudeMult)](../../contracts/internals/parseIntScientific.sol#L128)\n\t-[mint = mint.mul(10)](../../contracts/internals/parseIntScientific.sol#L75)\n", "id": "f8b2ecf16caf3e893d94cb419fc0ab2f8ea68dd9192e609cb5a3db13bc7a8e17", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(10000000000)", "source_mapping": {"start": 3680, "length": 39, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [84], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "oraclize"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "OAR"}}], "description": "Reentrancy in Oracle.constructor(address,address,bytes32,bytes32) (../../contracts/oracle.sol#76-86):\n\tExternal calls:\n\t- oraclize_setCustomGasPrice(10000000000) (../../contracts/oracle.sol#84)\n\t- oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n\tState variables written after the call(s):\n\t- usingOraclize.OAR (../../contracts/externals/oraclizeAPI_0.5.sol#277) in oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n\t- usingOraclize.oraclize (../../contracts/externals/oraclizeAPI_0.5.sol#276) in oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n", "markdown": "Reentrancy in [Oracle.constructor(address,address,bytes32,bytes32)](../../contracts/oracle.sol#L76-L86):\n\tExternal calls:\n\t- [oraclize_setCustomGasPrice(10000000000)](../../contracts/oracle.sol#L84)\n\t- [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n\tState variables written after the call(s):\n\t- [usingOraclize.OAR](../../contracts/externals/oraclizeAPI_0.5.sol#L277) in [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n\t- [usingOraclize.oraclize](../../contracts/externals/oraclizeAPI_0.5.sol#L276) in [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n", "id": "9b7e0458df6a12ccc25ca885c1158caac10cabbd5102f026e8d09d61744c3bdc", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}, {"type": "node", "name": "body.split(:.toSlice())", "source_mapping": {"start": 7485, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [164], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}}}], "description": "Oracle.parseRate(string) (../../contracts/oracle.sol#154-171) ignores return value by body.split(:.toSlice()) (../../contracts/oracle.sol#164)\n", "markdown": "[Oracle.parseRate(string)](../../contracts/oracle.sol#L154-L171) ignores return value by [body.split(:.toSlice())](../../contracts/oracle.sol#L164)\n", "id": "57e01c5a18e167847c5f051264b26625750a50707c631291a707dc983e9f897a", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}, {"type": "node", "name": "body.until(}.toSlice())", "source_mapping": {"start": 7638, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [167], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "parseRate", "source_mapping": {"start": 6953, "length": 876, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "parseRate(string)"}}}}], "description": "Oracle.parseRate(string) (../../contracts/oracle.sol#154-171) ignores return value by body.until(}.toSlice()) (../../contracts/oracle.sol#167)\n", "markdown": "[Oracle.parseRate(string)](../../contracts/oracle.sol#L154-L171) ignores return value by [body.until(}.toSlice())](../../contracts/oracle.sol#L167)\n", "id": "616e085a90cc424dbae3174c4fd9b1d1f5183a86c86ce007f8695a946e877534", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "__callback", "source_mapping": {"start": 5655, "length": 1150, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "__callback(bytes32,string,bytes)"}}, {"type": "node", "name": "require(bool,string)(msg.sender == oraclize_cbAddress(),sender is not oraclize)", "source_mapping": {"start": 5815, "length": 69, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [128], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "__callback", "source_mapping": {"start": 5655, "length": 1150, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "__callback(bytes32,string,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "delete _queryToToken[_queryID]", "source_mapping": {"start": 6690, "length": 30, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [146], "starting_column": 13, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "function", "name": "__callback", "source_mapping": {"start": 5655, "length": 1150, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "__callback(bytes32,string,bytes)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_queryToToken"}}], "description": "Reentrancy in Oracle.__callback(bytes32,string,bytes) (../../contracts/oracle.sol#126-150):\n\tExternal calls:\n\t- require(bool,string)(msg.sender == oraclize_cbAddress(),sender is not oraclize) (../../contracts/oracle.sol#128)\n\tState variables written after the call(s):\n\t- Oracle._queryToToken (../../contracts/oracle.sol#69) in delete _queryToToken[_queryID] (../../contracts/oracle.sol#146)\n", "markdown": "Reentrancy in [Oracle.__callback(bytes32,string,bytes)](../../contracts/oracle.sol#L126-L150):\n\tExternal calls:\n\t- [require(bool,string)(msg.sender == oraclize_cbAddress(),sender is not oraclize)](../../contracts/oracle.sol#L128)\n\tState variables written after the call(s):\n\t- [Oracle._queryToToken](../../contracts/oracle.sol#L69) in [delete _queryToToken[_queryID]](../../contracts/oracle.sol#L146)\n", "id": "96f52b522121a67e0809b83b7c0c23acacec140804d52333c8f74ba8792ebf60", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 9284, "length": 101, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [197], "starting_column": 17, "ending_column": 118}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_queryToToken[queryID] = tokenAddresses[i]", "source_mapping": {"start": 9485, "length": 42, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [199], "starting_column": 17, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_queryToToken"}}], "description": "Reentrancy in Oracle._updateTokenRates(uint256) (../../contracts/oracle.sol#175-204):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#197)\n\tState variables written after the call(s):\n\t- Oracle._queryToToken (../../contracts/oracle.sol#69) in _queryToToken[queryID] = tokenAddresses[i] (../../contracts/oracle.sol#199)\n", "markdown": "Reentrancy in [Oracle._updateTokenRates(uint256)](../../contracts/oracle.sol#L175-L204):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L197)\n\tState variables written after the call(s):\n\t- [Oracle._queryToToken](../../contracts/oracle.sol#L69) in [_queryToToken[queryID] = tokenAddresses[i]](../../contracts/oracle.sol#L199)\n", "id": "16b3faa45646ffaa585e8b26e48f95a6e9925a319fda401faa86fa7297616386", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 11332, "length": 104, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [231], "starting_column": 17, "ending_column": 121}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_queryToToken[queryID] = _tokenList[i]", "source_mapping": {"start": 11536, "length": 38, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [233], "starting_column": 17, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "_queryToToken"}}], "description": "Reentrancy in Oracle._updateTokenRatesList(uint256,address[]) (../../contracts/oracle.sol#209-238):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#231)\n\tState variables written after the call(s):\n\t- Oracle._queryToToken (../../contracts/oracle.sol#69) in _queryToToken[queryID] = _tokenList[i] (../../contracts/oracle.sol#233)\n", "markdown": "Reentrancy in [Oracle._updateTokenRatesList(uint256,address[])](../../contracts/oracle.sol#L209-L238):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L231)\n\tState variables written after the call(s):\n\t- [Oracle._queryToToken](../../contracts/oracle.sol#L69) in [_queryToToken[queryID] = _tokenList[i]](../../contracts/oracle.sol#L233)\n", "id": "83738ff45e3ef3c1e6f15d976fd83893e3f2a03389e0a95ca82093faa2d6a43b", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(10000000000)", "source_mapping": {"start": 3680, "length": 39, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [84], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "oraclize_setProof(proofType_Native)", "source_mapping": {"start": 3729, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [85], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "oraclize_network_name"}}], "description": "Reentrancy in Oracle.constructor(address,address,bytes32,bytes32) (../../contracts/oracle.sol#76-86):\n\tExternal calls:\n\t- oraclize_setCustomGasPrice(10000000000) (../../contracts/oracle.sol#84)\n\t- oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n\tState variables written after the call(s):\n\t- usingOraclize.oraclize_network_name (../../contracts/externals/oraclizeAPI_0.5.sol#290) in oraclize_setProof(proofType_Native) (../../contracts/oracle.sol#85)\n", "markdown": "Reentrancy in [Oracle.constructor(address,address,bytes32,bytes32)](../../contracts/oracle.sol#L76-L86):\n\tExternal calls:\n\t- [oraclize_setCustomGasPrice(10000000000)](../../contracts/oracle.sol#L84)\n\t- [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n\tState variables written after the call(s):\n\t- [usingOraclize.oraclize_network_name](../../contracts/externals/oraclizeAPI_0.5.sol#L290) in [oraclize_setProof(proofType_Native)](../../contracts/oracle.sol#L85)\n", "id": "e098718d09215ba2db2ded1adb0dd896e18d18a0e8655793f6428c160d896c23", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}, {"type": "node", "name": "oraclize_getPrice(URL) * tokenAddresses.length > address(this).balance", "source_mapping": {"start": 8402, "length": 72, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [182], "starting_column": 20, "ending_column": 92}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRates(uint256) (../../contracts/oracle.sol#175-204):\n\tExternal calls:\n\t- oraclize_getPrice(URL) * tokenAddresses.length > address(this).balance (../../contracts/oracle.sol#182)\n\tEvent emitted after the call(s):\n\t- FailedUpdateRequest(insufficient balance) (../../contracts/oracle.sol#184)\n", "markdown": "Reentrancy in [Oracle._updateTokenRates(uint256)](../../contracts/oracle.sol#L175-L204):\n\tExternal calls:\n\t- [oraclize_getPrice(URL) * tokenAddresses.length > address(this).balance](../../contracts/oracle.sol#L182)\n\tEvent emitted after the call(s):\n\t- [FailedUpdateRequest(insufficient balance)](../../contracts/oracle.sol#L184)\n", "id": "d6eccca5bf4804a1c0291b279cf3357c4e86afac91c79486ef0a6eeb2d7817e2", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 9284, "length": 101, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [197], "starting_column": 17, "ending_column": 118}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRates", "source_mapping": {"start": 8000, "length": 1670, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRates(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRates(uint256) (../../contracts/oracle.sol#175-204):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#197)\n\tEvent emitted after the call(s):\n\t- RequestedUpdate(sym.toString(),queryID) (../../contracts/oracle.sol#201)\n", "markdown": "Reentrancy in [Oracle._updateTokenRates(uint256)](../../contracts/oracle.sol#L175-L204):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(sym).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L197)\n\tEvent emitted after the call(s):\n\t- [RequestedUpdate(sym.toString(),queryID)](../../contracts/oracle.sol#L201)\n", "id": "67e816edc4c01f223b1b491b28fa18e18e9d0bf94df8b573b4ca749c137c8f2b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}, {"type": "node", "name": "oraclize_getPrice(URL) * _tokenList.length > address(this).balance", "source_mapping": {"start": 10316, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [215], "starting_column": 20, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRatesList(uint256,address[]) (../../contracts/oracle.sol#209-238):\n\tExternal calls:\n\t- oraclize_getPrice(URL) * _tokenList.length > address(this).balance (../../contracts/oracle.sol#215)\n\tEvent emitted after the call(s):\n\t- FailedUpdateRequest(insufficient balance) (../../contracts/oracle.sol#217)\n", "markdown": "Reentrancy in [Oracle._updateTokenRatesList(uint256,address[])](../../contracts/oracle.sol#L209-L238):\n\tExternal calls:\n\t- [oraclize_getPrice(URL) * _tokenList.length > address(this).balance](../../contracts/oracle.sol#L215)\n\tEvent emitted after the call(s):\n\t- [FailedUpdateRequest(insufficient balance)](../../contracts/oracle.sol#L217)\n", "id": "3bc620013729beee01c7257dcd5dcd9060cbbd06dd8074c67a1196cf3472c9e0", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}, {"type": "node", "name": "queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)", "source_mapping": {"start": 11332, "length": 104, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [231], "starting_column": 17, "ending_column": 121}, "type_specific_fields": {"parent": {"type": "function", "name": "_updateTokenRatesList", "source_mapping": {"start": 9942, "length": 1778, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_updateTokenRatesList(uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle._updateTokenRatesList(uint256,address[]) (../../contracts/oracle.sol#209-238):\n\tExternal calls:\n\t- queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit) (../../contracts/oracle.sol#231)\n\tEvent emitted after the call(s):\n\t- RequestedUpdate(symbol.toString(),queryID) (../../contracts/oracle.sol#235)\n", "markdown": "Reentrancy in [Oracle._updateTokenRatesList(uint256,address[])](../../contracts/oracle.sol#L209-L238):\n\tExternal calls:\n\t- [queryID = oraclize_query(URL,apiPrefix.concat(symbol).toSlice().concat(apiSuffix),_gasLimit)](../../contracts/oracle.sol#L231)\n\tEvent emitted after the call(s):\n\t- [RequestedUpdate(symbol.toString(),queryID)](../../contracts/oracle.sol#L235)\n", "id": "9013fb9a0619ea53422592b79906b387224b37255fa39732b204c2023b0730e9", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 5284, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [117], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle.claim(address,address,uint256) (../../contracts/oracle.sol#116-119):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/oracle.sol#117)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/oracle.sol#118)\n", "markdown": "Reentrancy in [Oracle.claim(address,address,uint256)](../../contracts/oracle.sol#L116-L119):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/oracle.sol#L117)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/oracle.sol#L118)\n", "id": "3114aa97e4690b19c139ae5191ce3250a974721acffb05fc28e68d7d4e696262", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "setCustomGasPrice", "source_mapping": {"start": 4212, "length": 173, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "setCustomGasPrice(uint256)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(_gasPrice)", "source_mapping": {"start": 4292, "length": 37, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [98], "starting_column": 9, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "function", "name": "setCustomGasPrice", "source_mapping": {"start": 4212, "length": 173, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [97, 98, 99, 100], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "setCustomGasPrice(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle.setCustomGasPrice(uint256) (../../contracts/oracle.sol#97-100):\n\tExternal calls:\n\t- oraclize_setCustomGasPrice(_gasPrice) (../../contracts/oracle.sol#98)\n\tEvent emitted after the call(s):\n\t- SetGasPrice(msg.sender,_gasPrice) (../../contracts/oracle.sol#99)\n", "markdown": "Reentrancy in [Oracle.setCustomGasPrice(uint256)](../../contracts/oracle.sol#L97-L100):\n\tExternal calls:\n\t- [oraclize_setCustomGasPrice(_gasPrice)](../../contracts/oracle.sol#L98)\n\tEvent emitted after the call(s):\n\t- [SetGasPrice(msg.sender,_gasPrice)](../../contracts/oracle.sol#L99)\n", "id": "39ed098b5f36b84612653d7ab8c9d466bd9a7e0106d086f0b5787daf51d4afad", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 5284, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [117], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 5186, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [116, 117, 118, 119], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Oracle.claim(address,address,uint256) (../../contracts/oracle.sol#116-119):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/oracle.sol#117)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/oracle.sol#118)\n", "markdown": "Reentrancy in [Oracle.claim(address,address,uint256)](../../contracts/oracle.sol#L116-L119):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/oracle.sol#L117)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/oracle.sol#L118)\n", "id": "3114aa97e4690b19c139ae5191ce3250a974721acffb05fc28e68d7d4e696262", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}, {"type": "node", "name": "oraclize_setCustomGasPrice(10000000000)", "source_mapping": {"start": 3680, "length": 39, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [84], "starting_column": 9, "ending_column": 48}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 3211, "length": 560, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.sol", "is_dependency": false, "lines": [76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Oracle", "source_mapping": {"start": 1226, "length": 15469, "filename_used": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_relative": "../../contracts/oracle.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/oracle.sol", "filename_short": "../../contracts/oracle.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, 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], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(address,address,bytes32,bytes32)"}}}}], "description": "Oracle.constructor(address,address,bytes32,bytes32) (../../contracts/oracle.sol#76-86) uses literals with too many digits:\n\t- oraclize_setCustomGasPrice(10000000000) (../../contracts/oracle.sol#84)\n", "markdown": "[Oracle.constructor(address,address,bytes32,bytes32)](../../contracts/oracle.sol#L76-L86) uses literals with too many digits:\n\t- [oraclize_setCustomGasPrice(10000000000)](../../contracts/oracle.sol#L84)\n", "id": "42c28e01a625ad23a0f9609278a92d25b44d2b7c00a9de61f230623adfe8d099", "check": "too-many-digits", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "controllerNode", "source_mapping": {"start": 2169, "length": 95, "filename_used": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_relative": "../../contracts/internals/controllable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_short": "../../contracts/internals/controllable.sol", "is_dependency": false, "lines": [57, 58, 59], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controllable", "source_mapping": {"start": 955, "length": 1749, "filename_used": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_relative": "../../contracts/internals/controllable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/controllable.sol", "filename_short": "../../contracts/internals/controllable.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], "starting_column": 1, "ending_column": 2}}, "signature": "controllerNode()"}}], "description": "controllerNode() should be declared external:\n\t- Controllable.controllerNode() (../../contracts/internals/controllable.sol#57-59)\n", "markdown": "controllerNode() should be declared external:\n\t- [Controllable.controllerNode()](../../contracts/internals/controllable.sol#L57-L59)\n", "id": "d13a5d67fbaa6821edc17da5f446b38ce126b2b8abcbc3c21b79428186db1d29", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "owner", "source_mapping": {"start": 3932, "length": 85, "filename_used": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_relative": "../../contracts/internals/ownable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_short": "../../contracts/internals/ownable.sol", "is_dependency": false, "lines": [90, 91, 92], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Ownable", "source_mapping": {"start": 1149, "length": 3083, "filename_used": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_relative": "../../contracts/internals/ownable.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/internals/ownable.sol", "filename_short": "../../contracts/internals/ownable.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], "starting_column": 1, "ending_column": 2}}, "signature": "owner()"}}], "description": "owner() should be declared external:\n\t- Ownable.owner() (../../contracts/internals/ownable.sol#90-92)\n", "markdown": "owner() should be declared external:\n\t- [Ownable.owner()](../../contracts/internals/ownable.sol#L90-L92)\n", "id": "698811821ed34357d834c197b976565a1354eaff150bcbc8a352f2d8c7df57f3", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}}], "description": "Licence.load(address,uint256) (../../contracts/licence.sol#203-225) sends eth to arbitrary user\n\tDangerous calls:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n", "markdown": "[Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225) sends eth to arbitrary user\n\tDangerous calls:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n", "id": "83160c7dc873f30ad73fff30071a3e5f97ce66637b4add1555f4eb937231d937", "check": "arbitrary-send", "impact": "High", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 33974, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}, {"type": "node", "name": "amountToSend = _amount.mul(rate).div(magnitude)", "source_mapping": {"start": 34865, "length": 47, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [756], "starting_column": 13, "ending_column": 60}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 33974, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}, {"type": "node", "name": "amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)", "source_mapping": {"start": 35443, "length": 64, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [765], "starting_column": 9, "ending_column": 73}, "type_specific_fields": {"parent": {"type": "function", "name": "convertToStablecoin", "source_mapping": {"start": 33974, "length": 1540, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "convertToStablecoin(address,uint256)"}}}}], "description": "Wallet.convertToStablecoin(address,uint256) (../../contracts/wallet.sol#740-766) performs a multiplication on the result of a division:\n\t-amountToSend = _amount.mul(rate).div(magnitude) (../../contracts/wallet.sol#756)\n\t-amountToSend.mul(stablecoinMagnitude).div(stablecoinRate) (../../contracts/wallet.sol#765)\n", "markdown": "[Wallet.convertToStablecoin(address,uint256)](../../contracts/wallet.sol#L740-L766) performs a multiplication on the result of a division:\n\t-[amountToSend = _amount.mul(rate).div(magnitude)](../../contracts/wallet.sol#L756)\n\t-[amountToSend.mul(stablecoinMagnitude).div(stablecoinRate)](../../contracts/wallet.sol#L765)\n", "id": "f90b4b9d2d1e6f9e4e2bf2311f622b9d445791754d7213af3961a5b12d671973", "check": "divide-before-multiply", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 3437, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [80], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "deployedWallets[_owner] = address(wallet)", "source_mapping": {"start": 3591, "length": 41, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [83], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "deployedWallets"}}], "description": "Reentrancy in WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[]) (../../contracts/walletDeployer.sol#65-104):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#80)\n\tState variables written after the call(s):\n\t- WalletDeployer.deployedWallets (../../contracts/walletDeployer.sol#37) in deployedWallets[_owner] = address(wallet) (../../contracts/walletDeployer.sol#83)\n", "markdown": "Reentrancy in [WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])](../../contracts/walletDeployer.sol#L65-L104):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L80)\n\tState variables written after the call(s):\n\t- [WalletDeployer.deployedWallets](../../contracts/walletDeployer.sol#L37) in [deployedWallets[_owner] = address(wallet)](../../contracts/walletDeployer.sol#L83)\n", "id": "6a3cf866f4b842653e71e5ad276b7296053b7e7cf7960f962fbf41d3f76f9a02", "check": "reentrancy-no-eth", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 2132, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [51], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "deployedWallets[_owner] = address(wallet)", "source_mapping": {"start": 2263, "length": 41, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [54], "starting_column": 9, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}}, "additional_fields": {"underlying_type": "variables_written", "variable_name": "deployedWallets"}}], "description": "Reentrancy in WalletDeployer.deployWallet(address) (../../contracts/walletDeployer.sol#50-58):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#51)\n\tState variables written after the call(s):\n\t- WalletDeployer.deployedWallets (../../contracts/walletDeployer.sol#37) in deployedWallets[_owner] = address(wallet) (../../contracts/walletDeployer.sol#54)\n", "markdown": "Reentrancy in [WalletDeployer.deployWallet(address)](../../contracts/walletDeployer.sol#L50-L58):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L51)\n\tState variables written after the call(s):\n\t- [WalletDeployer.deployedWallets](../../contracts/walletDeployer.sol#L37) in [deployedWallets[_owner] = address(wallet)](../../contracts/walletDeployer.sol#L54)\n", "id": "5dd6055bd01a0fb619cd464b024bbb108c56d1839c3a66c176eca65548024888", "check": "reentrancy-benign", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 7120, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [185], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Controller.claim(address,address,uint256) (../../contracts/controller.sol#184-187):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/controller.sol#185)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/controller.sol#186)\n", "markdown": "Reentrancy in [Controller.claim(address,address,uint256)](../../contracts/controller.sol#L184-L187):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/controller.sol#L185)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/controller.sol#L186)\n", "id": "f3b1bb804b6e0637c9d0f95872ea5b209bf89f91ca774177d35ad56ba1dde407", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 9546, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [229], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Licence.claim(address,address,uint256) (../../contracts/licence.sol#228-231):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/licence.sol#229)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/licence.sol#230)\n", "markdown": "Reentrancy in [Licence.claim(address,address,uint256)](../../contracts/licence.sol#L228-L231):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/licence.sol#L229)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/licence.sol#L230)\n", "id": "5acfa120418c5a829b0b4f674255577d660452e82249a1eb2cdd74411915b9cf", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 12676, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [269], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#268-271):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#269)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#270)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L268-L271):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L269)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L270)\n", "id": "fb00aec0dfb5bdcba13a23a4427225ceef48db29f0d9006ddeb01c9ed84f0105", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 2132, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [51], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "deployWallet", "source_mapping": {"start": 2052, "length": 398, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [50, 51, 52, 53, 54, 55, 56, 57, 58], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "deployWallet(address)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in WalletDeployer.deployWallet(address) (../../contracts/walletDeployer.sol#50-58):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#51)\n\tEvent emitted after the call(s):\n\t- DeployedWallet(wallet,_owner) (../../contracts/walletDeployer.sol#52)\n", "markdown": "Reentrancy in [WalletDeployer.deployWallet(address)](../../contracts/walletDeployer.sol#L50-L58):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L51)\n\tEvent emitted after the call(s):\n\t- [DeployedWallet(wallet,_owner)](../../contracts/walletDeployer.sol#L52)\n", "id": "13215e2a7cdd7b7b01fee013b0174829e1df1bde1d64129132117eb421e03ab1", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 954, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}, {"type": "node", "name": "(success,returndata) = address(this).call(_data)", "source_mapping": {"start": 27266, "length": 67, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [608], "starting_column": 9, "ending_column": 76}, "type_specific_fields": {"parent": {"type": "function", "name": "executeRelayedTransaction", "source_mapping": {"start": 26493, "length": 954, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeRelayedTransaction(uint256,bytes,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeRelayedTransaction(uint256,bytes,bytes) (../../contracts/wallet.sol#597-612):\n\tExternal calls:\n\t- (success,returndata) = address(this).call(_data) (../../contracts/wallet.sol#608)\n\tEvent emitted after the call(s):\n\t- ExecutedRelayedTransaction(_data,returndata) (../../contracts/wallet.sol#611)\n", "markdown": "Reentrancy in [Wallet.executeRelayedTransaction(uint256,bytes,bytes)](../../contracts/wallet.sol#L597-L612):\n\tExternal calls:\n\t- [(success,returndata) = address(this).call(_data)](../../contracts/wallet.sol#L608)\n\tEvent emitted after the call(s):\n\t- [ExecutedRelayedTransaction(_data,returndata)](../../contracts/wallet.sol#L611)\n", "id": "eab9e0722a360f01189b0880090ccb910dce9a87700a8b2785b493c075f33efa", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "ERC20(_destination).callOptionalReturn(_data)", "source_mapping": {"start": 37083, "length": 45, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [792], "starting_column": 13, "ending_column": 58}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#772-808):\n\tExternal calls:\n\t- ERC20(_destination).callOptionalReturn(_data) (../../contracts/wallet.sol#792)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,b) (../../contracts/wallet.sol#798)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L772-L808):\n\tExternal calls:\n\t- [ERC20(_destination).callOptionalReturn(_data)](../../contracts/wallet.sol#L792)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,b)](../../contracts/wallet.sol#L798)\n", "id": "df815fd0cc323d5a806cb963c1939e1c7b9eb8e51c6853d9134f823ca6999f52", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}, {"type": "node", "name": "(success,returndata) = _destination.call.value(_value)(_data)", "source_mapping": {"start": 37402, "length": 80, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [802], "starting_column": 9, "ending_column": 89}, "type_specific_fields": {"parent": {"type": "function", "name": "executeTransaction", "source_mapping": {"start": 35774, "length": 1934, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "executeTransaction(address,uint256,bytes)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.executeTransaction(address,uint256,bytes) (../../contracts/wallet.sol#772-808):\n\tExternal calls:\n\t- (success,returndata) = _destination.call.value(_value)(_data) (../../contracts/wallet.sol#802)\n\tEvent emitted after the call(s):\n\t- ExecutedTransaction(_destination,_value,_data,returndata) (../../contracts/wallet.sol#805)\n", "markdown": "Reentrancy in [Wallet.executeTransaction(address,uint256,bytes)](../../contracts/wallet.sol#L772-L808):\n\tExternal calls:\n\t- [(success,returndata) = _destination.call.value(_value)(_data)](../../contracts/wallet.sol#L802)\n\tEvent emitted after the call(s):\n\t- [ExecutedTransaction(_destination,_value,_data,returndata)](../../contracts/wallet.sol#L805)\n", "id": "b8eb04191b1a00faadd7cbc4828efadac50f610f8f6797089af3baa205906fd3", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)", "source_mapping": {"start": 8784, "length": 71, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [213], "starting_column": 17, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)", "source_mapping": {"start": 8873, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [214], "starting_column": 17, "ending_column": 85}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Licence.load(address,uint256) (../../contracts/licence.sol#203-225):\n\tExternal calls:\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount) (../../contracts/licence.sol#213)\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount) (../../contracts/licence.sol#214)\n\tExternal calls sending eth:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n\tEvent emitted after the call(s):\n\t- TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount) (../../contracts/licence.sol#221)\n", "markdown": "Reentrancy in [Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225):\n\tExternal calls:\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)](../../contracts/licence.sol#L213)\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)](../../contracts/licence.sol#L214)\n\tExternal calls sending eth:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n\tEvent emitted after the call(s):\n\t- [TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount)](../../contracts/licence.sol#L221)\n", "id": "c4548603fecb173fc668ed0fd68e075876c605435a7128c855aa20fa7e21b018", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)", "source_mapping": {"start": 8478, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [207], "starting_column": 13, "ending_column": 81}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)", "source_mapping": {"start": 8784, "length": 71, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [213], "starting_column": 17, "ending_column": 88}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)", "source_mapping": {"start": 8873, "length": 68, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [214], "starting_column": 17, "ending_column": 85}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Licence.load(address,uint256) (../../contracts/licence.sol#203-225):\n\tExternal calls:\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount) (../../contracts/licence.sol#207)\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount) (../../contracts/licence.sol#213)\n\t- ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount) (../../contracts/licence.sol#214)\n\tExternal calls sending eth:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n\tEvent emitted after the call(s):\n\t- TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount) (../../contracts/licence.sol#224)\n", "markdown": "Reentrancy in [Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225):\n\tExternal calls:\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)](../../contracts/licence.sol#L207)\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_tokenHolder,licenceAmount)](../../contracts/licence.sol#L213)\n\t- [ERC20(_asset).safeTransferFrom(msg.sender,_cryptoFloat,loadAmount)](../../contracts/licence.sol#L214)\n\tExternal calls sending eth:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n\tEvent emitted after the call(s):\n\t- [TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount)](../../contracts/licence.sol#L224)\n", "id": "81030ab99342faad35bf6caa22de7e049dd26b36d139bbb04cca307bed35661d", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}, {"type": "node", "name": "ERC20(_asset).safeApprove(licenceAddress,_amount)", "source_mapping": {"start": 29614, "length": 50, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [656], "starting_column": 13, "ending_column": 63}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load(_asset,_amount)", "source_mapping": {"start": 29678, "length": 46, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [657], "starting_column": 13, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29755, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [659], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "ILicence(licenceAddress).load.value(_amount)(_asset,_amount)", "source_mapping": {"start": 29755, "length": 61, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [659], "starting_column": 13, "ending_column": 74}, "type_specific_fields": {"parent": {"type": "function", "name": "loadTokenCard", "source_mapping": {"start": 28938, "length": 943, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "loadTokenCard(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls_sending_eth"}}], "description": "Reentrancy in Wallet.loadTokenCard(address,uint256) (../../contracts/wallet.sol#646-663):\n\tExternal calls:\n\t- ERC20(_asset).safeApprove(licenceAddress,_amount) (../../contracts/wallet.sol#656)\n\t- ILicence(licenceAddress).load(_asset,_amount) (../../contracts/wallet.sol#657)\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#659)\n\tExternal calls sending eth:\n\t- ILicence(licenceAddress).load.value(_amount)(_asset,_amount) (../../contracts/wallet.sol#659)\n\tEvent emitted after the call(s):\n\t- LoadedTokenCard(_asset,_amount) (../../contracts/wallet.sol#662)\n", "markdown": "Reentrancy in [Wallet.loadTokenCard(address,uint256)](../../contracts/wallet.sol#L646-L663):\n\tExternal calls:\n\t- [ERC20(_asset).safeApprove(licenceAddress,_amount)](../../contracts/wallet.sol#L656)\n\t- [ILicence(licenceAddress).load(_asset,_amount)](../../contracts/wallet.sol#L657)\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L659)\n\tExternal calls sending eth:\n\t- [ILicence(licenceAddress).load.value(_amount)(_asset,_amount)](../../contracts/wallet.sol#L659)\n\tEvent emitted after the call(s):\n\t- [LoadedTokenCard(_asset,_amount)](../../contracts/wallet.sol#L662)\n", "id": "db06bb2b9de24602497ebd08d73b062ae0d58e8a84954d01ba0be0d943ddbda7", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}, {"type": "node", "name": "wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()", "source_mapping": {"start": 3437, "length": 75, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [80], "starting_column": 9, "ending_column": 84}, "type_specific_fields": {"parent": {"type": "function", "name": "migrateWallet", "source_mapping": {"start": 2858, "length": 1369, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "WalletDeployer", "source_mapping": {"start": 964, "length": 3265, "filename_used": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_relative": "../../contracts/walletDeployer.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/walletDeployer.sol", "filename_short": "../../contracts/walletDeployer.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[]) (../../contracts/walletDeployer.sol#65-104):\n\tExternal calls:\n\t- wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop() (../../contracts/walletDeployer.sol#80)\n\tEvent emitted after the call(s):\n\t- MigratedWallet(wallet,_oldWallet,_owner,msg.value) (../../contracts/walletDeployer.sol#81)\n", "markdown": "Reentrancy in [WalletDeployer.migrateWallet(address,Wallet,bool,bool,bool,bool,uint256,uint256,uint256,address[])](../../contracts/walletDeployer.sol#L65-L104):\n\tExternal calls:\n\t- [wallet = IWalletCache(_ensResolve(walletCacheNode)).walletCachePop()](../../contracts/walletDeployer.sol#L80)\n\tEvent emitted after the call(s):\n\t- [MigratedWallet(wallet,_oldWallet,_owner,msg.value)](../../contracts/walletDeployer.sol#L81)\n", "id": "3c09bd74201f7bfa242e35e1cd92e5d07392171b6edf5ae0436bbe0bd5c88d14", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39476, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [841], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#824-844):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#841)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#843)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L824-L844):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L841)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L843)\n", "id": "48a8d6500f2ae73e66f1d59c7ada3f8a64d52edb2029ba10136e4917cc323e9b", "check": "reentrancy-events", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 7120, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [185], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 7011, "length": 195, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [184, 185, 186, 187], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Controller", "source_mapping": {"start": 1460, "length": 5748, "filename_used": "/contracts/tools/slither/../../contracts/controller.sol", "filename_relative": "../../contracts/controller.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/controller.sol", "filename_short": "../../contracts/controller.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Controller.claim(address,address,uint256) (../../contracts/controller.sol#184-187):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/controller.sol#185)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/controller.sol#186)\n", "markdown": "Reentrancy in [Controller.claim(address,address,uint256)](../../contracts/controller.sol#L184-L187):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/controller.sol#L185)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/controller.sol#L186)\n", "id": "f3b1bb804b6e0637c9d0f95872ea5b209bf89f91ca774177d35ad56ba1dde407", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 9546, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [229], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 9448, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [228, 229, 230, 231], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Licence.claim(address,address,uint256) (../../contracts/licence.sol#228-231):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/licence.sol#229)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/licence.sol#230)\n", "markdown": "Reentrancy in [Licence.claim(address,address,uint256)](../../contracts/licence.sol#L228-L231):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/licence.sol#L229)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/licence.sol#L230)\n", "id": "5acfa120418c5a829b0b4f674255577d660452e82249a1eb2cdd74411915b9cf", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 12676, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [269], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "claim", "source_mapping": {"start": 12578, "length": 184, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [268, 269, 270, 271], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "TokenWhitelist", "source_mapping": {"start": 1939, "length": 14907, "filename_used": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_relative": "../../contracts/tokenWhitelist.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/tokenWhitelist.sol", "filename_short": "../../contracts/tokenWhitelist.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "claim(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in TokenWhitelist.claim(address,address,uint256) (../../contracts/tokenWhitelist.sol#268-271):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#269)\n\tEvent emitted after the call(s):\n\t- Claimed(_to,_asset,_amount) (../../contracts/tokenWhitelist.sol#270)\n", "markdown": "Reentrancy in [TokenWhitelist.claim(address,address,uint256)](../../contracts/tokenWhitelist.sol#L268-L271):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L269)\n\tEvent emitted after the call(s):\n\t- [Claimed(_to,_asset,_amount)](../../contracts/tokenWhitelist.sol#L270)\n", "id": "fb00aec0dfb5bdcba13a23a4427225ceef48db29f0d9006ddeb01c9ed84f0105", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}, {"type": "node", "name": "_tokenHolder.transfer(licenceAmount)", "source_mapping": {"start": 9062, "length": 36, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [217], "starting_column": 17, "ending_column": 53}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}, {"type": "node", "name": "_cryptoFloat.transfer(loadAmount)", "source_mapping": {"start": 9116, "length": 33, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [218], "starting_column": 17, "ending_column": 50}, "type_specific_fields": {"parent": {"type": "function", "name": "load", "source_mapping": {"start": 8272, "length": 1087, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Licence", "source_mapping": {"start": 1381, "length": 8954, "filename_used": "/contracts/tools/slither/../../contracts/licence.sol", "filename_relative": "../../contracts/licence.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/licence.sol", "filename_short": "../../contracts/licence.sol", "is_dependency": false, "lines": [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], "starting_column": 1, "ending_column": 2}}, "signature": "load(address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Licence.load(address,uint256) (../../contracts/licence.sol#203-225):\n\tExternal calls:\n\t- _tokenHolder.transfer(licenceAmount) (../../contracts/licence.sol#217)\n\t- _cryptoFloat.transfer(loadAmount) (../../contracts/licence.sol#218)\n\tEvent emitted after the call(s):\n\t- TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount) (../../contracts/licence.sol#221)\n\t- TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount) (../../contracts/licence.sol#224)\n", "markdown": "Reentrancy in [Licence.load(address,uint256)](../../contracts/licence.sol#L203-L225):\n\tExternal calls:\n\t- [_tokenHolder.transfer(licenceAmount)](../../contracts/licence.sol#L217)\n\t- [_cryptoFloat.transfer(loadAmount)](../../contracts/licence.sol#L218)\n\tEvent emitted after the call(s):\n\t- [TransferredToTokenHolder(msg.sender,_tokenHolder,_asset,licenceAmount)](../../contracts/licence.sol#L221)\n\t- [TransferredToCryptoFloat(msg.sender,_cryptoFloat,_asset,loadAmount)](../../contracts/licence.sol#L224)\n", "id": "6d0fd4c950083201dd8f60bbb293d33f5672a0629399c9827be2b962c755674d", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "topUpGas", "source_mapping": {"start": 30263, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}, {"type": "node", "name": "owner().transfer(_amount)", "source_mapping": {"start": 30562, "length": 25, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [676], "starting_column": 9, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "topUpGas", "source_mapping": {"start": 30263, "length": 425, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [672, 673, 674, 675, 676, 677, 678, 679], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "topUpGas(uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.topUpGas(uint256) (../../contracts/wallet.sol#672-679):\n\tExternal calls:\n\t- owner().transfer(_amount) (../../contracts/wallet.sol#676)\n\tEvent emitted after the call(s):\n\t- ToppedUpGas(msg.sender,owner(),_amount) (../../contracts/wallet.sol#678)\n", "markdown": "Reentrancy in [Wallet.topUpGas(uint256)](../../contracts/wallet.sol#L672-L679):\n\tExternal calls:\n\t- [owner().transfer(_amount)](../../contracts/wallet.sol#L676)\n\tEvent emitted after the call(s):\n\t- [ToppedUpGas(msg.sender,owner(),_amount)](../../contracts/wallet.sol#L678)\n", "id": "1bc35714f9df74871b7b945a2e8a275fa4b13f5edf0a6cca1696986db2232dd1", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}, {"type": "node", "name": "_safeTransfer(_to,_asset,_amount)", "source_mapping": {"start": 39476, "length": 35, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [841], "starting_column": 9, "ending_column": 44}, "type_specific_fields": {"parent": {"type": "function", "name": "transfer", "source_mapping": {"start": 38505, "length": 1097, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "transfer(address,address,uint256)"}}}, "additional_fields": {"underlying_type": "external_calls"}}], "description": "Reentrancy in Wallet.transfer(address,address,uint256) (../../contracts/wallet.sol#824-844):\n\tExternal calls:\n\t- _safeTransfer(_to,_asset,_amount) (../../contracts/wallet.sol#841)\n\tEvent emitted after the call(s):\n\t- Transferred(_to,_asset,_amount) (../../contracts/wallet.sol#843)\n", "markdown": "Reentrancy in [Wallet.transfer(address,address,uint256)](../../contracts/wallet.sol#L824-L844):\n\tExternal calls:\n\t- [_safeTransfer(_to,_asset,_amount)](../../contracts/wallet.sol#L841)\n\tEvent emitted after the call(s):\n\t- [Transferred(_to,_asset,_amount)](../../contracts/wallet.sol#L843)\n", "id": "48a8d6500f2ae73e66f1d59c7ada3f8a64d52edb2029ba10136e4917cc323e9b", "check": "reentrancy-unlimited-gas", "impact": "Informational", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "batchExecuteTransaction", "source_mapping": {"start": 31020, "length": 2016, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Wallet", "source_mapping": {"start": 22209, "length": 17395, "filename_used": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_relative": "../../contracts/wallet.sol", "filename_absolute": "/contracts/tools/slither/../../contracts/wallet.sol", "filename_short": "../../contracts/wallet.sol", "is_dependency": false, "lines": [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, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845], "starting_column": 1, "ending_column": 2}}, "signature": "batchExecuteTransaction(bytes)"}}], "description": "batchExecuteTransaction(bytes) should be declared external:\n\t- Wallet.batchExecuteTransaction(bytes) (../../contracts/wallet.sol#685-720)\n", "markdown": "batchExecuteTransaction(bytes) should be declared external:\n\t- [Wallet.batchExecuteTransaction(bytes)](../../contracts/wallet.sol#L685-L720)\n", "id": "25be393b22a852005aebc844d44187435f0cfff81e7632ced668dd912f0e2261", "check": "external-function", "impact": "Optimization", "confidence": "High"}] \ No newline at end of file