contract theCyberInterface {
  // The utility contract can call the following methods of theCyber.
  function newMember(uint8 _memberId, bytes32 _memberName, address _memberAddress) public;
  function proclaimInactive(uint8 _memberId) public;
  function heartbeat() public;
  function revokeMembership(uint8 _memberId) public;
  function getMembershipStatus(address _memberAddress) public view returns (bool member, uint8 memberId);
  function getMemberInformation(uint8 _memberId) public view returns (bytes32 memberName, string memberKey, uint64 memberSince, uint64 inactiveSince, address memberAddress);
  function maxMembers() public pure returns(uint16);
  function inactivityTimeout() public pure returns(uint64);
  function donationAddress() public pure returns(address);
}
function newMember(uint8 _memberId, bytes32 _memberName, address _memberAddress) public;

// The utility contract can call the following methods of theCyber.