chore: do not pass pairing as mut
refactor: abstract pairing to n-ary
chore: move env to codes/eoa_lib
feat: add pairing of parents