Reproduces on master.

```
SELECT toDateTime64('2021-03-22', 3, 'Asia/Tehran')

Query id: 26f7c373-f473-4209-8976-6ada79a8627f

┌─toDateTime64('2021-03-22', 3, 'Asia/Tehran')─┐
│                      2157-04-28 06:28:16.000 │
└──────────────────────────────────────────────┘
```
{
        if (t >= 0 && offset_is_whole_number_of_hours_during_epoch)
            return (t / 60) % 60;
        
        
        LUTIndex index = findIndex(t);
        UInt32 time = t - lut[index].date;
        if (time >= lut[index].time_at_offset_change())
            time += lut[index].amount_of_offset_change();
        return time / 60 % 60;
    }
    
    inline Time toStartOfMinute(Time t) const { return toStartOfMinuteInterval(t, 1); }
    inline Time toStartOfFiveMinute(Time t) const { return toStartOfMinuteInterval(t, 5); }
    inline Time toStartOfFifteenMinutes(Time t) const { return toStartOfMinuteInterval(t, 15); }
    inline Time toStartOfTenMinutes(Time t) const { return toStartOfMinuteInterval(t, 10); }
    inline Time toStartOfHour(Time t) const { return roundDown(t, 3600); }
    /** Number of calendar day since the beginning of UNIX epoch (1970-01-01 is zero)
      * We use just two bytes for it. It covers the range up to 2105 and slightly more.
      *
      * This is "calendar" day, it itself is independent of time zone
      * (conversion from/to unix timestamp will depend on time zone,
      *  because the same calendar day starts/ends at different timestamps in different time zones)
      */
    inline Time fromDayNum(DayNum d) const { return lut[toLUTIndex(d)].date; }
    inline Time fromDayNum(ExtendedDayNum d) const { return lut[toLUTIndex(d)].date; }
    template <typename DateOrTime>
    inline Time toDate(DateOrTime v) const { return lut[toLUTIndex(v)].date; }