Address Details
contract

0x9442d52bF59e25C977d0920255d1E34a35ebbfCA

Contract Name
HelloCeloDevs
Creator
0x449862–6a6db8 at 0xd0fd0b–bdd3c1
Balance
0 CELO ( )
Locked CELO Balance
0.00 CELO
Voting CELO Balance
0.00 CELO
Pending Unlocked Gold
0.00 CELO
Tokens
Fetching tokens...
Transactions
7 Transactions
Transfers
0 Transfers
Gas Used
214,287
Last Balance Update
7747739
This contract has been verified via Sourcify. View contract in Sourcify repository
Contract name:
HelloCeloDevs




Optimization enabled
false
Compiler version
v0.8.0+commit.c7dfd78e




EVM Version
istanbul




Verified at
2023-02-01T20:18:48.419741Z

project:/contracts/HelloCeloDevs.sol

pragma solidity >=0.8.0;
// SPDX-License-Identifier: MIT
contract HelloCeloDevs {

    // Data mapping
    struct DataMap{
        string _name;
    }

    // Set map of addresses to DataMap{} structure
    mapping(address => DataMap) dataMap;

    // Store name within data map
    function setName(string memory _name) public {
        require(isString(_name), "Error: must include data");
        dataMap[tx.origin]._name = _name;
    }

    // Contract call
    function sayHello() public view returns(string memory){
        if(isString(dataMap[tx.origin]._name)){
            return(concatStrings("Hello ",dataMap[tx.origin]._name,"!"));
        }
            return("Hello Celo Devs!");
    }

    // Delete name from dataMap
    function deleteName() public {
        delete dataMap[tx.origin]._name;
    }

    // String validation
    function isString(string memory _string) private pure returns(bool){
        bytes memory stringTest = bytes(_string);
        if (stringTest.length == 0) {
            return false;
        }
        return true;
    }

    // Concatenate strings by appending a string to another with ABI encoding
    function concatStrings(string memory a, string memory b, string memory c) internal pure returns (string memory) {
        return string(abi.encodePacked(a, b, c));
    }
}

        

Contract ABI

[{"type":"function","stateMutability":"nonpayable","outputs":[],"name":"deleteName","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"string","name":"","internalType":"string"}],"name":"sayHello","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[],"name":"setName","inputs":[{"type":"string","name":"_name","internalType":"string"}]}]
              

Contract Creation Code

0x608060405234801561001057600080fd5b50610872806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80633209207e14610046578063c47f002714610050578063ef5fb05b1461006c575b600080fd5b61004e61008a565b005b61006a60048036038101906100659190610573565b6100d9565b005b61007461017a565b604051610081919061068f565b60405180910390f35b6000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006100d79190610428565b565b6100e2816103d4565b610121576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610118906106b1565b60405180910390fd5b806000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000019080519060200190610176929190610468565b5050565b606061024e6000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180546101cb9061079b565b80601f01602080910402602001604051908101604052809291908181526020018280546101f79061079b565b80156102445780601f1061021957610100808354040283529160200191610244565b820191906000526020600020905b81548152906001019060200180831161022757829003601f168201915b50505050506103d4565b15610398576103916040518060400160405280600681526020017f48656c6c6f2000000000000000000000000000000000000000000000000000008152506000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180546102d89061079b565b80601f01602080910402602001604051908101604052809291908181526020018280546103049061079b565b80156103515780601f1061032657610100808354040283529160200191610351565b820191906000526020600020905b81548152906001019060200180831161033457829003601f168201915b50505050506040518060400160405280600181526020017f21000000000000000000000000000000000000000000000000000000000000008152506103f9565b90506103d1565b6040518060400160405280601081526020017f48656c6c6f2043656c6f2044657673210000000000000000000000000000000081525090505b90565b6000808290506000815114156103ee5760009150506103f4565b60019150505b919050565b60608383836040516020016104109392919061065e565b60405160208183030381529060405290509392505050565b5080546104349061079b565b6000825580601f106104465750610465565b601f01602090049060005260206000209081019061046491906104ee565b5b50565b8280546104749061079b565b90600052602060002090601f01602090048101928261049657600085556104dd565b82601f106104af57805160ff19168380011785556104dd565b828001600101855582156104dd579182015b828111156104dc5782518255916020019190600101906104c1565b5b5090506104ea91906104ee565b5090565b5b808211156105075760008160009055506001016104ef565b5090565b600061051e61051984610702565b6106d1565b90508281526020810184848401111561053657600080fd5b610541848285610759565b509392505050565b600082601f83011261055a57600080fd5b813561056a84826020860161050b565b91505092915050565b60006020828403121561058557600080fd5b600082013567ffffffffffffffff81111561059f57600080fd5b6105ab84828501610549565b91505092915050565b60006105bf82610732565b6105c9818561073d565b93506105d9818560208601610768565b6105e28161082b565b840191505092915050565b60006105f882610732565b610602818561074e565b9350610612818560208601610768565b80840191505092915050565b600061062b60188361073d565b91507f4572726f723a206d75737420696e636c756465206461746100000000000000006000830152602082019050919050565b600061066a82866105ed565b915061067682856105ed565b915061068282846105ed565b9150819050949350505050565b600060208201905081810360008301526106a981846105b4565b905092915050565b600060208201905081810360008301526106ca8161061e565b9050919050565b6000604051905081810181811067ffffffffffffffff821117156106f8576106f76107fc565b5b8060405250919050565b600067ffffffffffffffff82111561071d5761071c6107fc565b5b601f19601f8301169050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b82818337600083830152505050565b60005b8381101561078657808201518184015260208101905061076b565b83811115610795576000848401525b50505050565b600060028204905060018216806107b357607f821691505b602082108114156107c7576107c66107cd565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f830116905091905056fea2646970667358221220f14520f975fe130d8a9c8c721ef6b1e7853208d55db4e84238ec35721f1569f264736f6c63430008000033

Deployed ByteCode

0x608060405234801561001057600080fd5b50600436106100415760003560e01c80633209207e14610046578063c47f002714610050578063ef5fb05b1461006c575b600080fd5b61004e61008a565b005b61006a60048036038101906100659190610573565b6100d9565b005b61007461017a565b604051610081919061068f565b60405180910390f35b6000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006100d79190610428565b565b6100e2816103d4565b610121576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610118906106b1565b60405180910390fd5b806000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000019080519060200190610176929190610468565b5050565b606061024e6000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180546101cb9061079b565b80601f01602080910402602001604051908101604052809291908181526020018280546101f79061079b565b80156102445780601f1061021957610100808354040283529160200191610244565b820191906000526020600020905b81548152906001019060200180831161022757829003601f168201915b50505050506103d4565b15610398576103916040518060400160405280600681526020017f48656c6c6f2000000000000000000000000000000000000000000000000000008152506000803273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180546102d89061079b565b80601f01602080910402602001604051908101604052809291908181526020018280546103049061079b565b80156103515780601f1061032657610100808354040283529160200191610351565b820191906000526020600020905b81548152906001019060200180831161033457829003601f168201915b50505050506040518060400160405280600181526020017f21000000000000000000000000000000000000000000000000000000000000008152506103f9565b90506103d1565b6040518060400160405280601081526020017f48656c6c6f2043656c6f2044657673210000000000000000000000000000000081525090505b90565b6000808290506000815114156103ee5760009150506103f4565b60019150505b919050565b60608383836040516020016104109392919061065e565b60405160208183030381529060405290509392505050565b5080546104349061079b565b6000825580601f106104465750610465565b601f01602090049060005260206000209081019061046491906104ee565b5b50565b8280546104749061079b565b90600052602060002090601f01602090048101928261049657600085556104dd565b82601f106104af57805160ff19168380011785556104dd565b828001600101855582156104dd579182015b828111156104dc5782518255916020019190600101906104c1565b5b5090506104ea91906104ee565b5090565b5b808211156105075760008160009055506001016104ef565b5090565b600061051e61051984610702565b6106d1565b90508281526020810184848401111561053657600080fd5b610541848285610759565b509392505050565b600082601f83011261055a57600080fd5b813561056a84826020860161050b565b91505092915050565b60006020828403121561058557600080fd5b600082013567ffffffffffffffff81111561059f57600080fd5b6105ab84828501610549565b91505092915050565b60006105bf82610732565b6105c9818561073d565b93506105d9818560208601610768565b6105e28161082b565b840191505092915050565b60006105f882610732565b610602818561074e565b9350610612818560208601610768565b80840191505092915050565b600061062b60188361073d565b91507f4572726f723a206d75737420696e636c756465206461746100000000000000006000830152602082019050919050565b600061066a82866105ed565b915061067682856105ed565b915061068282846105ed565b9150819050949350505050565b600060208201905081810360008301526106a981846105b4565b905092915050565b600060208201905081810360008301526106ca8161061e565b9050919050565b6000604051905081810181811067ffffffffffffffff821117156106f8576106f76107fc565b5b8060405250919050565b600067ffffffffffffffff82111561071d5761071c6107fc565b5b601f19601f8301169050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b82818337600083830152505050565b60005b8381101561078657808201518184015260208101905061076b565b83811115610795576000848401525b50505050565b600060028204905060018216806107b357607f821691505b602082108114156107c7576107c66107cd565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f830116905091905056fea2646970667358221220f14520f975fe130d8a9c8c721ef6b1e7853208d55db4e84238ec35721f1569f264736f6c63430008000033