contract PullPayment {

  modifier onlyNutz() {
      _;
  }
  
modifier onlyOwner() {
      _;
  }

  modifier whenNotPaused () {_;}

  function balanceOf(address _owner) constant returns (uint256 value);

  function paymentOf(address _owner) constant returns (uint256 value, uint256 date) ;

  /// @dev Allows to change the daily limit. Transaction has to be sent by wallet.
  /// @param _dailyLimit Amount in wei.
  function changeDailyLimit(uint _dailyLimit) public ;

  function changeWithdrawalDate(address _owner, uint256 _newDate)  public ;

  function asyncSend(address _dest) public payable ;


  function withdraw() public ;

  /*
   * Internal functions
   */
  /// @dev Returns if amount is within daily limit and resets spentToday after one day.
  /// @param amount Amount to withdraw.
  /// @return Returns if amount is under daily limit.
  function isUnderLimit(uint amount) internal returns (bool);

}
/**
 * @title PullPayment
 * @dev Base contract supporting async send for pull payments.
 */
function isUnderLimit(uint amount) internal returns (bool);

/// @dev Returns if amount is within daily limit and resets spentToday after one day.
/// @param amount Amount to withdraw.
/// @return Returns if amount is under daily limit.