UNPKG

@etherisc/depeg-contracts

Version:

Etherisc's smart contracts for a depeg insurance for stable coins.

1,183 lines 125 kB
{ "abi": [], "allSourcePaths": { "12": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/Strings.sol" }, "ast": { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/Strings.sol", "exportedSymbols": { "Strings": [ 16154 ] }, "id": 16155, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 15930, "literals": [ "solidity", "^", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "101:23:12" }, { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "library", "documentation": { "id": 15931, "nodeType": "StructuredDocumentation", "src": "126:34:12", "text": " @dev String operations." }, "fullyImplemented": true, "id": 16154, "linearizedBaseContracts": [ 16154 ], "name": "Strings", "nameLocation": "169:7:12", "nodeType": "ContractDefinition", "nodes": [ { "constant": true, "id": 15934, "mutability": "constant", "name": "_HEX_SYMBOLS", "nameLocation": "208:12:12", "nodeType": "VariableDeclaration", "scope": 16154, "src": "183:58:12", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes16", "typeString": "bytes16" }, "typeName": { "id": 15932, "name": "bytes16", "nodeType": "ElementaryTypeName", "src": "183:7:12", "typeDescriptions": { "typeIdentifier": "t_bytes16", "typeString": "bytes16" } }, "value": { "hexValue": "30313233343536373839616263646566", "id": 15933, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "223:18:12", "typeDescriptions": { "typeIdentifier": "t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f", "typeString": "literal_string \"0123456789abcdef\"" }, "value": "0123456789abcdef" }, "visibility": "private" }, { "constant": true, "id": 15937, "mutability": "constant", "name": "_ADDRESS_LENGTH", "nameLocation": "270:15:12", "nodeType": "VariableDeclaration", "scope": 16154, "src": "247:43:12", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" }, "typeName": { "id": 15935, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "247:5:12", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "value": { "hexValue": "3230", "id": 15936, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "288:2:12", "typeDescriptions": { "typeIdentifier": "t_rational_20_by_1", "typeString": "int_const 20" }, "value": "20" }, "visibility": "private" }, { "body": { "id": 16015, "nodeType": "Block", "src": "463:632:12", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15947, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15945, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15940, "src": "665:5:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "hexValue": "30", "id": 15946, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "674:1:12", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "665:10:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 15951, "nodeType": "IfStatement", "src": "661:51:12", "trueBody": { "id": 15950, "nodeType": "Block", "src": "677:35:12", "statements": [ { "expression": { "hexValue": "30", "id": 15948, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "698:3:12", "typeDescriptions": { "typeIdentifier": "t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d", "typeString": "literal_string \"0\"" }, "value": "0" }, "functionReturnParameters": 15944, "id": 15949, "nodeType": "Return", "src": "691:10:12" } ] } }, { "assignments": [ 15953 ], "declarations": [ { "constant": false, "id": 15953, "mutability": "mutable", "name": "temp", "nameLocation": "729:4:12", "nodeType": "VariableDeclaration", "scope": 16015, "src": "721:12:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15952, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "721:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 15955, "initialValue": { "id": 15954, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15940, "src": "736:5:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "721:20:12" }, { "assignments": [ 15957 ], "declarations": [ { "constant": false, "id": 15957, "mutability": "mutable", "name": "digits", "nameLocation": "759:6:12", "nodeType": "VariableDeclaration", "scope": 16015, "src": "751:14:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15956, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "751:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 15958, "nodeType": "VariableDeclarationStatement", "src": "751:14:12" }, { "body": { "id": 15969, "nodeType": "Block", "src": "793:57:12", "statements": [ { "expression": { "id": 15963, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "++", "prefix": false, "src": "807:8:12", "subExpression": { "id": 15962, "name": "digits", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15957, "src": "807:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 15964, "nodeType": "ExpressionStatement", "src": "807:8:12" }, { "expression": { "id": 15967, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 15965, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15953, "src": "829:4:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "/=", "rightHandSide": { "hexValue": "3130", "id": 15966, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "837:2:12", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" }, "value": "10" }, "src": "829:10:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 15968, "nodeType": "ExpressionStatement", "src": "829:10:12" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15961, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15959, "name": "temp", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15953, "src": "782:4:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 15960, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "790:1:12", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "782:9:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 15970, "nodeType": "WhileStatement", "src": "775:75:12" }, { "assignments": [ 15972 ], "declarations": [ { "constant": false, "id": 15972, "mutability": "mutable", "name": "buffer", "nameLocation": "872:6:12", "nodeType": "VariableDeclaration", "scope": 16015, "src": "859:19:12", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 15971, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "859:5:12", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "id": 15977, "initialValue": { "arguments": [ { "id": 15975, "name": "digits", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15957, "src": "891:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 15974, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "NewExpression", "src": "881:9:12", "typeDescriptions": { "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", "typeString": "function (uint256) pure returns (bytes memory)" }, "typeName": { "id": 15973, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "885:5:12", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } } }, "id": 15976, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "881:17:12", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "nodeType": "VariableDeclarationStatement", "src": "859:39:12" }, { "body": { "id": 16008, "nodeType": "Block", "src": "927:131:12", "statements": [ { "expression": { "id": 15983, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 15981, "name": "digits", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15957, "src": "941:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "-=", "rightHandSide": { "hexValue": "31", "id": 15982, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "951:1:12", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "src": "941:11:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 15984, "nodeType": "ExpressionStatement", "src": "941:11:12" }, { "expression": { "id": 16002, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "baseExpression": { "id": 15985, "name": "buffer", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15972, "src": "966:6:12", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } }, "id": 15987, "indexExpression": { "id": 15986, "name": "digits", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15957, "src": "973:6:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", "src": "966:14:12", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15999, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "3438", "id": 15992, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "996:2:12", "typeDescriptions": { "typeIdentifier": "t_rational_48_by_1", "typeString": "int_const 48" }, "value": "48" }, "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15997, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15995, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15940, "src": "1009:5:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { "hexValue": "3130", "id": 15996, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1017:2:12", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" }, "value": "10" }, "src": "1009:10:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 15994, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1001:7:12", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 15993, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1001:7:12", "typeDescriptions": {} } }, "id": 15998, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1001:19:12", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "996:24:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 15991, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "990:5:12", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint8_$", "typeString": "type(uint8)" }, "typeName": { "id": 15990, "name": "uint8", "nodeType": "ElementaryTypeName", "src": "990:5:12", "typeDescriptions": {} } }, "id": 16000, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "990:31:12", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint8", "typeString": "uint8" } ], "id": 15989, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "983:6:12", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes1_$", "typeString": "type(bytes1)" }, "typeName": { "id": 15988, "name": "bytes1", "nodeType": "ElementaryTypeName", "src": "983:6:12", "typeDescriptions": {} } }, "id": 16001, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "983:39:12", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "src": "966:56:12", "typeDescriptions": { "typeIdentifier": "t_bytes1", "typeString": "bytes1" } }, "id": 16003, "nodeType": "ExpressionStatement", "src": "966:56:12" }, { "expression": { "id": 16006, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 16004, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15940, "src": "1036:5:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "/=", "rightHandSide": { "hexValue": "3130", "id": 16005, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1045:2:12", "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" }, "value": "10" }, "src": "1036:11:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 16007, "nodeType": "ExpressionStatement", "src": "1036:11:12" } ] }, "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 15980, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 15978, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15940, "src": "915:5:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 15979, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "924:1:12", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "915:10:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 16009, "nodeType": "WhileStatement", "src": "908:150:12" }, { "expression": { "arguments": [ { "id": 16012, "name": "buffer", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 15972, "src": "1081:6:12", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" } ], "id": 16011, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1074:6:12", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": { "id": 16010, "name": "string", "nodeType": "ElementaryTypeName", "src": "1074:6:12", "typeDescriptions": {} } }, "id": 16013, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1074:14:12", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "functionReturnParameters": 15944, "id": 16014, "nodeType": "Return", "src": "1067:21:12" } ] }, "documentation": { "id": 15938, "nodeType": "StructuredDocumentation", "src": "297:90:12", "text": " @dev Converts a `uint256` to its ASCII `string` decimal representation." }, "id": 16016, "implemented": true, "kind": "function", "modifiers": [], "name": "toString", "nameLocation": "401:8:12", "nodeType": "FunctionDefinition", "parameters": { "id": 15941, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15940, "mutability": "mutable", "name": "value", "nameLocation": "418:5:12", "nodeType": "VariableDeclaration", "scope": 16016, "src": "410:13:12", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 15939, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "410:7:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "409:15:12" }, "returnParameters": { "id": 15944, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 15943, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 16016, "src": "448:13:12", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 15942, "name": "string", "nodeType": "ElementaryTypeName", "src": "448:6:12", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "visibility": "internal" } ], "src": "447:15:12" }, "scope": 16154, "src": "392:703:12", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "body": { "id": 16056, "nodeType": "Block", "src": "1274:255:12", "statements": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 16026, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 16024, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 16019, "src": "1288:5:12", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "hexValue": "30", "id": 16025, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1297:1:12", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1288:10:12", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 16030, "nodeType": "IfStatement", "src": "1284:54:12", "trueBody": { "id": 16029, "nodeType": "Block", "src": "1300:38:12", "statements": [ { "expression": { "hexValue": "30783030", "id": 16027, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1321:6:12", "typeDescriptions": { "typeIdentifier": "t_stringliteral_27489e20a0060b723a1748bdff5e44570ee9fa