contract LockFunds is Ownable {
  event Lock();
  event UnLock();

  bool public locked = true;


  /**
   * @dev modifier to allow actions only when the funds ARE locked
   */
  modifier whenNotLocked() {
    require(!locked);
    _;
  }

  /**
   * @dev modifier to allow actions only when the funds ARE NOT locked
   */
  modifier whenLocked() {
    require(locked);
    _;
  }

  /**
   * @dev called by the owner to lock, triggers locked state
   */
  function lock() onlyOwner whenNotLocked {
    locked = true;
    Lock();
  }

  /**
   * @dev called by the owner to unlock, returns to normal state
   */
  function unlock() onlyOwner whenLocked {
    locked = false;
    UnLock();
  }
}
/**
 * @title LockFunds
 * @dev Base contract which allows children to lock funds.
 * Funds are locked in contributors' wallets since ICO end. On 6th March 2018 funds will be transferable
 */
function lock() onlyOwner whenNotLocked {
  locked = true;
  Lock();
}

/**
 * @dev called by the owner to lock, triggers locked state
 */