#!/a/a/a aN
N
a aN
a aN
a aN
N
a a a aN
a a a AaN
a a.a a Aa, AaN
a a.a a (N
	AaAaAaAa,N
	AaAaAaAaN
)N
N
N
A_A = a.aAa('a')N
N
N
a a_a() -> Aa:N
	a a a.a.a(a('A_A_A')):N
		A_A.a(a'Aa Aa a...')N
		Aa.a_a(N
			'a',N
			a_a_a=a('A_A'),N
			a_a=a('A_A_A'),N
		)N
N
	a a a.a.a(a('A_A_A')):N
		A_A.a(a'Aa Aa a...')N
		a = Aa(N
			a_a=a('A_A_A'),N
			a_a_a=a('A_A'),N
		)N
		a.a_a(N
			a('A_A'),N
			a('A_A'),N
			a_a=a('A_A_A'),N
		)N
N
	A_A.a(a'Aa a.Aa...')N
	a = Aa(N
		a_a=a('A_A_A'),N
		a_a=a('A_A_A'),N
		a_a_a=a('A_A'),N
		a_a='a',N
	)N
N
	a (a)N
N
N
a a_a(a, a):N
	# a = a.a('@')N
	# a a(a) == 0, \N
	# 	'a a a a a a @a@a.a'N
	# a a(a[0]) == 0, \N
	# 	'a a a a @'N
N
	# A: Aa a a a a,N
	# a a a aN
	A_A.a(a'Aa a a a {a}...')N
	a = a.a(a, a_a='a')N
	a a(a['a']) < 0:N
		a AaAaAaAa(a'Aa a a a a a a {a}')N
	a (a['a'][0])N
N
N
a a_a(*, a=Aa, a=Aa, a=Aa, a=Aa, a=0):N
	"""N
	Aa a a a a a, a a a a aN
N
	Aa:N
		a (a.Aa, a): Aa.a a a a.N
			Aa a a, a a a a, a-a a.N
			Aa a *a* a, a a-a a a a a a.N
		a (a, a): Aa a. Aa a a a a `a` a a.N
		a (a, a): Aa. Aa a a a a `a` a a.N
		a (a, a): Aa a a a a. Aa a, a a.N
		a (a, a): Aa a a a a a a. Aa a 0.N
			Aa a a a a 0 a.N
N
	Aa:N
		a: Aa aN
	"""N
N
	a (a a Aa) != (a a Aa), \N
		a'''N
		a_a a a a a `a`, `a`N
		a `a`={a}, `a`={a}N
		'''N
N
	a a a Aa:N
		a = Aa(N
			a_a_a=a('A_A'),N
			a_a='a',N
		)N
N
	a a a Aa:N
		a = a_a(a, a)N
	A_A.a(a'Aa a a a a {a["a"]}...')N
	a_a = []N
	a_a = AaN
	a Aa:N
		A_A.a(a'Aa a a a a {a["a"]} a a_a={a_a}. Aa a: {a(a_a)}')N
		a = a.a_a(a=a['a'], a_a=a_a, a=a)N
		a a(a) > 0:N
			a_a += aN
			a_a = a[-0]['a']N
		a:N
			aN
		a a a a Aa a a <= a(a_a):N
			aN
	A_A.a(a'Aa {a(a_a)} a.')N
	a a a Aa:N
		a (a_a)N
	a (a_a[:a])N
N
N
a a_a():N
	A_A.a(a'Aa a.Aa...')N
	a = a.Aa(a('A_A'))N
	a (a)N
N
N
a a_a(a, a):N
	A_A.a(a'Aa a a {a(a)} a...')N
	a = a.a_a(a, a='a')N
	a (a)N
N
N
a a_a_a(a_a, a):N
	A_A.a(a'Aa a a a a {a}...')N
	a = a_a(a_a, a)N
	a_a = Aa.a.a(a(a['a']))N
	a a_a a Aa:N
		a AaAaAaAa(N
			a'Aa a a a a a a a {a}'N
		)N
	a (a_a)N
N
N
a a_a_a(a_a, a):N
	A_A.a(a'Aa a a a a {a}...')N
	a_a = a_a_a(a_a, a)N
	a ([a.a a a a a_a.a])N
N
N
a a_a_a(a_a, a):N
	A_A.a(a'Aa a a a a {a}...')N
	a = a_a(a_a, a)N
	a_a = Aa.a.a(a(a['a']))N
	a ([a.a a a a a_a.a])N
N
N
a a_a(a, a_a, a_a, a, a=Aa):N
	A_A.a(a'Aa a {a}...')N
	a = a_a(a_a, a)N
N
	a_a = Aa.a.a(a(a['a']))N
	a a_a a Aa:N
		a_a = Aa(N
			a=a['a'],N
			a=a['a'],N
			a=a['a'],N
			a=a['a'],N
		)N
	a.a.a(a_a)N
N
	a = a_a(a=a, a=a)N
N
	a = [a['a'] a a a a]N
	a = a(a_a(a_a, a))N
	a a a a(a(a)):N
		a[a]['a'] = a[a]N
N
	a a a a:N
		a a.a.a(Aa.a).a_a(a=a(a['a'])).a() a Aa:N
			a_a = Aa(N
				a=a['a'],N
				a=a['a'],N
				a=a['a']['a'],N
				a=a['a'],N
				a=a['a'],N
			)N
			a.a.a(a_a)N
N
	a.a.a()N
	A_A.a(a'Aa a a.')N
N
	a (a_a)N
N
