-
Notifications
You must be signed in to change notification settings - Fork 3
/
slither.db.json
1 lines (1 loc) · 143 KB
/
slither.db.json
1
[{"elements": [{"type": "function", "name": "_siphon", "source_mapping": {"start": 8762, "length": 452, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_siphon(address,address,address,uint16)"}}, {"type": "node", "name": "origins[old].add(old)", "source_mapping": {"start": 8926, "length": 21, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [258], "starting_column": 13, "ending_column": 34}, "type_specific_fields": {"parent": {"type": "function", "name": "_siphon", "source_mapping": {"start": 8762, "length": 452, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_siphon(address,address,address,uint16)"}}}}], "description": "RSR._siphon(address,address,address,uint16) (contracts/RSR.sol#251-267) ignores return value by origins[old].add(old) (contracts/RSR.sol#258)\n", "markdown": "[RSR._siphon(address,address,address,uint16)](contracts/RSR.sol#L251-L267) ignores return value by [origins[old].add(old)](contracts/RSR.sol#L258)\n", "first_markdown_element": "contracts/RSR.sol#L251-L267", "id": "73cc74ca1d1c726a5aaeb339e07e87c65c523a345273a15413fc10d73cbdf80a", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "_siphon", "source_mapping": {"start": 8762, "length": 452, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_siphon(address,address,address,uint16)"}}, {"type": "node", "name": "origins[to].add(old)", "source_mapping": {"start": 9187, "length": 20, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [266], "starting_column": 9, "ending_column": 29}, "type_specific_fields": {"parent": {"type": "function", "name": "_siphon", "source_mapping": {"start": 8762, "length": 452, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "_siphon(address,address,address,uint16)"}}}}], "description": "RSR._siphon(address,address,address,uint16) (contracts/RSR.sol#251-267) ignores return value by origins[to].add(old) (contracts/RSR.sol#266)\n", "markdown": "[RSR._siphon(address,address,address,uint16)](contracts/RSR.sol#L251-L267) ignores return value by [origins[to].add(old)](contracts/RSR.sol#L266)\n", "first_markdown_element": "contracts/RSR.sol#L251-L267", "id": "15b51443df0af19229e75414768abc902211b9bc6d4d7f2d4cd17a6927f838c4", "check": "unused-return", "impact": "Medium", "confidence": "Medium"}, {"elements": [{"type": "variable", "name": "name", "source_mapping": {"start": 1468, "length": 18, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [36], "starting_column": 17, "ending_column": 35}, "type_specific_fields": {"parent": {"type": "function", "name": "constructor", "source_mapping": {"start": 1456, "length": 52, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [36], "starting_column": 5, "ending_column": 57}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Permit", "source_mapping": {"start": 856, "length": 2099, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 1, "ending_column": 2}}, "signature": "constructor(string)"}}}}, {"type": "function", "name": "name", "source_mapping": {"start": 2141, "length": 98, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [62, 63, 64], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20", "source_mapping": {"start": 1388, "length": 10416, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 1, "ending_column": 2}}, "signature": "name()"}}, {"type": "function", "name": "name", "source_mapping": {"start": 377, "length": 54, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "is_dependency": true, "lines": [17], "starting_column": 5, "ending_column": 59}, "type_specific_fields": {"parent": {"type": "contract", "name": "IERC20Metadata", "source_mapping": {"start": 277, "length": 405, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "is_dependency": true, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28], "starting_column": 1, "ending_column": 2}}, "signature": "name()"}}], "description": "ERC20Permit.constructor(string).name (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#36) shadows:\n\t- ERC20.name() (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#62-64) (function)\n\t- IERC20Metadata.name() (node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#17) (function)\n", "markdown": "[ERC20Permit.constructor(string).name](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L36) shadows:\n\t- [ERC20.name()](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L62-L64) (function)\n\t- [IERC20Metadata.name()](node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L17) (function)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L36", "id": "1f85c0fac855acf8d2d6992ee89e0b0ee24104b934a28808f04d68e95041b471", "check": "shadowing-local", "impact": "Low", "confidence": "High"}, {"elements": [{"type": "variable", "name": "owner", "source_mapping": {"start": 6672, "length": 13, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [191], "starting_column": 9, "ending_column": 22}, "type_specific_fields": {"parent": {"type": "function", "name": "permit", "source_mapping": {"start": 6647, "length": 332, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)"}}}}, {"type": "function", "name": "owner", "source_mapping": {"start": 1036, "length": 85, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [35, 36, 37], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Ownable", "source_mapping": {"start": 639, "length": 1820, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76], "starting_column": 1, "ending_column": 2}}, "signature": "owner()"}}], "description": "RSR.permit(address,address,uint256,uint256,uint8,bytes32,bytes32).owner (contracts/RSR.sol#191) shadows:\n\t- Ownable.owner() (node_modules/@openzeppelin/contracts/access/Ownable.sol#35-37) (function)\n", "markdown": "[RSR.permit(address,address,uint256,uint256,uint8,bytes32,bytes32).owner](contracts/RSR.sol#L191) shadows:\n\t- [Ownable.owner()](node_modules/@openzeppelin/contracts/access/Ownable.sol#L35-L37) (function)\n", "first_markdown_element": "contracts/RSR.sol#L191", "id": "b7ed8c3ee44e56524f9570fb962979dd36a7fb162dd3bbcb247acc7e62b5d25e", "check": "shadowing-local", "impact": "Low", "confidence": "High"}, {"elements": [{"type": "variable", "name": "owner", "source_mapping": {"start": 8108, "length": 13, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [237], "starting_column": 24, "ending_column": 37}, "type_specific_fields": {"parent": {"type": "function", "name": "allowance", "source_mapping": {"start": 8089, "length": 256, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [237, 238, 239, 240, 241, 242], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "allowance(address,address)"}}}}, {"type": "function", "name": "owner", "source_mapping": {"start": 1036, "length": 85, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [35, 36, 37], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Ownable", "source_mapping": {"start": 639, "length": 1820, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76], "starting_column": 1, "ending_column": 2}}, "signature": "owner()"}}], "description": "RSR.allowance(address,address).owner (contracts/RSR.sol#237) shadows:\n\t- Ownable.owner() (node_modules/@openzeppelin/contracts/access/Ownable.sol#35-37) (function)\n", "markdown": "[RSR.allowance(address,address).owner](contracts/RSR.sol#L237) shadows:\n\t- [Ownable.owner()](node_modules/@openzeppelin/contracts/access/Ownable.sol#L35-L37) (function)\n", "first_markdown_element": "contracts/RSR.sol#L237", "id": "228a756c7f98c7cf8be56d75bd998a12753d93209ef447c7ebb6b55301d92d3b", "check": "shadowing-local", "impact": "Low", "confidence": "High"}, {"elements": [{"type": "variable", "name": "r", "source_mapping": {"start": 2577, "length": 9, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [62], "starting_column": 13, "ending_column": 22}, "type_specific_fields": {"parent": {"type": "function", "name": "tryRecover", "source_mapping": {"start": 2228, "length": 1279, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes)"}}}}, {"type": "function", "name": "tryRecover", "source_mapping": {"start": 2228, "length": 1279, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes)"}}, {"type": "node", "name": "r = mload(uint256)(signature + 0x20)", "source_mapping": {"start": 3264, "length": 32, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [79], "starting_column": 17, "ending_column": 49}, "type_specific_fields": {"parent": {"type": "function", "name": "tryRecover", "source_mapping": {"start": 2228, "length": 1279, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes)"}}}}], "description": "Variable 'ECDSA.tryRecover(bytes32,bytes).r (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#62)' in ECDSA.tryRecover(bytes32,bytes) (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#57-86) potentially used before declaration: r = mload(uint256)(signature + 0x20) (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#79)\n", "markdown": "Variable '[ECDSA.tryRecover(bytes32,bytes).r](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L62)' in [ECDSA.tryRecover(bytes32,bytes)](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L57-L86) potentially used before declaration: [r = mload(uint256)(signature + 0x20)](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L79)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L62", "id": "10fadebc9594768c367651e13ad77e5290f5cff538571cfb418e4bf294f418e8", "check": "variable-scope", "impact": "Low", "confidence": "High"}, {"elements": [{"type": "function", "name": "permit", "source_mapping": {"start": 1569, "length": 626, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Permit", "source_mapping": {"start": 856, "length": 2099, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 1, "ending_column": 2}}, "signature": "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)"}}, {"type": "node", "name": "require(bool,string)(block.timestamp <= deadline,ERC20Permit: expired deadline)", "source_mapping": {"start": 1777, "length": 69, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [50], "starting_column": 9, "ending_column": 78}, "type_specific_fields": {"parent": {"type": "function", "name": "permit", "source_mapping": {"start": 1569, "length": 626, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Permit", "source_mapping": {"start": 856, "length": 2099, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 1, "ending_column": 2}}, "signature": "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)"}}}}], "description": "ERC20Permit.permit(address,address,uint256,uint256,uint8,bytes32,bytes32) (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#41-60) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- require(bool,string)(block.timestamp <= deadline,ERC20Permit: expired deadline) (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#50)\n", "markdown": "[ERC20Permit.permit(address,address,uint256,uint256,uint8,bytes32,bytes32)](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L41-L60) uses timestamp for comparisons\n\tDangerous comparisons:\n\t- [require(bool,string)(block.timestamp <= deadline,ERC20Permit: expired deadline)](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L50)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L41-L60", "id": "18f751fa754d431c5dbeb33cd46713bc5b692ba8d7d46d44187dd0ae4e2c4758", "check": "timestamp", "impact": "Low", "confidence": "Medium"}, {"elements": [{"type": "function", "name": "tryRecover", "source_mapping": {"start": 2228, "length": 1279, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes)"}}, {"type": "node", "name": "", "source_mapping": {"start": 2775, "length": 180, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [67, 68, 69, 70, 71], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "tryRecover", "source_mapping": {"start": 2228, "length": 1279, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes)"}}}}, {"type": "node", "name": "", "source_mapping": {"start": 3237, "length": 123, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [78, 79, 80, 81], "starting_column": 13, "ending_column": 14}, "type_specific_fields": {"parent": {"type": "function", "name": "tryRecover", "source_mapping": {"start": 2228, "length": 1279, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes)"}}}}], "description": "ECDSA.tryRecover(bytes32,bytes) (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#57-86) uses assembly\n\t- INLINE ASM (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#67-71)\n\t- INLINE ASM (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#78-81)\n", "markdown": "[ECDSA.tryRecover(bytes32,bytes)](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L57-L86) uses assembly\n\t- [INLINE ASM](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L67-L71)\n\t- [INLINE ASM](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L78-L81)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L57-L86", "id": "5bf401391a7793d738dd1fd7b6a6db3d4525d9e4e2dcb06655423667db0fde11", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "tryRecover", "source_mapping": {"start": 4774, "length": 379, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes32,bytes32)"}}, {"type": "node", "name": "", "source_mapping": {"start": 4953, "length": 152, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [122, 123, 124, 125], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "tryRecover", "source_mapping": {"start": 4774, "length": 379, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ECDSA", "source_mapping": {"start": 354, "length": 8967, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "tryRecover(bytes32,bytes32,bytes32)"}}}}], "description": "ECDSA.tryRecover(bytes32,bytes32,bytes32) (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#115-127) uses assembly\n\t- INLINE ASM (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#122-125)\n", "markdown": "[ECDSA.tryRecover(bytes32,bytes32,bytes32)](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L115-L127) uses assembly\n\t- [INLINE ASM](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L122-L125)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L115-L127", "id": "ba5796978c42d1204bbe583bbd52134899224233d8e329730255e59d22e85fcf", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "values", "source_mapping": {"start": 9566, "length": 257, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "EnumerableSet", "source_mapping": {"start": 812, "length": 11368, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 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], "starting_column": 1, "ending_column": 2}}, "signature": "values(EnumerableSet.AddressSet)"}}, {"type": "node", "name": "", "source_mapping": {"start": 9745, "length": 48, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [278, 279, 280], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "values", "source_mapping": {"start": 9566, "length": 257, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [274, 275, 276, 277, 278, 279, 280, 281, 282, 283], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "EnumerableSet", "source_mapping": {"start": 812, "length": 11368, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 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], "starting_column": 1, "ending_column": 2}}, "signature": "values(EnumerableSet.AddressSet)"}}}}], "description": "EnumerableSet.values(EnumerableSet.AddressSet) (node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#274-283) uses assembly\n\t- INLINE ASM (node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#278-280)\n", "markdown": "[EnumerableSet.values(EnumerableSet.AddressSet)](node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L274-L283) uses assembly\n\t- [INLINE ASM](node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L278-L280)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L274-L283", "id": "92768c788b553cb7021fee3b032c59fb8bc8b42e9da60e5699cb5d34387de8e2", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "values", "source_mapping": {"start": 11924, "length": 254, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "EnumerableSet", "source_mapping": {"start": 812, "length": 11368, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 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], "starting_column": 1, "ending_column": 2}}, "signature": "values(EnumerableSet.UintSet)"}}, {"type": "node", "name": "", "source_mapping": {"start": 12100, "length": 48, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [351, 352, 353], "starting_column": 9, "ending_column": 10}, "type_specific_fields": {"parent": {"type": "function", "name": "values", "source_mapping": {"start": 11924, "length": 254, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "EnumerableSet", "source_mapping": {"start": 812, "length": 11368, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 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], "starting_column": 1, "ending_column": 2}}, "signature": "values(EnumerableSet.UintSet)"}}}}], "description": "EnumerableSet.values(EnumerableSet.UintSet) (node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#347-356) uses assembly\n\t- INLINE ASM (node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#351-353)\n", "markdown": "[EnumerableSet.values(EnumerableSet.UintSet)](node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L347-L356) uses assembly\n\t- [INLINE ASM](node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L351-L353)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L347-L356", "id": "beae9b3e6cd0617a5f8fd8536f7a8c9cc09e0d5fbf3d29faebc248766dfda384", "check": "assembly", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 87, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 90, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 91, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 110, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 113, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 114, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 86, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Context.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 87, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Counters.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/Counters.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Counters.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Counters.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 86, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Strings.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/Strings.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Strings.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Strings.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 97, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 104, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 100, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}, {"type": "pragma", "name": "0.8.4", "source_mapping": {"start": 42, "length": 22, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/IOldRSR.sol", "filename_relative": "contracts/IOldRSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/IOldRSR.sol", "filename_short": "contracts/IOldRSR.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 23}, "type_specific_fields": {"directive": ["solidity", "0.8", ".4"]}}, {"type": "pragma", "name": "0.8.4", "source_mapping": {"start": 42, "length": 22, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [2], "starting_column": 1, "ending_column": 23}, "type_specific_fields": {"directive": ["solidity", "0.8", ".4"]}}], "description": "Different versions of Solidity is used:\n\t- Version used: ['0.8.4', '^0.8.0']\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/access/Ownable.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/Context.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/Counters.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/Strings.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#4)\n\t- ^0.8.0 (node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#4)\n\t- 0.8.4 (contracts/IOldRSR.sol#2)\n\t- 0.8.4 (contracts/RSR.sol#2)\n", "markdown": "Different versions of Solidity is used:\n\t- Version used: ['0.8.4', '^0.8.0']\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/access/Ownable.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/Context.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/Counters.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/Strings.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L4)\n\t- [^0.8.0](node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L4)\n\t- [0.8.4](contracts/IOldRSR.sol#L2)\n\t- [0.8.4](contracts/RSR.sol#L2)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/access/Ownable.sol#L4", "id": "413a46f5d422d89684d23ebef048d3ce924ecea058bc4eb82043250527882c1b", "check": "pragma", "impact": "Informational", "confidence": "High"}, {"elements": [], "description": "solc-0.4.24 is not recommended for deployment\n", "markdown": "solc-0.4.24 is not recommended for deployment\n", "first_markdown_element": "", "id": "4fdaa1943fda7c6196f21cde2a89972a5de2e49314548f4161996d6ef6af4a38", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 87, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/access/Ownable.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/access/Ownable.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/access/Ownable.sol#L4", "id": "d9fcf15f6c48db746fe8b4b5b79cadf5dc4cde499aed490b6b22d0f93b6cdddd", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 90, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L4", "id": "9d8a804f21d9bda1c90bbe4177baae5a4bfe61bc990c3ffec1a5cb063264dce7", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 91, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol#L4", "id": "851a3cc70cf5a0e84cea60ba82f675bc668a61dfc08f0b82199206a5fbafb3b4", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 110, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol#L4", "id": "0ac7c62454421eba41ad4bc7f77cc11d95ff2e283def53e5f32dd991137af888", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 113, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L4", "id": "53b091a2d54318260dcd275f6a8849ebed779d7a7d13d1b2ce91930c6225f19b", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 114, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#L4", "id": "0e9d43b95f7dace4a9f685e655540c00bca0d928920120f4c2becf8264ae6461", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 86, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Context.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Context.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/Context.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/Context.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/Context.sol#L4", "id": "21c670e40e414a2f849413afbbdb25adb81dae6585c4f38fc83730c17377e60f", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 87, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Counters.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/Counters.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Counters.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Counters.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/Counters.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/Counters.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/Counters.sol#L4", "id": "833c66ce7f52d0f775c7a2eefef742d581ed1692ac758436e22f77ceeb7c72be", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 86, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Strings.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/Strings.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/Strings.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/Strings.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/Strings.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/Strings.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/Strings.sol#L4", "id": "39bb6de244e9d295e9aa6c566b0b6e8f01ba481f4efc9e16952394697f339857", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 97, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/ECDSA.sol#L4", "id": "06845140c4de83a67b7ea1fa3eefa5eaca6813a74e80720101c31e3c3af14ffc", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 104, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L4", "id": "91ec726259a2ca1d633bb57252a1e65b2e789a4ab0908fe49bf034623240d5a6", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "pragma", "name": "^0.8.0", "source_mapping": {"start": 100, "length": 23, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol", "is_dependency": true, "lines": [4], "starting_column": 1, "ending_column": 24}, "type_specific_fields": {"directive": ["solidity", "^", "0.8", ".0"]}}], "description": "Pragma version^0.8.0 (node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#4) allows old versions\n", "markdown": "Pragma version[^0.8.0](node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L4) allows old versions\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/structs/EnumerableSet.sol#L4", "id": "3c01f331e3dfa105fde30f65b0b79315c2e25fb1ba6bf7c33f433dabea1f1f07", "check": "solc-version", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "DOMAIN_SEPARATOR", "source_mapping": {"start": 2506, "length": 113, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [73, 74, 75], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Permit", "source_mapping": {"start": 856, "length": 2099, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 1, "ending_column": 2}}, "signature": "DOMAIN_SEPARATOR()"}, "additional_fields": {"target": "function", "convention": "mixedCase"}}], "description": "Function ERC20Permit.DOMAIN_SEPARATOR() (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#73-75) is not in mixedCase\n", "markdown": "Function [ERC20Permit.DOMAIN_SEPARATOR()](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L73-L75) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L73-L75", "id": "ae3f36aabe9ce571b2d0bac868aa8ddd745117bd041ef8300b9798601ba580ca", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_PERMIT_TYPEHASH", "source_mapping": {"start": 1076, "length": 148, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [28, 29], "starting_column": 5, "ending_column": 104}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Permit", "source_mapping": {"start": 856, "length": 2099, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable ERC20Permit._PERMIT_TYPEHASH (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#28-29) is not in mixedCase\n", "markdown": "Variable [ERC20Permit._PERMIT_TYPEHASH](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L28-L29) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L28-L29", "id": "849b223a12c75566f7fe45f0e73826dd83d7c54c145039cf8e3dbf9413da1139", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "DOMAIN_SEPARATOR", "source_mapping": {"start": 2189, "length": 60, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "is_dependency": true, "lines": [59], "starting_column": 5, "ending_column": 65}, "type_specific_fields": {"parent": {"type": "contract", "name": "IERC20Permit", "source_mapping": {"start": 620, "length": 1631, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol", "is_dependency": true, "lines": [14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60], "starting_column": 1, "ending_column": 2}}, "signature": "DOMAIN_SEPARATOR()"}, "additional_fields": {"target": "function", "convention": "mixedCase"}}], "description": "Function IERC20Permit.DOMAIN_SEPARATOR() (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#59) is not in mixedCase\n", "markdown": "Function [IERC20Permit.DOMAIN_SEPARATOR()](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#L59) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol#L59", "id": "9a77c79a6cf40e2f151723e49ba63d30100a56d0f72688e58cdf4a550a6ff843", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_CACHED_DOMAIN_SEPARATOR", "source_mapping": {"start": 1563, "length": 50, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [31], "starting_column": 5, "ending_column": 55}, "type_specific_fields": {"parent": {"type": "contract", "name": "EIP712", "source_mapping": {"start": 1295, "length": 3211, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "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], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable EIP712._CACHED_DOMAIN_SEPARATOR (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#31) is not in mixedCase\n", "markdown": "Variable [EIP712._CACHED_DOMAIN_SEPARATOR](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L31) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L31", "id": "f27ba4adb32b59400d073508894d8fb5ef55f3fccd5dab06bbf2cf9e1039544c", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_CACHED_CHAIN_ID", "source_mapping": {"start": 1619, "length": 42, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [32], "starting_column": 5, "ending_column": 47}, "type_specific_fields": {"parent": {"type": "contract", "name": "EIP712", "source_mapping": {"start": 1295, "length": 3211, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "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], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable EIP712._CACHED_CHAIN_ID (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#32) is not in mixedCase\n", "markdown": "Variable [EIP712._CACHED_CHAIN_ID](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L32) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L32", "id": "a97e63161ef623acbdd63f7c538558da3533514f45901fc0f6063906a6894e7a", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_CACHED_THIS", "source_mapping": {"start": 1667, "length": 38, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [33], "starting_column": 5, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "contract", "name": "EIP712", "source_mapping": {"start": 1295, "length": 3211, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "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], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable EIP712._CACHED_THIS (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#33) is not in mixedCase\n", "markdown": "Variable [EIP712._CACHED_THIS](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L33) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L33", "id": "8b510e0c839539a1d34ab204af0ce868c8f93613e56cf050b6107c0d1bef0727", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_HASHED_NAME", "source_mapping": {"start": 1712, "length": 38, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [35], "starting_column": 5, "ending_column": 43}, "type_specific_fields": {"parent": {"type": "contract", "name": "EIP712", "source_mapping": {"start": 1295, "length": 3211, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "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], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable EIP712._HASHED_NAME (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#35) is not in mixedCase\n", "markdown": "Variable [EIP712._HASHED_NAME](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L35) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L35", "id": "d95962ad9105e420535beef6f8adb2aef63294fd7b915e33fcc542c62ef06551", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_HASHED_VERSION", "source_mapping": {"start": 1756, "length": 41, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [36], "starting_column": 5, "ending_column": 46}, "type_specific_fields": {"parent": {"type": "contract", "name": "EIP712", "source_mapping": {"start": 1295, "length": 3211, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "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], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable EIP712._HASHED_VERSION (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#36) is not in mixedCase\n", "markdown": "Variable [EIP712._HASHED_VERSION](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L36) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L36", "id": "fa2d3018dd91feb3af39c2059f0ca8ab593b4673bb691dcf3117bd6db96f57b9", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "variable", "name": "_TYPE_HASH", "source_mapping": {"start": 1803, "length": 36, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "lines": [37], "starting_column": 5, "ending_column": 41}, "type_specific_fields": {"parent": {"type": "contract", "name": "EIP712", "source_mapping": {"start": 1295, "length": 3211, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_relative": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "filename_short": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol", "is_dependency": true, "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], "starting_column": 1, "ending_column": 2}}}, "additional_fields": {"target": "variable", "convention": "mixedCase"}}], "description": "Variable EIP712._TYPE_HASH (node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#37) is not in mixedCase\n", "markdown": "Variable [EIP712._TYPE_HASH](node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L37) is not in mixedCase\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol#L37", "id": "6be82984523d5470fd96feaf305daa098dfccddbff02f47c7369a681372e36e6", "check": "naming-convention", "impact": "Informational", "confidence": "High"}, {"elements": [{"type": "function", "name": "renounceOwnership", "source_mapping": {"start": 1668, "length": 101, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [54, 55, 56], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Ownable", "source_mapping": {"start": 639, "length": 1820, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76], "starting_column": 1, "ending_column": 2}}, "signature": "renounceOwnership()"}}], "description": "renounceOwnership() should be declared external:\n\t- Ownable.renounceOwnership() (node_modules/@openzeppelin/contracts/access/Ownable.sol#54-56)\n", "markdown": "renounceOwnership() should be declared external:\n\t- [Ownable.renounceOwnership()](node_modules/@openzeppelin/contracts/access/Ownable.sol#L54-L56)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/access/Ownable.sol#L54-L56", "id": "288c51bcb39db765d4e0e44c118ec8f64557cbb93ab64affe72bf276525f3ca4", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "transferOwnership", "source_mapping": {"start": 1918, "length": 198, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [62, 63, 64, 65], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "Ownable", "source_mapping": {"start": 639, "length": 1820, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_relative": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/access/Ownable.sol", "filename_short": "node_modules/@openzeppelin/contracts/access/Ownable.sol", "is_dependency": true, "lines": [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76], "starting_column": 1, "ending_column": 2}}, "signature": "transferOwnership(address)"}}], "description": "transferOwnership(address) should be declared external:\n\t- Ownable.transferOwnership(address) (node_modules/@openzeppelin/contracts/access/Ownable.sol#62-65)\n", "markdown": "transferOwnership(address) should be declared external:\n\t- [Ownable.transferOwnership(address)](node_modules/@openzeppelin/contracts/access/Ownable.sol#L62-L65)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/access/Ownable.sol#L62-L65", "id": "8e314f2a323babe2cac9b74075db6feca763f3d608c292445109dfc6938d81f5", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "name", "source_mapping": {"start": 2141, "length": 98, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [62, 63, 64], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20", "source_mapping": {"start": 1388, "length": 10416, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 1, "ending_column": 2}}, "signature": "name()"}}], "description": "name() should be declared external:\n\t- ERC20.name() (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#62-64)\n", "markdown": "name() should be declared external:\n\t- [ERC20.name()](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L62-L64)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L62-L64", "id": "9dfc73be5a25e563bdfa930030a68030ca2fc233e007152b4d60eec5fb57a7b4", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "symbol", "source_mapping": {"start": 2352, "length": 102, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [70, 71, 72], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20", "source_mapping": {"start": 1388, "length": 10416, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 1, "ending_column": 2}}, "signature": "symbol()"}}], "description": "symbol() should be declared external:\n\t- ERC20.symbol() (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#70-72)\n", "markdown": "symbol() should be declared external:\n\t- [ERC20.symbol()](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L70-L72)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L70-L72", "id": "641056a7d4219063aa0f9a27e68b3b28c94bb0c2ab6bdb37054fc8964e3dc097", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "decimals", "source_mapping": {"start": 3078, "length": 91, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [87, 88, 89], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20", "source_mapping": {"start": 1388, "length": 10416, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 1, "ending_column": 2}}, "signature": "decimals()"}}], "description": "decimals() should be declared external:\n\t- ERC20.decimals() (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#87-89)\n", "markdown": "decimals() should be declared external:\n\t- [ERC20.decimals()](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L87-L89)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L87-L89", "id": "49b6b450a24d229fd5e9b216f584b93ec01464028359cc59e9aa3b25857b9b94", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "totalSupply", "source_mapping": {"start": 3229, "length": 106, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [94, 95, 96], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20", "source_mapping": {"start": 1388, "length": 10416, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 1, "ending_column": 2}}, "signature": "totalSupply()"}}, {"type": "function", "name": "totalSupply", "source_mapping": {"start": 7587, "length": 97, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [224, 225, 226], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "totalSupply()"}}], "description": "totalSupply() should be declared external:\n\t- ERC20.totalSupply() (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#94-96)\n\t- RSR.totalSupply() (contracts/RSR.sol#224-226)\n", "markdown": "totalSupply() should be declared external:\n\t- [ERC20.totalSupply()](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L94-L96)\n\t- [RSR.totalSupply()](contracts/RSR.sol#L224-L226)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L94-L96", "id": "412a21ff4c5a167ef696da87776551c692e1608fcb57b1b2645c66d6955c48f7", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "approve", "source_mapping": {"start": 4238, "length": 166, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [132, 133, 134, 135], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20", "source_mapping": {"start": 1388, "length": 10416, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol", "is_dependency": true, "lines": [35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356], "starting_column": 1, "ending_column": 2}}, "signature": "approve(address,uint256)"}}, {"type": "function", "name": "approve", "source_mapping": {"start": 6376, "length": 265, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [179, 180, 181, 182, 183, 184, 185, 186, 187, 188], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "RSR", "source_mapping": {"start": 379, "length": 9389, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_relative": "contracts/RSR.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/contracts/RSR.sol", "filename_short": "contracts/RSR.sol", "is_dependency": false, "lines": [13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 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], "starting_column": 1, "ending_column": 2}}, "signature": "approve(address,uint256)"}}], "description": "approve(address,uint256) should be declared external:\n\t- ERC20.approve(address,uint256) (node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#132-135)\n\t- RSR.approve(address,uint256) (contracts/RSR.sol#179-188)\n", "markdown": "approve(address,uint256) should be declared external:\n\t- [ERC20.approve(address,uint256)](node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L132-L135)\n\t- [RSR.approve(address,uint256)](contracts/RSR.sol#L179-L188)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/ERC20.sol#L132-L135", "id": "098ca707cb82d928ac0aed29f5972ed252bf5def9407b146615f08ff8c74584f", "check": "external-function", "impact": "Optimization", "confidence": "High"}, {"elements": [{"type": "function", "name": "nonces", "source_mapping": {"start": 2256, "length": 126, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [65, 66, 67], "starting_column": 5, "ending_column": 6}, "type_specific_fields": {"parent": {"type": "contract", "name": "ERC20Permit", "source_mapping": {"start": 856, "length": 2099, "filename_used": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_relative": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_absolute": "/Users/fiddle/reserve/rsr-mainnet/node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "filename_short": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol", "is_dependency": true, "lines": [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87], "starting_column": 1, "ending_column": 2}}, "signature": "nonces(address)"}}], "description": "nonces(address) should be declared external:\n\t- ERC20Permit.nonces(address) (node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#65-67)\n", "markdown": "nonces(address) should be declared external:\n\t- [ERC20Permit.nonces(address)](node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L65-L67)\n", "first_markdown_element": "node_modules/@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol#L65-L67", "id": "978299c014b5a5ab9cbbc27ef8e7b1fdbab8066353ef90e8fd2bcf546a76f7e1", "check": "external-function", "impact": "Optimization", "confidence": "High"}]