0 txs
27 calls
constructor
No constructor.
functions
getBridge
viewfunction getBridge(address token) view returns (address)
getL2Bridge
viewfunction getL2Bridge(address token) view returns (uint256)
getWithdrawalBridges
viewfunction getWithdrawalBridges(address token) view returns (address[] bridges)
identify
purefunction identify() pure returns (string)
isAppGovernor
viewfunction isAppGovernor(address account) view returns (bool)
isAppRoleAdmin
viewfunction isAppRoleAdmin(address account) view returns (bool)
isFrozen
viewfunction isFrozen() view returns (bool)
isGovernanceAdmin
viewfunction isGovernanceAdmin(address account) view returns (bool)
isOperator
viewfunction isOperator(address account) view returns (bool)
isSecurityAdmin
viewfunction isSecurityAdmin(address account) view returns (bool)
isSecurityAgent
viewfunction isSecurityAgent(address account) view returns (bool)
isTokenAdmin
viewfunction isTokenAdmin(address account) view returns (bool)
isUpgradeGovernor
viewfunction isUpgradeGovernor(address account) view returns (bool)
blockToken
nonpayablefunction blockToken(address token)
enlistToken
nonpayablefunction enlistToken(address token, address bridge)
initialize
nonpayablefunction initialize(bytes data)
registerAppGovernor
nonpayablefunction registerAppGovernor(address account)
registerAppRoleAdmin
nonpayablefunction registerAppRoleAdmin(address account)
registerGovernanceAdmin
nonpayablefunction registerGovernanceAdmin(address account)
registerOperator
nonpayablefunction registerOperator(address account)
registerSecurityAdmin
nonpayablefunction registerSecurityAdmin(address account)
registerSecurityAgent
nonpayablefunction registerSecurityAgent(address account)
registerTokenAdmin
nonpayablefunction registerTokenAdmin(address account)
registerUpgradeGovernor
nonpayablefunction registerUpgradeGovernor(address account)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeAppGovernor
nonpayablefunction revokeAppGovernor(address account)
revokeAppRoleAdmin
nonpayablefunction revokeAppRoleAdmin(address account)
revokeGovernanceAdmin
nonpayablefunction revokeGovernanceAdmin(address account)
revokeOperator
nonpayablefunction revokeOperator(address account)
revokeSecurityAdmin
nonpayablefunction revokeSecurityAdmin(address account)
revokeSecurityAgent
nonpayablefunction revokeSecurityAgent(address account)
revokeTokenAdmin
nonpayablefunction revokeTokenAdmin(address account)
revokeUpgradeGovernor
nonpayablefunction revokeUpgradeGovernor(address account)
selfRemove
nonpayablefunction selfRemove(address token)
events
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
TokenEnlisted
event TokenEnlisted(address indexed token, address indexed bridge)
TokenSelfRemoved
event TokenSelfRemoved(address indexed token, address indexed bridge)
TokenStatusBlocked
event TokenStatusBlocked(address indexed token)
errors
No errors.
creation bytecode
0x60c060405234801562000010575f80fd5b5030608052600160a0819052620000266200002d565b50620004dd565b336200003a81806200003d565b50565b620000476200019c565b15620000df576001600160a01b0382165f9081527fa5fdb349cc4ffac7e8ce7d3b075149d1bc847367d814e69a9beca89ef02db8b0602052604090205460ff16620000d95760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a45440000000000000060448201526064015b60405180910390fd5b620000ea565b620000ea82620001ed565b620000f462000330565b1562000191576001600160a01b0381165f9081527f2c11a1f9c63817dbb9f0faa966615764d2db5d6e008269e948a99e0b52181c23602052604090205460ff166200018d5760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401620000d0565b5050565b6200018d816200037f565b5f805160206200246f8339815191525f9081525f80516020620024af8339815191526020527fa5fdb349cc4ffac7e8ce7d3b075149d1bc847367d814e69a9beca89ef02db8b15481905b1415905090565b620002075f805160206200246f83398151915282620003e8565b620002407ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de060685f80516020620024cf83398151915262000486565b620002685f80516020620024cf8339815191525f805160206200246f83398151915262000486565b620002825f805160206200246f8339815191528062000486565b620002bc7f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da75f80516020620024cf83398151915262000486565b620002f67f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e5f80516020620024cf83398151915262000486565b6200003a7f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec2285f805160206200246f83398151915262000486565b5f805160206200248f8339815191525f9081525f80516020620024af8339815191526020527f2c11a1f9c63817dbb9f0faa966615764d2db5d6e008269e948a99e0b52181c24548190620001e6565b620003995f805160206200248f8339815191528062000486565b620003d37f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b965f805160206200248f83398151915262000486565b6200003a5f805160206200248f833981519152825b5f8281525f80516020620024af833981519152602090815260408083206001600160a01b038516845290915290205460ff166200018d575f8281525f80516020620024af833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b5f8281525f80516020620024af8339815191526020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60805160a051611f70620004ff5f395f61057001525f6106020152611f705ff3fe608060405234801561000f575f80fd5b50600436106101fd575f3560e01c80638101b64c11610114578063d9fa7091116100a9578063ee0e680711610079578063ee0e680714610449578063eeb728661461045c578063f44c7c8f14610471578063fa0f73ba1461049c578063fad8b32a146104af575f80fd5b8063d9fa7091146103ef578063deec9c5a14610402578063df5f8c0c14610415578063ed9ef16a14610436575f80fd5b8063a3ecff8f116100e4578063a3ecff8f146103a3578063cb1cccce146103b6578063cdd1f70d146103c9578063d08fb6cb146103dc575f80fd5b80638101b64c146103575780638e5224ff1461036a5780639463629a1461037d578063a2bdde3d14610390575f80fd5b8063557133f6116101955780636c04d9d5116101655780636c04d9d5146102f85780636d70f7ae1461030b5780636fc97cbf1461031e578063726176e814610331578063757bd9ab14610344575f80fd5b8063557133f61461029f5780635a5d1bb9146102bf57806362a14376146102d257806365650288146102e5575f80fd5b806333eeb147116101d057806333eeb1471461024f57806336568abe146102665780633682a45014610279578063439fab911461028c575f80fd5b80630b3a2d21146102015780630e770f231461021657806317896383146102295780632f9519851461023c575b5f80fd5b61021461020f366004611a16565b6104c2565b005b610214610224366004611a16565b6104dc565b610214610237366004611a16565b6104f3565b61021461024a366004611a16565b61050a565b5f5b60405190151581526020015b60405180910390f35b610214610274366004611a31565b610557565b610214610287366004611a16565b6105e8565b61021461029a366004611a5f565b6105ff565b6102b26102ad366004611a16565b6107ab565b60405161025d9190611acb565b6102516102cd366004611a16565b610827565b6102146102e0366004611a16565b610845565b6102146102f3366004611a16565b61085c565b610251610306366004611a16565b6109f9565b610251610319366004611a16565b610a11565b61021461032c366004611a16565b610a29565b61021461033f366004611a16565b610a40565b610251610352366004611a16565b610acb565b610214610365366004611a16565b610ae3565b610251610378366004611a16565b610b23565b61021461038b366004611a16565b610b3b565b61025161039e366004611a16565b610b52565b6102146103b1366004611b17565b610b6a565b6102516103c4366004611a16565b610d7f565b6102146103d7366004611a16565b610d97565b6102516103ea366004611a16565b610dae565b6102146103fd366004611a16565b610dc6565b610214610410366004611a16565b610ddd565b610428610423366004611a16565b610df4565b60405190815260200161025d565b610214610444366004611a16565b610e7b565b610214610457366004611a16565b610e92565b610464610ed2565b60405161025d9190611b65565b61048461047f366004611a16565b610ef2565b6040516001600160a01b03909116815260200161025d565b6102146104aa366004611a16565b610f1d565b6102146104bd366004611a16565b610f34565b6104d95f80516020611f1b83398151915282610f4b565b50565b6104d95f80516020611e4c83398151915282610f4b565b6104d95f80516020611e8d83398151915282610f4b565b80336001600160a01b0382160361053c5760405162461bcd60e51b815260040161053390611b97565b60405180910390fd5b6105535f80516020611e8d83398151915283610f67565b5050565b5f80516020611d758339815191528214801561059157507f0000000000000000000000000000000000000000000000000000000000000000155b156105de5760405162461bcd60e51b815260206004820181905260248201527f43414e4e4f545f52454e4f554e43455f474f5645524e414e43455f41444d494e6044820152606401610533565b6105538282610f83565b6104d95f80516020611efb83398151915282610f4b565b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316036106705760405162461bcd60e51b81526020600482015260166024820152751112549150d517d0d0531317d11254d0531313d5d15160521b6044820152606401610533565b5f61067c816020611bdb565b90505f61068a826020611bf2565b9050808310156106d25760405162461bcd60e51b81526020600482015260136024820152721253925517d110551057d513d3d7d4d3505313606a1b6044820152606401610533565b5f6106df82848688611c05565b8101906106ec9190611a16565b9050365f6106fc8582888a611c05565b91509150365f61070e8887818c611c05565b90925090506001600160a01b038516156107385761072d858383610ffd565b505050505050505050565b61074061113b565b1561078f57801561078a5760405162461bcd60e51b8152602060048201526014602482015273554e45585045435445445f494e49545f4441544160601b6044820152606401610533565b61072d565b6107998282611155565b6107a382826111ff565b61072d611230565b60606107b561123b565b6001600160a01b0383165f90815260209182526040908190208054825181850281018501909352808352919290919083018282801561081b57602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116107fd575b50505050509050919050565b5f61083f5f80516020611dec83398151915283611262565b92915050565b6104d95f80516020611d9583398151915282610f4b565b33610865611298565b6001600160a01b038084165f90815260209290925260409091205416146108da5760405162461bcd60e51b815260206004820152602360248201527f4252494447455f4d49534d415443485f43414e4e4f545f52454d4f56455f544f60448201526225a2a760e91b6064820152608401610533565b60405163031be19960e21b81526001600160a01b03821660048201523390630c6f866490602401602060405180830381865afa15801561091c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109409190611c2c565b1561098d5760405162461bcd60e51b815260206004820152601760248201527f544f4b454e5f49535f5354494c4c5f53455256494345440000000000000000006044820152606401610533565b60405133906001600160a01b038316907f0d8ce137b708fa1f68a42ceb628ec64227e0381c4ecfd1c920804fa9e718a308905f90a35f6109cb611298565b6001600160a01b039283165f9081526020919091526040902080546001600160a01b03191691909216179055565b5f61083f5f80516020611e0c83398151915283611262565b5f61083f5f80516020611efb83398151915283611262565b6104d95f80516020611e0c83398151915282610f4b565b33610a496112ba565b6001600160a01b031614610a8e5760405162461bcd60e51b815260206004820152600c60248201526b27a7262cafa6a0a720a3a2a960a11b6044820152606401610533565b6040516001600160a01b038216907f8f41c4654c849cdf55aec592405d4ed6fcad4c16895633c4e8ff23bb4ebdd2a2905f90a260016109cb611298565b5f61083f5f80516020611e4c83398151915283611262565b80336001600160a01b03821603610b0c5760405162461bcd60e51b815260040161053390611b97565b6105535f80516020611d9583398151915283610f67565b5f61083f5f80516020611e8d83398151915283611262565b6104d95f80516020611d7583398151915282610f4b565b5f61083f5f80516020611f1b83398151915283611262565b33610b736112ba565b6001600160a01b031614610bb85760405162461bcd60e51b815260206004820152600c60248201526b27a7262cafa6a0a720a3a2a960a11b6044820152606401610533565b5f610bc1611298565b6001600160a01b038085165f908152602092909252604090912054169050801580610bf557506001600160a01b0381166001145b610c3a5760405162461bcd60e51b81526020600482015260166024820152751513d2d15397d053149150511657d1539493d313115160521b6044820152606401610533565b816001600160a01b0316836001600160a01b03167f169097aa60be141cd725083125ddf0d1330273f15ba137cf74914d24b4c6d36260405160405180910390a381610c83611298565b6001600160a01b038581165f908152602092909252604090912080546001600160a01b03191692909116919091179055610d2f610cbe61123b565b6001600160a01b0385165f908152602091825260409081902080548251818502810185019093528083529192909190830182828015610d2457602002820191905f5260205f20905b81546001600160a01b03168152600190910190602001808311610d06575b5050505050836112dc565b610d7a57610d3b61123b565b6001600160a01b038481165f908152602092835260408120805460018101825590825292902090910180546001600160a01b0319169184169190911790555b505050565b5f61083f5f80516020611d7583398151915283611262565b6104d95f80516020611dec83398151915282610f4b565b5f61083f5f80516020611d9583398151915283611262565b6104d95f80516020611e4c83398151915282610f67565b6104d95f80516020611dec83398151915282610f67565b5f80610dfe611298565b6001600160a01b038085165f9081526020928352604090819020548151630d0a41cb60e21b81529151921693508392633429072c926004808401938290030181865afa158015610e50573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e749190611c4b565b9392505050565b6104d95f80516020611e0c83398151915282610f67565b80336001600160a01b03821603610ebb5760405162461bcd60e51b815260040161053390611b97565b6105535f80516020611d7583398151915283610f67565b6060604051806060016040528060218152602001611e6c60219139905090565b5f610efb611298565b6001600160a01b039283165f9081526020919091526040902054909116919050565b6104d95f80516020611f1b83398151915282610f67565b6104d95f80516020611efb83398151915282610f67565b610f548261133f565b610f5d8161135f565b610d7a8383611369565b610f708261133f565b610f798161135f565b610d7a83836113dd565b6001600160a01b0381163314610ff35760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610533565b61055382826113dd565b6001600160a01b0383163b6110495760405162461bcd60e51b8152602060048201526012602482015271115250d7d393d517d057d0d3d395149050d560721b6044820152606401610533565b5f80846001600160a01b031663439fab9160e01b8585604051602401611070929190611c62565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516110ae9190611c90565b5f60405180830381855af49150503d805f81146110e6576040519150601f19603f3d011682016040523d82523d5f602084013e6110eb565b606091505b50915091508181906111105760405162461bcd60e51b81526004016105339190611b65565b5080518190156111335760405162461bcd60e51b81526004016105339190611b65565b505050505050565b5f806111456112ba565b6001600160a01b03161415905090565b602081146111995760405162461bcd60e51b8152602060048201526011602482015270494c4c4547414c5f444154415f53495a4560781b6044820152606401610533565b5f6111a682840184611a16565b90506001600160a01b0381163b610d7a5760405162461bcd60e51b815260206004820181905260248201527f494e56414c49445f4d414e414745525f434f4e54524143545f414444524553536044820152606401610533565b5f61120c82840184611a16565b9050610d7a604051806060016040528060238152602001611ed8602391398261144f565b336104d981806114a7565b5f61125d604051806060016040528060378152602001611db5603791396115a9565b905090565b5f9182525f80516020611e2c833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b5f61125d6040518060600160405280602b8152602001611ead602b91396115a9565b5f61125d604051806060016040528060238152602001611ed8602391396115db565b5f805b835181101561133657826001600160a01b031684828151811061130457611304611cab565b60200260200101516001600160a01b03160361132457600191505061083f565b8061132e81611cbf565b9150506112df565b505f9392505050565b5f9081525f80516020611e2c833981519152602052604090206001015490565b6104d9813361160e565b6113738282611262565b610553575f8281525f80516020611e2c833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6113e78282611262565b15610553575f8281525f80516020611e2c833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b5f611459836115db565b6001600160a01b03161461149d5760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610533565b6105538282611672565b6114af6116a4565b1561151c576114cb5f80516020611d7583398151915283611262565b6115175760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a4544000000000000006044820152606401610533565b611525565b611525826116c3565b61152d6117a5565b156115a0576115495f80516020611d9583398151915282611262565b6105535760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401610533565b610553816117bd565b5f80826040516020016115bc9190611c90565b60408051601f1981840301815291905280516020909101209392505050565b5f80826040516020016115ee9190611c90565b60408051601f198184030181529190528051602090910120549392505050565b6116188282611262565b61055357611630816001600160a01b0316601461180f565b61163b83602061180f565b60405160200161164c929190611cd7565b60408051601f198184030181529082905262461bcd60e51b825261053391600401611b65565b5f826040516020016116849190611c90565b604051602081830303815290604052805190602001209050818155505050565b5f806116bc5f80516020611d7583398151915261133f565b1415905090565b6116da5f80516020611d7583398151915282611369565b6116fe5f80516020611dec8339815191525f80516020611e8d8339815191526119a5565b6117225f80516020611e8d8339815191525f80516020611d758339815191526119a5565b6117395f80516020611d75833981519152806119a5565b61175d5f80516020611efb8339815191525f80516020611e8d8339815191526119a5565b6117815f80516020611f1b8339815191525f80516020611e8d8339815191526119a5565b6104d95f80516020611e0c8339815191525f80516020611d758339815191526119a5565b5f806116bc5f80516020611d9583398151915261133f565b6117d45f80516020611d95833981519152806119a5565b6117f85f80516020611e4c8339815191525f80516020611d958339815191526119a5565b6104d95f80516020611d9583398151915282611369565b60605f61181d836002611bdb565b611828906002611bf2565b67ffffffffffffffff81111561184057611840611d4b565b6040519080825280601f01601f19166020018201604052801561186a576020820181803683370190505b509050600360fc1b815f8151811061188457611884611cab565b60200101906001600160f81b03191690815f1a905350600f60fb1b816001815181106118b2576118b2611cab565b60200101906001600160f81b03191690815f1a9053505f6118d4846002611bdb565b6118df906001611bf2565b90505b6001811115611956576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061191357611913611cab565b1a60f81b82828151811061192957611929611cab565b60200101906001600160f81b03191690815f1a90535060049490941c9361194f81611d5f565b90506118e2565b508315610e745760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610533565b5f6119af8361133f565b5f8481525f80516020611e2c8339815191526020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6001600160a01b03811681146104d9575f80fd5b5f60208284031215611a26575f80fd5b8135610e7481611a02565b5f8060408385031215611a42575f80fd5b823591506020830135611a5481611a02565b809150509250929050565b5f8060208385031215611a70575f80fd5b823567ffffffffffffffff80821115611a87575f80fd5b818501915085601f830112611a9a575f80fd5b813581811115611aa8575f80fd5b866020828501011115611ab9575f80fd5b60209290920196919550909350505050565b602080825282518282018190525f9190848201906040850190845b81811015611b0b5783516001600160a01b031683529284019291840191600101611ae6565b50909695505050505050565b5f8060408385031215611b28575f80fd5b8235611b3381611a02565b91506020830135611a5481611a02565b5f5b83811015611b5d578181015183820152602001611b45565b50505f910152565b602081525f8251806020840152611b83816040850160208701611b43565b601f01601f19169190910160400192915050565b60208082526016908201527521a0a72727aa2fa822a92327a926afa7a72fa9a2a62360511b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761083f5761083f611bc7565b8082018082111561083f5761083f611bc7565b5f8085851115611c13575f80fd5b83861115611c1f575f80fd5b5050820193919092039150565b5f60208284031215611c3c575f80fd5b81518015158114610e74575f80fd5b5f60208284031215611c5b575f80fd5b5051919050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b5f8251611ca1818460208701611b43565b9190910192915050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611cd057611cd0611bc7565b5060010190565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351611d0e816017850160208801611b43565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611d3f816028840160208801611b43565b01602801949350505050565b634e487b7160e01b5f52604160045260245ffd5b5f81611d6d57611d6d611bc7565b505f19019056fe03711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3535441524b474154455f52454749535452595f544f4b454e5f544f5f5749544844524157414c5f425249444745535f534c4f545f54414700d2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de060680251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec22853e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96537461726b576172655f537461726b6761746552656769737472795f322e305f3603e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99535441524b474154455f52454749535452595f544f4b454e5f544f5f4252494447455f534c4f545f544147535441524b474154455f52454749535452595f4d414e414745525f534c4f545f544147023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da70128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3ea2646970667358221220826dc1dad295768b1b36ce2c23627b9948900f098cedd4c6b1b07b215db8198a64736f6c6343000814003303711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b353e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb03e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99