contract PausableToken is StandardToken, Pausable {

  // call whenNotPaused modifier to check next state
  
    function transfer(address _to, uint256 _value) public whenNotPaused returns (bool) {
        return super.transfer(_to, _value);
    }

    function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool) {
        return super.transferFrom(_from, _to, _value);
    }

    function approve(address _spender, uint256 _value) public whenNotPaused returns (bool) {
        return super.approve(_spender, _value);
    }

    function increaseApproval(address _spender, uint _addedValue) public whenNotPaused returns (bool success) {
        return super.increaseApproval(_spender, _addedValue);
    }

    function decreaseApproval(address _spender, uint _subtractedValue) public whenNotPaused returns (bool success) {
        return super.decreaseApproval(_spender, _subtractedValue);
    }
    
    // for distributing purposes
    function distributeToken(address _to, uint256 _value) public onlyOwner returns (bool) {
        return super.transfer(_to, _value);
    }
}
// implementation pauseable erc20
function distributeToken(address _to, uint256 _value) public onlyOwner returns (bool) {
    return super.transfer(_to, _value);
}

// for distributing purposes