contract Ownable {

    address public owner;
    bool public stopped = false;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender
     * account.
     */
    constructor() public{
        owner = msg.sender;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    /**
     * @dev Allows the current owner to transfer control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     */
    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0));
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
    }

    /** 
    * Stop ICO/Contract
    */
    function stop() onlyOwner public{
        stopped = true;
    }

    /** 
    * Start ICO/Contract
    */
    function start() onlyOwner public{
        stopped = false;
    }

    /** 
    Validate if ICO/Contract running
    */
    modifier isRunning {
        assert (!stopped);
        _;
    }
}
function start() onlyOwner public{
    stopped = false;
}

/** 
 * Start ICO/Contract
 */