contract Cbdnano is StandardToken {

    string public constant name = "CBDNANO";
    string public constant symbol = "CBDN";
    uint8 public constant decimals = 18;
    uint256 public constant INITIAL_SUPPLY = 10**9 * (10**uint256(decimals));
    address public owner;

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

    constructor(address _owner) public {
        totalSupply = INITIAL_SUPPLY;
        owner = _owner;
        //owner = msg.sender; // for testing
        balances[owner] = INITIAL_SUPPLY;
        transfersEnabled = true;
    }

    // fallback function can be used to buy tokens
    function() payable public {
        revert();
    }

    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    function changeOwner(address _newOwner) onlyOwner public returns (bool){
        require(_newOwner != address(0));
        emit OwnerChanged(owner, _newOwner);
        owner = _newOwner;
        return true;
    }

    function enableTransfers(bool _transfersEnabled) onlyOwner public {
        transfersEnabled = _transfersEnabled;
    }

}
function() payable public {
    revert();
}

// fallback function can be used to buy tokens