Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stuck on Lesson 8 #5

Open
shawnmichaelGT opened this issue Aug 1, 2021 · 0 comments
Open

Stuck on Lesson 8 #5

shawnmichaelGT opened this issue Aug 1, 2021 · 0 comments

Comments

@shawnmichaelGT
Copy link

shawnmichaelGT commented Aug 1, 2021

I am unable to pass Lesson 8 "ERC20 Standard". Specifically the second checkpoint: "In function transfer, decrease the balance of msg.sender by _value. Then, increase the balance of _to by _value.

`function transfer(address _to, uint256 _value) returns (bool) {
require(_value <= balances[msg.sender]);
require(_to != address(0));

balances[msg.sender] = balances[msg.sender] -= (_value);
balances[_to] = balances[_to] += (_value);
Transfer(msg.sender, _to, _value);
return true;
}`

Also on the third checkpoint: "In function transferFrom, make sure the code that changes the balances is only executed if msg.sender has enough allowance and _from has enough balance. Hint: use require to validate data and thow the exceptions."

`function transferFrom(address _from, address _to, uint256 _value) returns (bool) {
var _allowance = allowed[_from][msg.sender];
require(_value <= allowed[_from][msg.sender]);
require(_value <= balances[_from]);
// Make sure the function does not get executed if _allowance is lower than _value

    balances[_to] = balances[_to] + _value;
    balances[_from] = balances[_from] - _value;
    allowed[_from][msg.sender] = _allowance - _value;

    Transfer(_from, _to, _value);

    return true;
}`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant