-
Notifications
You must be signed in to change notification settings - Fork 0
/
safeMath.sol
40 lines (36 loc) · 1.06 KB
/
safeMath.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
Verified Crypto Company token
Copyright (C) Fusion Solutions KFT <contact@fusionsolutions.io> - All Rights Reserved
This file is part of Verified Crypto Company token project.
Unauthorized copying of this file or source, via any medium is strictly prohibited
Proprietary and confidential
This file can not be copied and/or distributed without the express permission of the Author.
Written by Andor Rajci, August 2018
*/
pragma solidity 0.4.24;
library SafeMath {
/* Internals */
function add(uint256 a, uint256 b) internal pure returns(uint256 c) {
c = a + b;
assert( c >= a );
return c;
}
function sub(uint256 a, uint256 b) internal pure returns(uint256 c) {
c = a - b;
assert( c <= a );
return c;
}
function mul(uint256 a, uint256 b) internal pure returns(uint256 c) {
c = a * b;
assert( c == 0 || c / a == b );
return c;
}
function div(uint256 a, uint256 b) internal pure returns(uint256) {
return a / b;
}
function pow(uint256 a, uint256 b) internal pure returns(uint256 c) {
c = a ** b;
assert( c % a == 0 );
return a ** b;
}
}