Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- pragma solidity ^0.5.0;
- library SafeMath {
- function add(uint a, uint b) internal pure returns (uint c) {
- c = a + b;
- require(c >= a);
- }
- function sub(uint a, uint b) internal pure returns (uint c) {
- require(b <= a);
- c = a - b;
- }
- function mul(uint a, uint b) internal pure returns (uint c) {
- c = a * b;
- require(a == 0 || c / a == b);
- }
- function div(uint a, uint b) internal pure returns (uint c) {
- require(b > 0);
- c = a / b;
- }
- }
- contract SubToken{
- function totalSupply() public view returns (uint);
- function balanceOf(address tokenOwner) public view returns (uint balance);
- //function allowance(address tokenOwner, address spender) public view returns (uint remaining);
- function transfer(address to, uint tokens) public returns (bool success);
- function approve(address spender, uint tokens) public returns (bool success);
- function transferFrom(address from, address to, uint tokens) public returns (bool success);
- event Transfer(address indexed from, address indexed to, uint tokens);
- event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
- }
- contract MainContrat is SubToken {
- mapping(address => uint) _balances;
- mapping(address => mapping(address => uint)) allowed;
- mapping(address => SubToken) public tokenlist;
- address[] public contracts;
- address owner = msg.sender;
- using SafeMath for uint;
- string public symbol;
- string public name;
- uint8 public decimals;
- uint _totalSupply;
- //constructor(string memory name,string memory symbol,uint8 decimals,uint256 _totalSupply) public{
- // _balances[msg.sender]=_totalSupply;
- //}
- function totalSupply() public view returns (uint256) {
- return _totalSupply;
- }
- function balanceOf(address _owner) public view returns (uint256 balance) {
- return _balances[_owner];
- }
- function transfer(address _to, uint256 _value) public returns (bool success) {
- return true;
- }
- function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {
- emit Transfer(_from, _to, _value);
- return true;
- }
- function approve(address _spender, uint256 _value) public returns (bool success) {
- return true;
- }
- //function allowance(address _owner, address _spender) public view returns (uint256 remaining) {
- // return approve[_owner][_spender];
- //}
- function createNewContract() public returns(address){
- SubToken st = new SubToken();
- contracts.push(st);
- address(st);
- }
- event Transfer(address indexed _from, address indexed _to, uint256 _value);
- event Approval(address indexed _owner, address indexed _spender, uint256 _value);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement