#ifndef PERSON_H
#define PERSON_H

#include <string>
#include "Date14.h"
using std::string;

class Person {

private:
  string name;
  string first;
  Date birth;

public:
  // constructor
  Person(const string& n, const string& fn, int y, int m, int d)
    : name(n), first(fn), birth(y, m, d)
  {}

  // destructor
  ~Person(void) {}

  // access functions
  const string& lastName(void) const {return name;}
  const string& firstName(void) const {return first;}
  const Date& birthday(void) const {return birth;}

  // comparison operators
  bool operator<=(const Person& rhs) const {
    return ((lastName() < rhs.lastName()) ||
            ((lastName() == rhs.lastName()) &&
             (firstName() <= rhs.firstName())));
  }
};


#endif /* PERSON_H */