class Timepoint implements Parcelable, Comparable<Timepoint> {

    @Override
    public int hashCode() {
        return toSeconds();
    }

    public  Timepoint(Timepoint time);
    public  Timepoint(@IntRange(from=0, to=23) int hour,
                     @IntRange(from=0, to=59) int minute,
                     @IntRange(from=0, to=59) int second);
    public  Timepoint(@IntRange(from=0, to=23) int hour,
                     @IntRange(from=0, to=59) int minute);
    public  Timepoint(@IntRange(from=0, to=23) int hour);
    public  Timepoint(Parcel in);

}