I have a list that is something like this:

```
[{datetime.date(2014, 2, 13): [datetime.time(13, 53, 53), datetime.time(13, 7, 52), datetime.time(12, 43, 35), datetime.time(12, 3, 14), datetime.time(11, 54, 53), datetime.time(10, 52, 42), datetime.time(10, 46, 3), datetime.time(10, 32, 50), datetime.time(10, 32, 38), datetime.time(10, 27, 38), datetime.time(10, 13, 50), datetime.time(10, 9, 59), datetime.time(10, 9, 48), datetime.time(10, 7, 42), datetime.time(10, 7, 20), datetime.time(10, 5, 5)]}

```

I want to slot the entire thing into slots of 3 hours, such that it can be displayed as:

```
datetime.date(2014, 2, 14):

time-slot : 
        datetime.time(0,0,0) - datetime.time(3,0,0)
           .
           . #all times in this slot
        datetime.time(3,0,0) - datetime.time(6,0,0)
           .
           . #all times in this slot

```

and so on..
 I don't quite understand how to go about it. Can anyone help with some hints, or some algo, for me to understand how to do this?