# consistency: Hecke counts are constant on each relpos class (necessary for the classes to be I-orbits)
import sys
sys.argv=[sys.argv[0],sys.argv[1],sys.argv[2]]
exec(open('tree_check.py').read().split("# orbit representatives")[0])
from collections import Counter
pan={1:[(v0,w) for w in nbrs(v0)], 0:[(w,v1) for w in nbrs(v1)]}
C0=(v0,v1)
seen={}
ok=True
for g in geos:
    O=relpos(C0,g)
    if O not in ('P','M') and O[1]>R-3: continue
    sig=tuple(tuple(sorted(Counter(str(relpos(C,g)) for C in pan[s] if C!=C0).items())) for s in (0,1))
    if O in seen and seen[O]!=sig: ok=False
    seen[O]=sig
print("counts constant on classes:",ok, "classes:",len(seen))
