class A:
    def __init__(self, txt: str):
        self.u: A = None
        self.t: B = None
        self.txt = txt

class B:
    def __init__(self, txt: str):
        self.p: A = None
        self.txt = txt

m = A("m")
d = B("d")
l = B("l")
b = A("b")
g = B("g")
n = A("n")
h = A("h")
f = B("f")

m.u = b
m.t = g
d.p = h
l.p = n
b.u = m
b.t = d
g.p = h
n.u = m
n.t = l
h.u = b
h.t = l
f.p = m
assert m.t.p.t.p.t.p.txt == "
class A:
    def __init__(self, txt: str):
        self.u: A = None
        self.t: B = None
        self.txt = txt

class B:
    def __init__(self, txt: str):
        self.p: A = None
        self.txt = txt

m = A("m")
d = B("d")
l = B("l")
b = A("b")
g = B("g")
n = A("n")
h = A("h")
f = B("f")

m.u = b
m.t = g
d.p = h
l.p = n
b.u = m
b.t = d
g.p = h
n.u = m
n.t = l
h.u = b
h.t = l
f.p = m
assert m.t.p.t.p.t.p.txt == "n"