class MetaTwo(type):
    def __new__(meta, classname, supers, classdict):
        print()
        print('W MetaTwo.new:', meta, classname, supers, classdict, sep='\n...')
        return type.__new__(meta, classname, supers, classdict)

    def __init__(Class, classname, supers, classdict):
        print()
        print('W MetaTwo.init:', Class, classname, supers, classdict, sep='\n...')
        print('...obiekt zainicjalizowanej klasy:', list(Class.__dict__.keys()))

class Super:
    pass

print('\nTworzenie klasy')
class Hack(Super, metaclass=MetaTwo):     # Dziedziczy po Super, instancji Meta
    data = 1                              # Atrybut danych klasy
    def meth(self, arg):                  # Atrybut metody klasy
       return self.data + arg

print('\nTworzenie instancji')
X = Hack()
print('Attrybuty:', X.data, X.meth(2))

