contract SafeMath {
    

    /**
     * @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
     */
    function safeSub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Adds two unsigned integers, reverts on overflow.
     */
    function safeAdd(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a);

        return c;
    }

}
// ----------------------------------------------------------------------------
//  Polkacast Token contract
//
// Symbol      : CAST
// Name        : Polkacast
// Total supply: 930000000
// Decimals    : 18
// Author      : kkdelos
// Website     : https://www.polkacast.network/
// -------------------------------------------`---------------------------------
// Safe maths
// ----------------------------------------------------------------------------
function safeAdd(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a);

        return c;
    }
/**
 * @dev Adds two unsigned integers, reverts on overflow.
 */