Using idlemeter to correctly estimate the last two sleep periods sleep.yaml is missing

% irb -Iruby -ridlemeter -ryaml -rpp -ractive_support
>> sleepdata = YAML.load_file File.expand_path('~/.mnt/alku/home/ion/media/text/sleep.yaml')

>> pp sleepdata
[{"sleep"=>Mon Sep 08 15:00:00 +0300 2008},
 {"wake"=>Tue Sep 09 10:00:00 +0300 2008},
 {"sleep"=>Tue Sep 09 14:00:00 +0300 2008},
 {"wake"=>Tue Sep 09 21:00:00 +0300 2008},
 {"sleep"=>Wed Sep 10 00:30:00 +0300 2008},
 {"wake"=>Wed Sep 10 14:00:00 +0300 2008},
 {"sleep"=>Thu Sep 11 00:30:00 +0300 2008},
 {"wake"=>Thu Sep 11 14:30:00 +0300 2008},
 {"sleep"=>Fri Sep 12 16:30:00 +0300 2008},
 {"wake"=>Sat Sep 13 03:30:00 +0300 2008}]

>> last_sleep = sleepdata[-2]['sleep']
=> Fri Sep 12 16:30:00 0300 2008

>> IdleMeter::Analyze.intervals do |interval|
?>   if interval.mode == :idle and interval.length >= 5.hours and
?>      interval.from >= last_sleep + 1.day - 3.hours and
?>      interval.from <  last_sleep + 2.days - 6.hours
>>     last_sleep = interval.from
>>     puts "Sleep: #{interval}"
>>   end
>> end
Sleep: idle   2008-09-14 00:07:15 +0300 – 2008-09-14 12:44:41 +0300 (12.6 hours)
Sleep: idle   2008-09-15 13:05:03 +0300 – 2008-09-15 23:37:18 +0300 (10.5 hours)