#!/usr/bin/perl -w
use strict;
use DateTime;

YEAR:
for my $year (reverse 1964..2006) {

    for my $day (1..31) {

        my $dt = DateTime->new(
          year   => $year,
          month  => 3,
          day    => $day,
          hour   => 0,
          minute => 59,
          second => 59,
          time_zone => "Europe/London",
        );

        $dt->add(hours => 3, seconds => 1);

        if($dt->hour() == 5) {
            print "$year: DST\n";
            next YEAR;
        }
    }
    print "$year: No DST\n";
    last;
}
