false
false
0
The new Blockscout UI is now open source! Learn how to deploy it here
- We're indexing this chain right now. Some of the counts may be inaccurate.

Contract Address Details

0x6cb76a6e5C5Fb1E9A6A51414d586a24B31c7FA72

Contract Name
VectorContract
Creator
0xb56259–d2f808 at 0xee406d–e8308d
Balance
0 ETH
Tokens
Fetching tokens...
Transactions
Fetching transactions...
Transfers
Fetching transfers...
Gas Used
Fetching gas used...
Last Balance Update
2384901
Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
Contract name:
VectorContract




Optimization enabled
false
Compiler version
v0.8.25+commit.b61c2a91




EVM Version
default




Verified at
2024-05-15T08:52:08.241475Z

Contract source code

// SPDX-License-Identifier: GPL-3.0

pragma solidity ^0.8.25;

contract VectorContract {
struct Vector {
int x;
int y;
int z;
}

function addVectors(Vector memory v1, Vector memory v2) public pure returns (Vector memory) {
    return Vector(v1.x + v2.x, v1.y + v2.y, v1.z + v2.z);
}

function subtractVectors(Vector memory v1, Vector memory v2) public pure returns (Vector memory) {
    return Vector(v1.x - v2.x, v1.y - v2.y, v1.z - v2.z);
}

function dotProduct(Vector memory v1, Vector memory v2) public pure returns (int) {
    return (v1.x * v2.x) + (v1.y * v2.y) + (v1.z * v2.z);
}
}
        

Contract ABI

[{"type":"function","stateMutability":"pure","outputs":[{"type":"tuple","name":"","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]}],"name":"addVectors","inputs":[{"type":"tuple","name":"v1","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]},{"type":"tuple","name":"v2","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]}]},{"type":"function","stateMutability":"pure","outputs":[{"type":"int256","name":"","internalType":"int256"}],"name":"dotProduct","inputs":[{"type":"tuple","name":"v1","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]},{"type":"tuple","name":"v2","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]}]},{"type":"function","stateMutability":"pure","outputs":[{"type":"tuple","name":"","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]}],"name":"subtractVectors","inputs":[{"type":"tuple","name":"v1","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]},{"type":"tuple","name":"v2","internalType":"struct VectorContract.Vector","components":[{"type":"int256","name":"x","internalType":"int256"},{"type":"int256","name":"y","internalType":"int256"},{"type":"int256","name":"z","internalType":"int256"}]}]}]
              

Contract Creation Code

Verify & Publish
0x6080604052348015600e575f80fd5b506105618061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631ec0d5dd146100435780634319da6a1461007357806385e04e5e146100a3575b5f80fd5b61005d60048036038101906100589190610339565b6100d3565b60405161006a9190610386565b60405180910390f35b61008d60048036038101906100889190610339565b61012a565b60405161009a91906103ee565b60405180910390f35b6100bd60048036038101906100b89190610339565b61018c565b6040516100ca91906103ee565b60405180910390f35b5f816040015183604001516100e89190610434565b826020015184602001516100fc9190610434565b835f0151855f015161010e9190610434565b61011891906104aa565b61012291906104aa565b905092915050565b6101326101ee565b6040518060600160405280835f0151855f015161014f91906104aa565b81526020018360200151856020015161016891906104aa565b81526020018360400151856040015161018191906104aa565b815250905092915050565b6101946101ee565b6040518060600160405280835f0151855f01516101b191906104eb565b8152602001836020015185602001516101ca91906104eb565b8152602001836040015185604001516101e391906104eb565b815250905092915050565b60405180606001604052805f81526020015f81526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102638261021d565b810181811067ffffffffffffffff821117156102825761028161022d565b5b80604052505050565b5f61029461020c565b90506102a0828261025a565b919050565b5f819050919050565b6102b7816102a5565b81146102c1575f80fd5b50565b5f813590506102d2816102ae565b92915050565b5f606082840312156102ed576102ec610219565b5b6102f7606061028b565b90505f610306848285016102c4565b5f830152506020610319848285016102c4565b602083015250604061032d848285016102c4565b60408301525092915050565b5f8060c0838503121561034f5761034e610215565b5b5f61035c858286016102d8565b925050606061036d858286016102d8565b9150509250929050565b610380816102a5565b82525050565b5f6020820190506103995f830184610377565b92915050565b6103a8816102a5565b82525050565b606082015f8201516103c25f85018261039f565b5060208201516103d5602085018261039f565b5060408201516103e8604085018261039f565b50505050565b5f6060820190506104015f8301846103ae565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61043e826102a5565b9150610449836102a5565b9250828202610457816102a5565b91507f800000000000000000000000000000000000000000000000000000000000000084145f8412161561048e5761048d610407565b5b82820584148315176104a3576104a2610407565b5b5092915050565b5f6104b4826102a5565b91506104bf836102a5565b92508282019050828112155f8312168382125f8412151617156104e5576104e4610407565b5b92915050565b5f6104f5826102a5565b9150610500836102a5565b925082820390508181125f8412168282135f85121516171561052557610524610407565b5b9291505056fea2646970667358221220af8b7afd3ad3e459f4bba026aa5c4a5f0cc2da0bf4ea6d92fb103c8e0f36726d64736f6c63430008190033

Deployed ByteCode

0x608060405234801561000f575f80fd5b506004361061003f575f3560e01c80631ec0d5dd146100435780634319da6a1461007357806385e04e5e146100a3575b5f80fd5b61005d60048036038101906100589190610339565b6100d3565b60405161006a9190610386565b60405180910390f35b61008d60048036038101906100889190610339565b61012a565b60405161009a91906103ee565b60405180910390f35b6100bd60048036038101906100b89190610339565b61018c565b6040516100ca91906103ee565b60405180910390f35b5f816040015183604001516100e89190610434565b826020015184602001516100fc9190610434565b835f0151855f015161010e9190610434565b61011891906104aa565b61012291906104aa565b905092915050565b6101326101ee565b6040518060600160405280835f0151855f015161014f91906104aa565b81526020018360200151856020015161016891906104aa565b81526020018360400151856040015161018191906104aa565b815250905092915050565b6101946101ee565b6040518060600160405280835f0151855f01516101b191906104eb565b8152602001836020015185602001516101ca91906104eb565b8152602001836040015185604001516101e391906104eb565b815250905092915050565b60405180606001604052805f81526020015f81526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102638261021d565b810181811067ffffffffffffffff821117156102825761028161022d565b5b80604052505050565b5f61029461020c565b90506102a0828261025a565b919050565b5f819050919050565b6102b7816102a5565b81146102c1575f80fd5b50565b5f813590506102d2816102ae565b92915050565b5f606082840312156102ed576102ec610219565b5b6102f7606061028b565b90505f610306848285016102c4565b5f830152506020610319848285016102c4565b602083015250604061032d848285016102c4565b60408301525092915050565b5f8060c0838503121561034f5761034e610215565b5b5f61035c858286016102d8565b925050606061036d858286016102d8565b9150509250929050565b610380816102a5565b82525050565b5f6020820190506103995f830184610377565b92915050565b6103a8816102a5565b82525050565b606082015f8201516103c25f85018261039f565b5060208201516103d5602085018261039f565b5060408201516103e8604085018261039f565b50505050565b5f6060820190506104015f8301846103ae565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61043e826102a5565b9150610449836102a5565b9250828202610457816102a5565b91507f800000000000000000000000000000000000000000000000000000000000000084145f8412161561048e5761048d610407565b5b82820584148315176104a3576104a2610407565b5b5092915050565b5f6104b4826102a5565b91506104bf836102a5565b92508282019050828112155f8312168382125f8412151617156104e5576104e4610407565b5b92915050565b5f6104f5826102a5565b9150610500836102a5565b925082820390508181125f8412168282135f85121516171561052557610524610407565b5b9291505056fea2646970667358221220af8b7afd3ad3e459f4bba026aa5c4a5f0cc2da0bf4ea6d92fb103c8e0f36726d64736f6c63430008190033