contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;
  
//@dev Modifier to make a function callable only when the contract is not paused.
  modifier whenNotPaused() {
    require(!paused);
    _;
  }


//@dev Modifier to make a function callable only when the contract is paused.
  modifier whenPaused() {
    require(paused);
    _;
  }


//@dev called by the owner to pause, triggers stopped state
  function pause() onlyOwner whenNotPaused public {
    paused = true;
    emit Pause();
  }


//@dev called by the owner to unpause, returns to normal state
  function unpause() onlyOwner whenPaused public {
    paused = false;
    emit Unpause();
  }
}
function unpause() onlyOwner whenPaused public {
  paused = false;
  emit Unpause();
}

//@dev called by the owner to unpause, returns to normal state