#!/usr/bin/python

import time

from pprint import pformat as pf


class TheCounter:
    Counters = {}

    def __init__(self):
        start_time = time.time()
        for counter in range(170000):
            self.print_it(counter)
        self.time_took = time.time() - start_time
        TheCounter.Counters[self.__class__.__name__] = self.time_took


class PrintAll(TheCounter):
    def print_it(self, counter):
        print(counter)


class PrintSome(TheCounter):
    def print_it(self, counter):
        if counter % 1000 == 0:
            print(counter)


class PrintNone(TheCounter):
    def print_it(self, counter):
        pass


def new_main():
    print("Running new_main")
    tests = [PrintAll, PrintSome, PrintNone]
    for test in tests:
        test()

    print(pf(TheCounter.Counters))


if __name__ == '__main__':
    new_main()
