0% found this document useful (0 votes)
11 views1 page

Smart Contract

Uploaded by

nexege8631
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views1 page

Smart Contract

Uploaded by

nexege8631
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 1

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.2;

contract Ssl {
mapping ( address=> uint ) public balances;
mapping (address=> mapping (address=>uint)) public allowance;

uint public totalSupply = 10000 * 10 ** 18;


string public name = "Shefi The Don";
string public symbol = "STD";
uint public decimals = 18;

event Transfer(address indexed from, address indexed to, uint value);


event Approval(address indexed owner, address indexed spender, uint value);

constructor() {
balances[msg.sender]=totalSupply;
}
function balaceOf(address owner) public view returns(uint){
return balances[owner];
}

function transfer(address to, uint value) public returns(bool){


require(balaceOf(msg.sender) >= value, 'Balance Too Low' );
balances[to] += value;
balances[msg.sender]-= value;
emit Transfer(msg.sender, to, value);
return true;
}

function transferFrom(address from, address to, uint value) public


returns(bool) {
require(balaceOf(from)>= value, 'balance too low');
require(allowance[from][msg.sender]>= value, 'allownce too low');
balances[to] += value;
balances[from] -= value;
emit Transfer(from,to,value);
return true;
}

function approve(address spender, uint value) public returns(bool) {


allowance[msg.sender][spender]=value;
emit Approval(msg.sender, spender, value);
return true;
}

You might also like