class Timer {

    public boolean set(long duration, long error) {
        if (error < clock.getGranularity()) return false;
        wasSet = true;
        targetElapsedTime = new DiscreteInterval(duration - error, duration + error);
        return true;
    }

    public  Timer();
    public  Timer(HardwareClock clock);

}