// SPDX-License-Identifier: MIT pragma solidity >=0.5.0; /** @title smart SimpleMath contract. */ contract SimpleMath { // some helpful constants for testing uint constant internal UINT_ZERO = 0; uint constant internal UINT_ONE = 1; uint constant internal UINT_TWO = 2; uint constant internal UINT_MAX = ~uint(0); uint constant internal UINT_MIN = 0; int constant internal INT_ZERO = 0; int constant internal INT_ONE = 1; int constant internal INT_TWO = 2; int constant internal INT_MINUS_ONE = -1; int constant internal INT_MAX = int(2**255 - 1); int constant internal INT_MIN = int(2**255); //constructor of the contract SimpleMath constructor() public { } /** @dev implement simple addition by adding two numbers together * @return the sum of the two operands */ function add(uint _i1, uint _i2) public pure returns (uint sum) { sum = _i1 + _i2; require(sum >= _i1); return sum; } }