```\nfunction toHexString(uint256 value) internal pure returns (string memory) {\n    if (value == 0) {\n        return "0x00";\n    }\n    uint256 temp = value;\n    uint256 length = 0;\n    while (temp != 0) {\n        length++;\n        temp >>= 8;\n    }\n    return toHexString(value, length);\n}\n```\n