summaryrefslogtreecommitdiff
path: root/2024
diff options
context:
space:
mode:
authornekineki <nekineki@nekineki.net>2024-12-26 20:58:23 +0100
committernekineki <nekineki@nekineki.net>2024-12-26 20:58:23 +0100
commit56f2593cf101f1812547d121b6811fcdc69413c4 (patch)
tree74b66d257d193390642a6857065180a499e400b9 /2024
parent85920352be355ef7f987aba01d6ce3bfc6be5ff6 (diff)
day23 part1
Diffstat (limited to '2024')
-rw-r--r--2024/day23.rs57
-rw-r--r--2024/in/day23.pzl3380
-rw-r--r--2024/in/day23.ref32
3 files changed, 3469 insertions, 0 deletions
diff --git a/2024/day23.rs b/2024/day23.rs
new file mode 100644
index 0000000..65ed1a0
--- /dev/null
+++ b/2024/day23.rs
@@ -0,0 +1,57 @@
+#![allow(dead_code)]
+#![allow(unused_variables)]
+#![allow(unused_mut)]
+use std::collections::HashMap;
+use std::collections::HashSet;
+use std::env;
+use std::fs::File;
+use std::io::Read;
+
+fn main() {
+ let args: Vec<String> = env::args().collect();
+ let filename = if args.len() == 1 {
+ "in/".to_owned() + args[0].split('/').last().unwrap() + ".pzl"
+ } else {
+ args[1].clone()
+ };
+ let mut f = File::open(filename).expect("cannot open file");
+ let mut content = String::new();
+ f.read_to_string(&mut content).expect("cannot read file");
+ let lines = content.trim_end().split("\n");
+
+ let mut nodes: HashMap<&str, HashSet<&str>> = HashMap::new();
+ let mut conns: HashSet<(&str, &str)> = HashSet::new();
+ for line in lines {
+ let (a, b) = line.split_once("-").unwrap();
+ nodes.entry(a).or_default().insert(b);
+ nodes.entry(b).or_default().insert(a);
+ conns.insert((a, b));
+ }
+ println!("{:?}", nodes);
+
+ let mut triplets: HashSet<Vec<&str>> = HashSet::new();
+ for n0 in nodes.keys() {
+ if n0.starts_with("t") {
+ for n1 in &nodes[n0] {
+ for n2 in &nodes[n1] {
+ for n3 in &nodes[n2] {
+ if n0 == n3 {
+ let mut v = [*n0, *n1, *n2].to_vec();
+ v.sort();
+ println!("{:?}", v);
+ triplets.insert(v);
+ }
+ }
+ }
+ }
+ }
+ }
+ let res1 = triplets.len();
+
+ let mut res2 = 0;
+
+ println!("res1: {}", res1);
+ println!("res2: {}", res2);
+ //assert_eq!(res1, );
+ //assert_eq!(res2, );
+}
diff --git a/2024/in/day23.pzl b/2024/in/day23.pzl
new file mode 100644
index 0000000..c64ff46
--- /dev/null
+++ b/2024/in/day23.pzl
@@ -0,0 +1,3380 @@
+lr-cd
+ov-ht
+ye-qd
+dy-rp
+gn-hz
+ut-rf
+cv-me
+zd-xk
+oc-ur
+ap-ak
+ij-ov
+nf-vh
+sh-cs
+fe-lv
+th-gk
+qm-fy
+gm-ff
+dg-yf
+hg-bg
+co-bx
+gh-ui
+fe-mc
+hx-on
+sn-wc
+jx-kv
+ql-ve
+fg-uv
+ts-ef
+gj-js
+lu-hq
+og-by
+pb-td
+ja-vw
+ro-xj
+dk-ut
+cn-hi
+fd-gb
+ma-ct
+mu-wz
+dd-xt
+qz-yt
+ay-dh
+ie-yz
+bq-kl
+sb-vf
+lo-is
+kl-lv
+ej-sc
+rx-yh
+tv-zp
+sq-tq
+pv-kg
+rk-nf
+xm-pz
+px-hp
+nn-hz
+sh-rx
+ps-tg
+lj-cp
+vj-cq
+ny-ka
+eb-zd
+ea-we
+ic-tn
+yu-cj
+lu-lk
+bl-rn
+qo-ze
+cw-qi
+cu-qo
+ao-ww
+ub-it
+gi-ug
+zv-ai
+zj-fv
+sg-ny
+hi-ex
+os-ow
+pk-ym
+jw-at
+ge-hz
+tl-dt
+ms-ks
+ho-yu
+hg-ii
+mz-ob
+hb-wa
+qd-qe
+ps-sv
+ou-ne
+gq-ka
+tc-fa
+lq-fd
+ko-dt
+pu-ce
+dy-hz
+ew-ev
+sm-cv
+tw-gn
+mf-pr
+dq-pr
+lm-it
+cv-vg
+tv-cj
+jg-fi
+ch-te
+oi-kh
+su-xd
+jn-pb
+ij-yi
+pa-br
+ix-bx
+ow-xr
+tv-ob
+bv-fd
+qi-rz
+qo-vm
+xw-lz
+jg-dj
+hj-nj
+xc-ez
+uh-dq
+vr-fg
+pu-mk
+qk-bg
+ml-ob
+ux-eg
+ik-jj
+yc-mv
+kn-xj
+rb-hm
+pm-qh
+vb-ks
+ej-wd
+qj-ne
+aj-bp
+cm-ws
+ef-yf
+rt-cw
+up-vf
+dq-yx
+rp-jp
+sy-iu
+xs-wp
+no-zq
+rq-sc
+ox-hq
+yc-ix
+nm-wc
+rq-so
+mk-go
+ga-yd
+lr-kg
+oa-bv
+sm-hn
+vr-zh
+ug-kx
+vb-ns
+fy-ui
+wt-mn
+aw-yo
+sj-nr
+mu-mf
+ln-cf
+ns-hm
+gq-ro
+oc-pk
+gp-wb
+xh-qm
+we-vt
+fn-be
+ni-vx
+zb-ld
+xt-ug
+om-pz
+zo-gn
+cu-bm
+uh-ly
+jf-tv
+ep-ik
+jf-yu
+xt-sd
+dd-ug
+tt-jo
+qz-iu
+cz-ox
+oh-xc
+sb-ph
+zh-gn
+ks-sc
+hr-cl
+cj-zp
+hv-cs
+xm-az
+ed-fs
+lf-ek
+gj-nv
+cg-ky
+lp-ib
+fy-al
+ht-wu
+dj-lb
+jn-ez
+oa-wr
+ji-ad
+lr-dl
+kg-fr
+ua-sa
+zm-ic
+ge-ai
+vy-is
+jr-cv
+gi-el
+wa-qe
+aw-db
+ul-jx
+tw-ul
+ko-hx
+hc-lm
+wj-uy
+ud-na
+uc-zd
+qe-jr
+mv-kt
+la-rk
+fk-jm
+ng-op
+or-im
+bk-yf
+wx-xs
+es-qi
+rf-mk
+zb-oy
+un-so
+kv-kc
+jy-qu
+uf-qo
+mz-nu
+qb-ua
+rg-iq
+fb-ee
+jy-ze
+up-sb
+il-rg
+es-rt
+jz-zo
+pk-rx
+ng-fn
+fe-vw
+fb-hg
+eh-wt
+cp-xw
+xq-zt
+ox-lk
+ql-xt
+uy-sg
+no-ew
+as-xm
+td-eg
+ap-ox
+ep-sb
+so-ks
+oh-eg
+yq-cn
+sq-km
+lj-vs
+gp-aj
+nc-vz
+dt-lp
+gb-ek
+aw-kk
+cc-lj
+ui-ri
+fe-fj
+xs-ef
+sc-rb
+sg-ca
+eg-yw
+fg-of
+wq-wt
+lv-wc
+fp-ix
+ja-kl
+la-nz
+ma-pr
+ze-cl
+qs-ow
+ww-im
+kb-iv
+ga-mg
+xi-vx
+ds-fn
+oj-ht
+oz-bq
+vh-dh
+wa-mm
+ie-br
+gb-zr
+ue-ic
+wn-dr
+oe-ue
+ss-fb
+pw-jw
+hv-yl
+ax-rw
+cz-ak
+he-do
+cn-ob
+cp-bh
+qt-rm
+ai-jj
+sy-oz
+bt-ud
+yh-pk
+cv-tn
+xg-tc
+um-as
+ii-fb
+bs-oz
+nv-ag
+ir-ke
+as-hc
+ax-qf
+ax-il
+tv-dj
+in-nn
+bl-ro
+sp-fd
+ec-ny
+hv-wr
+dt-lb
+cg-zg
+jy-vm
+la-fs
+od-ur
+oj-zj
+xu-km
+kp-dg
+pn-gr
+wd-rb
+eb-ni
+fz-vo
+ui-ei
+fs-nf
+yn-uh
+bv-ek
+fk-ai
+xi-jo
+cm-cf
+nj-ph
+vd-so
+ip-bh
+uh-oy
+yn-wz
+cx-wn
+al-jf
+zb-xf
+xh-xi
+xd-px
+kb-om
+qu-bm
+hd-da
+mv-mw
+ri-fy
+pz-um
+ge-nn
+uv-wj
+cx-bd
+fa-li
+th-nh
+yr-nl
+vc-wc
+uf-cu
+bt-fp
+lp-ko
+ax-rg
+cu-ly
+pj-ax
+fa-fn
+bg-ii
+ek-qv
+ni-wc
+ag-ua
+sv-wt
+cd-pv
+gb-oa
+jn-ux
+we-fs
+ei-tt
+ns-vd
+hq-rr
+pg-ro
+bl-ec
+zq-wf
+hq-ap
+bl-ka
+ly-ou
+ly-yn
+oc-aj
+ge-jm
+nu-ko
+qg-jq
+ji-ag
+mu-yx
+he-aw
+ox-kc
+us-wf
+ce-rf
+pe-oa
+ma-yk
+sm-ue
+gd-ss
+xl-kr
+gi-pz
+kt-na
+pe-fd
+kr-nc
+jw-yr
+qk-vq
+yn-ou
+pg-rn
+kl-ar
+cz-hq
+fa-di
+px-zq
+db-zm
+zv-mm
+yi-nb
+se-rf
+ii-md
+qe-yp
+kw-qn
+sh-yl
+in-zv
+hx-tl
+be-di
+vs-qy
+xg-op
+fu-wa
+vf-aq
+oi-po
+de-us
+xr-kw
+sz-bj
+se-ce
+ff-ot
+yd-fv
+oc-vo
+lt-xr
+nl-jw
+sd-ql
+kt-iu
+mk-se
+os-xr
+wq-ok
+go-ia
+dq-mf
+kr-px
+so-rb
+ps-ok
+jk-wb
+ak-kd
+qp-tj
+uf-jy
+jz-ge
+vx-zd
+ef-wp
+kc-hi
+zw-ul
+nw-wn
+ps-bj
+te-vw
+ad-kz
+ae-sv
+xh-ui
+xe-ux
+aw-do
+iv-se
+he-kk
+lv-sf
+cw-ph
+ch-ar
+kp-yf
+pa-yo
+zq-kr
+cm-yr
+el-ty
+hv-yh
+bp-ru
+yp-hb
+bh-lz
+sh-jq
+ae-sz
+qz-co
+sx-ym
+ya-ym
+su-no
+ln-he
+fk-hz
+hi-zw
+ho-zp
+uq-ij
+ww-or
+ay-ed
+ai-hz
+rk-ay
+ss-yi
+pw-el
+kc-cn
+zw-ml
+bm-lr
+lk-ap
+sy-ws
+zr-qv
+bo-cj
+fe-uk
+lm-um
+gj-ji
+zr-lf
+gk-ao
+yh-yl
+vq-ii
+co-bt
+qk-ee
+mz-hi
+ds-nh
+ly-mu
+nt-hp
+ts-me
+rj-sz
+ch-kl
+oe-cv
+dl-pv
+qf-rg
+tn-oe
+vw-mc
+pg-ca
+yp-mm
+nu-ff
+nt-no
+dg-bk
+fh-jr
+hd-lo
+ot-ko
+rc-jw
+nb-fb
+wx-bk
+oi-th
+pe-qv
+ku-yu
+ql-gi
+fg-wj
+la-xm
+qs-os
+hx-lb
+ew-xl
+rq-hm
+qb-ub
+gq-kn
+be-li
+ec-ca
+op-be
+rg-fg
+tw-kv
+wc-vx
+bm-xz
+lb-nu
+kl-fe
+jk-fz
+xp-rz
+bm-ck
+pk-yl
+lb-ot
+sz-ok
+sh-qg
+gj-ua
+fi-cj
+qq-ua
+bq-cm
+hn-vc
+rr-qq
+dk-mk
+km-bd
+ej-ya
+zf-wq
+di-fn
+rn-xj
+jg-zp
+xk-eb
+gb-rw
+xe-yw
+kp-bk
+ln-yr
+wd-hm
+uo-jo
+de-yt
+bq-ws
+ch-fe
+pu-kb
+dq-yk
+bg-ss
+yh-bk
+fo-xb
+wd-ks
+fs-hr
+vj-gp
+uo-xi
+rr-tt
+js-au
+br-aw
+ps-zf
+xd-zq
+ea-vh
+ru-jk
+lb-bf
+xd-ev
+lq-qv
+or-nh
+vw-ch
+wq-ae
+lx-vx
+gb-wr
+ap-rr
+kg-cd
+qu-qo
+xc-xe
+dh-we
+kh-fx
+uo-fy
+gm-ko
+hv-pk
+kw-ne
+sg-ec
+zy-vu
+dx-bm
+bl-ny
+xf-lr
+ai-xl
+er-zd
+gk-qt
+fx-vf
+zg-ia
+zd-hn
+de-nr
+fs-rk
+fv-ht
+wl-aw
+fg-qh
+ea-af
+wr-pe
+kg-oy
+nb-ii
+hl-hc
+id-fr
+ec-gq
+cl-xz
+cm-nl
+de-sj
+dr-tj
+cp-da
+ub-au
+fp-mv
+cx-hy
+jj-up
+mf-uh
+cq-bp
+ad-au
+ir-os
+me-yf
+zk-er
+dk-mp
+gb-pe
+af-fs
+ii-ce
+og-it
+xr-ke
+xy-ag
+ei-fy
+rw-uy
+ed-ea
+ho-ku
+ke-kw
+ee-vq
+da-lz
+gq-kv
+gt-eg
+vp-kp
+nn-zo
+lf-oa
+rc-eb
+fk-dw
+jk-ur
+pm-hb
+hz-zh
+bd-bn
+lz-qy
+it-as
+hx-dt
+fr-pv
+lm-om
+mg-zj
+ku-tv
+jx-tw
+oj-wu
+mg-fv
+nf-af
+xu-tf
+li-ds
+to-pw
+su-nt
+sg-ka
+ul-ex
+gn-ai
+ph-up
+rq-vd
+ek-pt
+eh-bj
+mp-pu
+sn-vx
+tn-jp
+ca-bl
+ty-xt
+jp-zm
+gm-on
+ub-ag
+rn-vq
+ph-tf
+kv-ml
+ip-lj
+gh-ty
+sd-fo
+xd-hp
+ao-po
+tn-ue
+kb-go
+kg-zb
+wz-yk
+jg-bo
+ii-hr
+ed-la
+xs-kp
+ji-ub
+qy-lj
+we-vh
+ku-zp
+cc-xw
+uh-ou
+wl-ie
+hm-un
+vp-ef
+cd-bn
+tf-nj
+ua-js
+do-yz
+mr-jf
+qd-mm
+gn-in
+kz-ub
+pg-ny
+sj-zn
+bn-xu
+pw-ug
+wc-lx
+pw-kx
+cz-xq
+th-kh
+jy-xz
+lm-xm
+iz-mr
+pu-wq
+ts-gr
+ww-fx
+dy-jp
+vo-cf
+jp-pf
+ga-wu
+uk-gu
+ee-yi
+ix-kt
+wd-co
+fi-ho
+by-om
+ch-pf
+ec-px
+wt-zf
+qg-pk
+ug-sd
+om-xm
+xg-li
+ob-hi
+ve-gi
+ow-iz
+xw-bh
+zf-sv
+kt-bx
+pe-pt
+mc-uk
+lr-fr
+ph-hj
+co-ix
+se-pu
+ck-uf
+aq-tf
+gp-fz
+jn-xc
+jr-fu
+rx-jq
+ro-kn
+ed-af
+uq-es
+yc-yt
+jp-ue
+wu-us
+fg-rw
+up-zc
+mp-se
+xm-um
+ka-pg
+ue-dy
+qk-md
+ei-ct
+ux-vy
+ov-ib
+is-vs
+xy-ji
+xs-gr
+bg-ee
+kg-xf
+qg-rx
+nm-zd
+cg-zb
+wq-sz
+lb-lp
+ng-li
+ug-ql
+qk-yi
+wf-yd
+ed-dh
+jf-fi
+ic-sm
+vt-la
+la-we
+ut-ia
+nh-ww
+jf-zp
+cu-ck
+nf-ea
+nb-hg
+bo-zp
+bq-ln
+bm-qo
+dy-dv
+ct-ly
+vh-ed
+ou-ty
+iw-lb
+rk-ed
+to-ve
+lf-qv
+ow-hc
+pr-wz
+wu-fv
+jo-qm
+se-zg
+yw-ux
+wx-ts
+cx-km
+pt-sp
+zt-kd
+dy-cv
+fb-ww
+im-po
+vq-hg
+rb-ms
+gt-jn
+rp-ix
+in-fk
+ao-th
+yw-jn
+zv-gn
+ei-qm
+no-ld
+vf-hj
+qv-gb
+tc-li
+jz-fk
+iw-bf
+pg-bl
+cp-cc
+fg-uy
+tt-xi
+gr-yf
+og-ys
+sa-or
+qi-ov
+vy-xc
+jk-cq
+eh-ae
+at-bq
+fy-ff
+ui-xi
+er-kk
+nu-gm
+xc-zy
+ia-kb
+bh-vs
+bg-nb
+fn-li
+fa-je
+ei-xh
+cg-kg
+pj-rg
+hq-zt
+zv-zo
+wr-fd
+xw-lo
+ya-cs
+ad-sa
+ke-qj
+on-nu
+ia-ce
+mg-oj
+ep-zc
+uo-gh
+ll-xg
+tq-mm
+il-wj
+qk-fb
+qi-mj
+xh-uo
+xr-ui
+ke-ne
+ks-ej
+sx-jq
+ck-tm
+zn-vx
+lx-xw
+cz-lu
+cp-zm
+oe-sm
+uf-ze
+mm-qe
+oj-de
+vy-oh
+ob-ul
+fx-rm
+xk-vc
+be-xg
+jz-in
+hc-by
+mr-ra
+lo-cc
+rq-rb
+yk-mf
+rw-vr
+oe-vg
+wf-nr
+fh-wa
+hd-vs
+bo-fh
+fx-po
+ye-ke
+fz-ur
+rr-lu
+xb-kd
+nv-qb
+px-vz
+ds-di
+qd-yp
+sd-gi
+ue-rp
+nh-im
+jw-ws
+se-kb
+oz-cm
+tl-gm
+xk-zn
+jf-ku
+oe-zm
+ia-iv
+kq-ro
+bg-md
+ak-xb
+ti-ro
+ow-lt
+cp-ip
+fy-gh
+mr-yk
+su-dk
+id-zb
+na-qz
+pj-xh
+de-ga
+ds-ng
+lz-hd
+gd-ee
+mn-sz
+be-fa
+wx-kp
+ch-mc
+vu-sx
+qq-xq
+mg-nr
+nb-md
+nm-vx
+ew-nt
+mw-di
+ai-jz
+sq-hy
+vd-ks
+tg-zf
+ua-kz
+po-kh
+ns-ej
+iz-qj
+kh-ao
+zw-yq
+xh-fy
+tc-fn
+ar-gu
+qq-xb
+aq-nj
+ui-jo
+pm-tq
+mr-ho
+pa-lj
+gp-jk
+qt-kh
+gt-xe
+mu-dq
+px-xl
+qz-bp
+db-er
+qn-qs
+dd-el
+pz-ys
+ne-xr
+fz-bp
+rr-kd
+by-it
+xk-nm
+ar-dg
+ow-qj
+wr-bf
+nm-vc
+eu-uq
+wn-rt
+po-th
+il-uv
+kn-qo
+fx-gk
+je-uc
+uc-nm
+js-nv
+yl-jq
+ud-qy
+bf-gm
+ib-rt
+rf-mp
+mw-op
+me-xs
+vq-yi
+vj-oc
+ce-dk
+rj-wt
+sv-rj
+kk-pa
+ct-yk
+la-vh
+ib-es
+oy-lr
+ty-kx
+qr-qh
+ql-kx
+lt-ne
+yz-yo
+zr-pt
+uy-rg
+eh-mn
+yc-na
+yh-jq
+az-ys
+tl-nu
+hp-no
+yr-rc
+kt-yt
+hz-in
+xz-vm
+qq-zt
+yu-zp
+nc-zq
+xd-no
+fu-tq
+fk-cj
+pt-gb
+vu-sh
+jr-hb
+tq-qe
+xw-vs
+jn-oh
+mv-yt
+rr-cz
+tg-bj
+lh-ov
+oi-im
+ar-sf
+hy-km
+wf-ht
+wz-ou
+xg-di
+ky-dl
+ae-mn
+oz-nl
+vj-bp
+gi-fo
+qg-cs
+kk-br
+yq-ul
+as-pz
+xw-is
+al-ui
+wj-ee
+fi-ku
+nh-fx
+kx-el
+cg-pv
+bt-kt
+fv-ga
+rx-vu
+ck-ze
+nr-oj
+kv-ob
+sv-wa
+eb-lx
+cz-ap
+te-uk
+ul-kx
+mp-zg
+ee-ii
+qu-cu
+db-yz
+nf-nz
+dg-wp
+ue-cv
+xp-lh
+lh-ij
+ea-la
+at-us
+cj-ra
+kz-sa
+oy-cg
+xl-ep
+no-ev
+fj-lv
+sf-vw
+tj-nw
+au-nv
+co-dq
+om-og
+yz-br
+rc-ln
+gt-xc
+qy-hd
+cg-cd
+jn-eg
+ox-qq
+tg-cz
+fx-qt
+xl-no
+sb-jj
+zn-zd
+vq-md
+ln-bs
+yt-iu
+lo-vs
+rj-mn
+nr-zj
+sr-qm
+ej-vd
+wf-fv
+cc-qy
+ed-nf
+it-ys
+ms-us
+bf-dt
+zr-lq
+fv-sj
+qy-xw
+oc-gp
+xz-qo
+mn-ok
+oy-fr
+hv-vu
+ic-vg
+ng-di
+ys-by
+cw-es
+gd-yi
+dr-bd
+xc-pb
+ar-mc
+ck-vm
+ox-lu
+vb-so
+wq-eh
+hb-qd
+cf-yr
+sh-sx
+ks-hm
+ew-zq
+jx-ml
+rj-tg
+uo-sr
+pz-hc
+qq-ak
+il-uy
+lf-nn
+dv-jp
+kk-yz
+ul-kc
+th-or
+ks-un
+ma-dq
+jz-uq
+he-zk
+ts-kp
+wa-qh
+lf-wr
+iq-vr
+ox-zt
+zo-jm
+qm-gh
+bf-on
+sx-pk
+rx-sx
+hd-ip
+qo-tm
+jw-sy
+ll-tc
+hl-it
+sx-cs
+xq-rr
+pa-zk
+wl-kk
+ui-uo
+nr-yd
+ll-ng
+kz-ag
+gi-xt
+fn-op
+wj-qf
+ny-th
+so-ns
+ut-mk
+rp-oe
+fv-sx
+hv-jq
+de-wf
+jz-dw
+od-wb
+mg-wf
+ve-sd
+sy-yr
+lx-zd
+li-je
+wn-km
+pb-xe
+dx-ck
+yn-tl
+js-gd
+ll-da
+iw-lp
+qg-hv
+qb-sa
+cv-dv
+ka-ca
+vb-do
+gh-ri
+sy-cm
+rj-ae
+cd-dl
+ar-fj
+ns-rq
+cj-mr
+jr-qr
+gk-nw
+qh-fu
+sf-te
+xf-id
+zc-au
+ew-kr
+ti-ep
+td-nr
+ms-un
+zt-cz
+js-sa
+fr-dd
+qp-wn
+mz-zw
+tc-be
+at-oz
+yh-ym
+bl-gq
+pa-yz
+oc-jk
+aj-jk
+yu-mr
+gp-od
+ja-gu
+qt-oi
+hb-qh
+dw-gn
+qg-vu
+zw-tw
+jg-yu
+kw-qs
+cw-uq
+pn-ef
+kh-ww
+jg-cx
+gm-ot
+ri-qm
+me-bk
+ot-lp
+qi-xp
+ue-pf
+rg-rw
+fj-gu
+ri-sr
+bn-nw
+vd-un
+jr-pm
+hr-md
+tv-ho
+rx-hv
+sb-nj
+bn-wn
+qh-tq
+jq-pk
+qp-kq
+lt-qn
+sy-rc
+td-xe
+mr-jg
+qj-xr
+la-dh
+lq-qe
+ud-yc
+li-op
+iu-co
+ku-mr
+ug-ve
+ve-kx
+sf-lz
+ux-oh
+sv-sz
+aw-zk
+om-it
+ys-um
+rz-jx
+lm-og
+xu-hy
+to-fo
+ti-vf
+ri-uo
+pz-by
+vm-cl
+bn-gc
+mj-es
+ya-sx
+nb-qk
+lr-ky
+cu-dx
+ag-gj
+lp-bf
+tn-rp
+pn-bk
+xw-lj
+na-yt
+ml-ex
+it-pz
+xe-zy
+gu-fe
+lu-ak
+fk-zo
+ux-zy
+ll-je
+ti-zc
+ne-iz
+zv-jm
+vb-wd
+lz-lo
+lf-sp
+yo-he
+nb-vq
+pf-zm
+pj-qf
+ck-cl
+ip-xw
+au-xy
+pv-xf
+iw-ff
+ea-vt
+jr-mm
+kh-or
+xj-ec
+px-nt
+ex-ob
+ax-uy
+yi-fb
+li-di
+nz-ea
+ap-zt
+ma-yx
+qe-qh
+qk-zo
+zh-jm
+zy-eg
+br-nr
+oi-ww
+vj-ru
+ql-dd
+co-yc
+xy-gj
+vj-jk
+ym-hv
+mg-wu
+fd-yx
+ob-kc
+wa-tq
+oh-td
+tg-eh
+pz-az
+hd-cp
+ug-el
+ce-zg
+zq-hp
+in-zo
+dj-yu
+zh-dw
+de-ht
+vf-ik
+cz-qq
+ho-cj
+fa-ga
+hd-is
+de-zj
+pf-tn
+yz-zk
+iu-fp
+wd-ms
+jy-ck
+nl-bq
+ap-kd
+pa-er
+fp-bx
+cw-ov
+ic-pf
+ja-fe
+vc-zd
+mu-hi
+cn-zw
+or-iv
+aq-hj
+ir-lt
+az-hl
+af-ay
+fr-ld
+fp-kt
+cg-fr
+ld-id
+hg-ee
+dd-gi
+hp-nc
+vu-ym
+gu-wb
+rt-xp
+jm-ai
+di-op
+lt-qj
+og-hl
+vf-jj
+wx-pn
+cq-wb
+zw-kc
+ze-dx
+dy-ic
+tf-vf
+wx-wp
+zy-vy
+ke-lt
+we-nz
+xt-kx
+ob-zw
+ky-id
+px-ew
+ns-ks
+ur-aj
+ny-ca
+bs-bq
+up-il
+qs-ke
+ij-xp
+be-ho
+qz-fp
+cx-gc
+gd-ii
+gq-ny
+yd-oj
+kg-id
+uc-vc
+hc-it
+er-yz
+kl-vw
+lv-ar
+oz-ns
+hq-lk
+nj-vf
+us-fv
+qp-bd
+kd-ox
+iu-yc
+vq-fb
+ij-rz
+ti-sb
+af-vt
+ff-bf
+um-az
+nl-nf
+uc-eb
+do-ie
+jx-kc
+gt-zy
+is-qy
+yh-cs
+on-ff
+ws-rc
+wb-oc
+kn-ny
+wp-kp
+ez-oh
+ep-up
+bp-wb
+wl-zk
+dv-ic
+zc-vf
+lq-wr
+dw-hz
+ix-bt
+qz-ud
+xg-ds
+cn-jx
+ao-qt
+kv-hi
+eg-vy
+tg-sv
+ya-jq
+fb-md
+ni-zd
+lb-ff
+yo-kk
+wd-vd
+xu-bd
+di-zk
+ip-is
+rq-wd
+tn-zm
+ws-dv
+pu-iv
+mn-bj
+ks-rb
+nf-la
+aw-yz
+ez-zy
+aw-ie
+yw-zy
+ou-mf
+tv-mr
+eh-ps
+oe-yw
+hb-tq
+ee-md
+jj-ph
+fp-yc
+fg-nw
+ev-xl
+ib-lh
+dg-vp
+su-ev
+ue-vg
+uh-pr
+wl-er
+nh-ao
+vo-bp
+zk-do
+so-ms
+es-ov
+cz-yo
+kl-sf
+aq-ep
+vt-nz
+qt-th
+ug-ty
+ua-au
+hj-dh
+ma-mu
+ck-qo
+wa-jr
+tj-qb
+ra-ku
+ze-xz
+iv-ut
+ij-ib
+kb-dk
+bn-cx
+gj-sa
+yt-bx
+ov-rt
+bg-vq
+gk-im
+rr-xb
+bo-ku
+rx-cs
+cn-mz
+kw-ye
+qz-bt
+bj-ok
+yt-ix
+tl-ko
+ff-hx
+qg-ya
+pj-fg
+of-ax
+ec-kn
+vb-rb
+aw-pa
+iv-go
+od-bp
+mg-oc
+fu-qe
+bv-lq
+vg-jq
+ng-xg
+vd-sc
+uy-qf
+xm-it
+vc-zn
+ql-pw
+mp-iv
+oi-or
+ru-gp
+qm-tt
+be-ng
+gp-ik
+mv-ud
+rp-cv
+kq-xj
+uy-iq
+su-zq
+pb-oh
+vo-ur
+xj-pn
+he-er
+tc-ng
+cw-eu
+kw-ow
+uv-ul
+jz-zh
+sp-lq
+ze-ia
+sx-yh
+rz-lh
+lp-on
+eu-qi
+dx-po
+ri-xh
+qu-lm
+ot-on
+tt-fy
+nl-sh
+ca-xj
+xy-gt
+js-kz
+xu-dr
+ij-rt
+ew-ss
+vy-pb
+tv-ra
+pv-lr
+xg-je
+nm-lx
+pf-oe
+zo-dw
+fa-mw
+xc-eg
+il-fi
+pv-ky
+wj-rg
+tj-sq
+bf-ot
+ke-iz
+gb-lq
+lt-qs
+ik-ti
+yn-dq
+qn-os
+mj-ij
+lu-rf
+oz-ws
+ag-qb
+gr-kp
+vt-fs
+ie-kk
+qn-ke
+od-oc
+zg-pu
+ul-ml
+zv-hz
+lu-zt
+vw-lv
+bf-hx
+ts-ru
+wq-mn
+oa-qv
+wa-pm
+ay-vt
+ct-mu
+xr-iz
+pu-dk
+eg-xe
+jj-aq
+hp-ew
+gc-sq
+vo-wb
+nz-dh
+uf-xq
+rj-ok
+cc-is
+fh-qr
+nv-ad
+ek-lq
+sp-pe
+rm-po
+ro-ka
+tm-ze
+jr-tq
+zr-sp
+jr-qd
+qs-ne
+vt-rk
+zt-xb
+ly-dq
+pr-mu
+mw-ll
+qg-sx
+vg-dv
+ht-yd
+nt-xl
+ov-mj
+xi-ri
+ys-as
+rb-un
+qi-ij
+ef-me
+yq-hi
+uy-of
+je-mw
+ev-px
+sh-yh
+xu-sq
+ir-ne
+go-se
+fu-qr
+un-rq
+og-as
+ca-ro
+aw-er
+ht-mg
+mv-bx
+ln-cm
+kr-no
+qg-yh
+zt-lk
+ds-je
+bj-wq
+kd-lu
+pf-sm
+oy-dl
+gd-bg
+hx-lp
+ib-qi
+dw-jm
+je-fn
+hl-ys
+ma-ly
+vh-vt
+ty-ve
+mk-zg
+nm-zn
+nn-gn
+sa-ji
+ss-qk
+na-bx
+kd-pr
+tt-xh
+vp-kt
+ut-zg
+nv-ji
+hx-fu
+zp-fi
+uc-hn
+lp-nu
+mf-wz
+ei-gh
+pm-yp
+ir-ow
+xr-qs
+bh-qy
+pt-lq
+wz-og
+yo-er
+ev-vz
+ya-yl
+cs-vu
+nz-vh
+pb-ez
+hl-xm
+af-la
+sg-bl
+ix-iu
+bs-tc
+vt-mk
+qf-fg
+ht-sj
+fh-qe
+in-pg
+zb-pv
+ax-fg
+wq-tg
+ov-rz
+um-md
+cp-qy
+pv-ld
+ck-xz
+az-lm
+vz-zq
+ca-rn
+zc-hj
+bf-tl
+jw-cm
+qn-ir
+jr-qh
+oh-yw
+jn-vy
+fr-ky
+bl-iw
+jw-bq
+hi-tw
+sm-rp
+wc-hn
+mc-lv
+bx-bt
+gu-ks
+fe-te
+gt-ux
+oh-gt
+dr-hy
+zp-dj
+no-nc
+qf-iq
+vr-rg
+bj-zf
+vb-hm
+vf-ep
+zv-dw
+mn-tg
+lx-uc
+ez-td
+ld-cd
+by-im
+as-om
+kn-pg
+yk-yn
+mp-ce
+rz-es
+wt-ps
+pj-rw
+td-zy
+ao-ak
+ka-xj
+ir-pt
+hy-nw
+oy-id
+ln-ws
+ce-kb
+sc-un
+bl-kq
+xf-cg
+lf-lq
+ma-ou
+dj-fi
+gb-bv
+bl-kn
+he-db
+zn-sn
+om-hl
+bv-pt
+bh-hd
+dd-pw
+yf-vp
+ri-wq
+jm-nn
+ul-hi
+zf-ok
+yn-ct
+rx-ym
+sd-rk
+nl-ln
+rq-ms
+iu-bt
+os-ne
+or-ao
+ss-nb
+od-jk
+qr-qd
+kt-co
+vr-wj
+lr-zb
+cw-ib
+ye-iz
+gh-sr
+ub-ua
+is-lz
+we-af
+vs-cc
+lv-ch
+nj-ik
+sq-cx
+nb-hr
+qz-bx
+ia-pu
+bp-ur
+yp-tq
+lo-qy
+rc-bs
+vx-hn
+jj-nj
+pv-oy
+zc-nj
+pj-il
+lm-as
+dj-ho
+os-ke
+do-yo
+kz-nv
+kr-qi
+sc-ns
+xt-fo
+nm-sn
+na-fp
+wl-do
+db-zk
+td-jn
+bg-yl
+ql-el
+up-hj
+un-jn
+do-er
+ae-tg
+dq-ou
+rt-qi
+jg-tv
+qj-ye
+zo-hz
+iz-ir
+cl-cu
+mz-kc
+bo-zr
+ok-ae
+sy-cf
+ea-qs
+mw-li
+eb-sn
+wb-ru
+rc-bq
+mf-ct
+ae-bj
+ax-iq
+xb-ox
+xp-cw
+hy-qp
+px-nc
+rk-we
+rw-of
+lv-ja
+nu-dt
+pr-yn
+gn-ge
+vb-ms
+nw-bd
+wp-ts
+ds-mw
+te-ja
+qj-os
+eb-wc
+zh-fk
+bl-xj
+fy-sr
+xq-ox
+jj-tf
+us-ga
+ex-bv
+gh-jo
+dt-gm
+zv-nn
+ao-oi
+ad-ka
+ll-li
+nt-ev
+uq-lh
+it-um
+el-fo
+to-el
+hj-tf
+ew-su
+hi-jx
+co-na
+xf-ky
+dl-kg
+sf-kk
+yc-kt
+sh-ya
+um-hc
+yl-ym
+at-bs
+fz-aj
+hy-bn
+ie-pa
+xh-al
+zf-mn
+gb-sp
+eu-xp
+sj-zj
+nj-ep
+rw-iq
+kq-gq
+iu-na
+rf-iv
+xf-cd
+dg-xs
+rm-ww
+ra-ho
+az-om
+sh-pk
+sn-hn
+qu-cl
+sm-dv
+qv-bv
+ow-ke
+vm-uf
+ym-jq
+xw-hd
+dt-qf
+yp-qh
+yn-ma
+he-wl
+zo-ai
+ex-mz
+kb-mp
+sb-tm
+fi-mr
+bg-fb
+dw-in
+eh-zf
+hg-yi
+tn-dy
+lb-ko
+fh-qh
+rm-im
+oz-cf
+ev-vm
+qo-cl
+ro-ny
+ck-qu
+qn-ye
+qr-mm
+kh-gk
+ad-ub
+kv-cn
+gc-tj
+db-wl
+ek-eu
+at-rc
+tw-mz
+pv-ti
+rr-ak
+sa-vz
+vb-un
+bv-pe
+td-yw
+ej-vb
+da-ip
+uh-ma
+cd-fr
+eu-kz
+iw-on
+nz-kh
+xu-gc
+im-fx
+se-ug
+tq-qr
+zb-oi
+cn-uo
+lt-ko
+wd-sc
+do-br
+xs-pn
+qb-gj
+jp-ic
+zj-yd
+aq-ik
+dj-cj
+nb-ee
+oa-zr
+ps-sz
+ud-kt
+ob-yq
+gp-bp
+pg-ec
+us-oj
+pb-eg
+yt-fp
+zt-hc
+ur-cq
+gq-rn
+kk-db
+mw-fn
+fj-vw
+xi-sr
+db-yo
+zh-in
+iz-os
+yr-bs
+yk-mu
+ss-md
+de-wu
+we-ay
+mc-sf
+vd-hm
+sb-zc
+uv-pj
+vj-wb
+is-lj
+gq-xj
+wq-sv
+us-zj
+qy-ip
+is-bh
+fu-fh
+cj-jg
+ec-ku
+yr-oz
+xu-cx
+qv-fd
+js-xy
+hp-yu
+qf-vr
+ln-jw
+me-vp
+fu-mm
+lo-ip
+ux-ez
+ji-js
+og-xm
+cv-jp
+yn-yx
+om-ys
+zj-bh
+xt-to
+bk-vp
+sc-ms
+il-rw
+pj-iq
+tn-vg
+ir-xr
+sp-el
+fv-de
+ss-hr
+dh-rk
+ut-se
+mk-kb
+eh-sv
+yp-fh
+ka-kn
+dq-wz
+be-ds
+rm-or
+yq-ml
+qv-sp
+tv-fi
+lr-cg
+ee-ss
+gc-hy
+uq-rz
+tf-zc
+gr-ef
+dl-ys
+od-cq
+fs-ay
+me-wp
+as-az
+rm-kh
+hl-xe
+bx-te
+hq-xq
+vh-fs
+ti-ph
+fh-pm
+pm-qd
+aj-vo
+uy-uv
+jp-vg
+ra-rj
+dd-kx
+qp-dr
+qv-gh
+ch-fj
+qh-qd
+ks-rq
+su-vz
+co-fp
+vr-uy
+or-fx
+ts-bk
+oy-xf
+lr-ld
+nv-ua
+yw-vy
+zn-lx
+zt-rr
+pg-gq
+sc-hm
+qv-wr
+tt-ui
+qg-yl
+bs-sy
+aq-sb
+tc-je
+tt-al
+pk-cs
+mr-zp
+vs-cp
+on-tl
+sp-wr
+ti-hj
+js-qb
+dt-on
+yu-ra
+hx-nu
+gc-nw
+xb-ap
+ui-sr
+ii-yi
+vw-ar
+sa-nv
+fy-xi
+jm-jz
+vu-jq
+km-qp
+fk-zv
+xy-ua
+dx-vm
+lf-pe
+ll-fn
+vr-pj
+ng-fa
+bv-sp
+wn-sq
+gu-kl
+qq-ap
+bn-dr
+ql-fo
+ve-dd
+km-uk
+oa-pt
+xk-sn
+of-vr
+eu-rt
+xb-hq
+hb-fh
+bo-ra
+au-kz
+sm-zm
+by-um
+kr-su
+eu-lh
+lx-hn
+uy-pj
+zc-ph
+op-fa
+dg-wx
+xd-ew
+kl-te
+mc-fj
+bk-gr
+mf-ay
+qj-qn
+jw-cf
+xq-kd
+oa-fd
+hv-ja
+ep-jj
+ec-rn
+mv-bt
+xy-nv
+xt-pw
+je-ng
+bp-jk
+lv-uk
+tw-ob
+vg-zm
+pf-dv
+uq-ov
+ng-mw
+cm-ux
+go-ut
+th-fx
+ye-yq
+fz-oh
+gq-sg
+ru-od
+ur-gp
+lj-da
+wp-li
+fp-cs
+sf-fj
+zm-rp
+sz-ma
+gt-td
+bk-ef
+dv-ue
+nj-iv
+ne-mn
+uo-ei
+xk-ni
+lm-hl
+zj-ht
+yw-gt
+ud-fp
+ts-pn
+xg-fn
+bh-lj
+ty-dd
+de-yd
+ga-ht
+sj-wf
+rm-oi
+hy-dx
+al-sr
+of-uv
+oj-fv
+er-br
+zc-jj
+ef-kp
+ma-wz
+gd-vq
+tv-bo
+ri-tt
+cz-kd
+jo-go
+dj-bo
+xc-yw
+nu-iw
+eh-sz
+vf-ph
+vs-lz
+kv-mz
+xf-dl
+ic-yd
+dg-me
+tt-gh
+go-mp
+sf-ja
+ws-nl
+lb-gm
+qr-zw
+mp-ia
+zj-ga
+xp-ax
+lo-lj
+ri-ei
+yz-eg
+dx-jy
+zy-oh
+kq-ka
+cn-ex
+pn-dg
+jr-yp
+gc-bd
+uc-wc
+ll-ds
+ht-nr
+ru-cq
+bm-uf
+mf-yn
+zb-cd
+vy-td
+kw-os
+ty-sd
+is-cp
+ez-eg
+ot-hx
+uk-ja
+mj-rm
+qi-lh
+vm-bm
+at-sy
+ff-tl
+rx-yl
+fo-gm
+cl-bm
+vx-zb
+ws-bs
+ur-wb
+tn-rq
+cc-lz
+yc-bt
+vz-gc
+km-tj
+dk-zg
+cg-ld
+pz-hl
+or-qt
+gr-wx
+ga-sj
+tg-sz
+vj-od
+bs-cf
+so-wd
+ll-op
+xi-gh
+rj-zf
+km-nw
+bs-cm
+ou-yx
+ez-xe
+hq-qq
+cn-ul
+qm-uo
+oj-wf
+gm-lp
+uc-zn
+sm-dy
+ph-aq
+gd-hg
+wp-bk
+wp-gr
+os-lt
+ng-xc
+nz-ay
+nc-yp
+lk-kd
+wa-qr
+nn-ai
+jj-hj
+ni-sn
+ko-iw
+mg-us
+gd-fb
+ek-oa
+cz-lk
+ij-fh
+ir-ye
+eu-ov
+hm-hd
+fb-hr
+xm-by
+lp-ff
+xz-uf
+qs-qj
+wu-nr
+qs-iz
+dh-ea
+ad-xy
+oh-xe
+gj-ub
+pb-yw
+ij-es
+xs-ez
+ve-xt
+zc-aq
+rj-bj
+iq-fg
+ky-kg
+pe-eh
+vh-gj
+dj-mr
+su-nc
+xd-nc
+hn-xk
+xg-ue
+qf-il
+ao-im
+vc-yt
+qm-al
+tm-qu
+up-nj
+tf-ep
+cx-nw
+at-ws
+ct-ou
+wp-yf
+dh-af
+id-cd
+yx-pr
+wr-pt
+ti-aq
+ms-ns
+lp-tl
+ds-ym
+hm-ms
+xk-uc
+oz-ln
+cp-lz
+ev-nc
+wb-aj
+uq-mj
+mj-rt
+xh-vt
+ly-pr
+ml-hi
+bx-ud
+ue-zm
+ad-js
+ad-gj
+us-ht
+kb-ut
+kx-gi
+yx-yk
+qr-yp
+ic-oe
+ru-vo
+az-og
+kx-fo
+mp-ji
+to-kx
+pa-do
+xy-ub
+cn-ml
+gr-vp
+rw-uv
+eb-nm
+da-vs
+px-su
+xq-ak
+tl-ot
+ok-eh
+ec-ka
+tj-hy
+ut-pu
+xu-tj
+ra-jf
+cv-ic
+qd-tq
+kr-hp
+dr-cx
+ye-qs
+ld-dl
+ok-wt
+rn-kn
+lk-rr
+sg-kq
+md-hg
+cu-vm
+mp-ut
+ik-up
+pb-zy
+fo-ve
+tn-sm
+lo-wx
+ni-nm
+od-fz
+kv-zw
+lj-lz
+tc-mw
+ws-yr
+yf-ni
+cg-dl
+qz-ix
+ay-la
+pm-mm
+yx-mf
+od-aj
+bv-wr
+kp-kw
+pk-vu
+iu-ud
+dw-ge
+jy-qo
+af-nz
+sa-ub
+zw-jx
+ip-cc
+yl-vu
+rn-kq
+nc-ew
+bo-ho
+uc-ni
+vb-vd
+gt-vy
+xz-qu
+xc-td
+lx-xk
+xy-qb
+do-kk
+tg-ok
+sj-wu
+lx-ni
+vj-fz
+mj-eu
+ch-uk
+ml-kc
+ya-rx
+cc-yr
+bf-ko
+oy-ld
+mk-iv
+ea-fs
+nl-cf
+at-cm
+ot-dt
+fr-xf
+ax-uv
+ak-hq
+sb-hj
+gm-na
+pf-cv
+hv-sh
+ec-kq
+ar-ja
+ne-ow
+im-qt
+tf-sb
+yp-wa
+fd-zr
+da-bh
+ps-ed
+pn-me
+po-ww
+hr-bg
+dw-ai
+mj-rz
+pe-lq
+zg-rf
+gb-lf
+xl-zq
+cf-at
+th-im
+oz-rc
+zg-kb
+lz-ip
+eu-rz
+sy-nl
+ap-lu
+jk-vo
+rf-ia
+bn-sq
+he-br
+ad-qb
+qt-ww
+of-hd
+dh-nf
+jf-jg
+qj-ir
+of-pj
+al-uo
+br-wl
+tm-vm
+uo-tt
+cq-vo
+zc-ik
+xl-xd
+ys-xm
+wc-zd
+fk-ge
+ie-yo
+il-of
+jm-gn
+xp-ov
+rp-pf
+ce-go
+hb-fu
+el-xt
+ox-ak
+pk-ya
+vz-kr
+ei-jo
+kw-lt
+wn-xu
+ax-vr
+zr-ek
+dy-vg
+ed-vt
+sd-dd
+xs-ts
+aw-bt
+we-nf
+md-yi
+bv-zr
+fj-te
+qh-mm
+di-tc
+ag-fr
+in-xu
+pz-lm
+cf-bq
+wf-ga
+fv-nr
+qn-ne
+al-ri
+vp-wp
+ef-dg
+ga-nr
+fx-oi
+sf-ch
+rr-ox
+ca-kq
+vp-wx
+nh-qt
+vx-vc
+hd-cc
+mf-ma
+mz-yq
+yh-ya
+sh-ym
+co-ud
+ev-zq
+sg-xj
+zk-br
+az-hc
+vz-nt
+hc-xm
+nb-aq
+tj-bn
+kt-qz
+fe-sf
+jo-sr
+au-ck
+qt-ql
+uc-vx
+lh-cw
+oc-fz
+ix-ud
+uf-tm
+pf-dy
+so-hm
+br-db
+ze-qu
+rt-rz
+om-hc
+ib-rz
+iw-gm
+it-az
+mk-ce
+yk-uh
+dj-ku
+sr-xh
+wt-kv
+dh-xf
+pu-go
+rm-nh
+hg-ss
+zh-ge
+hm-ej
+bn-km
+qn-xr
+ke-iq
+mj-lh
+wt-sz
+iz-lt
+so-sc
+me-wx
+ja-mc
+as-by
+kz-xy
+yi-hr
+nu-bf
+be-je
+nm-sc
+pg-xj
+jn-xe
+ez-vy
+es-zp
+aj-cq
+qr-qe
+wl-cq
+wc-zn
+vd-ms
+th-rm
+sq-bd
+dr-sq
+iq-il
+dk-ia
+ru-oc
+bh-lo
+ni-vc
+ou-pr
+dt-iw
+ff-dt
+tg-wt
+qs-ir
+tj-cx
+nf-ay
+no-px
+ez-gt
+yn-mu
+sj-us
+gd-qk
+tv-yu
+ek-pe
+vc-lx
+gn-jz
+bm-ze
+nh-kh
+cg-id
+kq-pg
+qm-as
+gu-mc
+ak-lk
+rk-nz
+pw-ty
+qy-da
+uq-xp
+ot-ok
+ml-mz
+nv-ge
+lr-id
+fz-ru
+at-ln
+bo-yu
+yf-wu
+rg-xd
+ly-wz
+qq-kd
+lf-bv
+ou-mu
+xk-wc
+ka-rn
+sv-bj
+oi-gk
+by-hl
+xj-ny
+ji-kz
+rk-af
+lm-ys
+xs-vp
+hg-kg
+jf-cj
+jg-ho
+ve-ae
+us-yd
+sd-pw
+po-nt
+xq-lk
+gc-wn
+qg-vs
+rx-xk
+iw-tl
+sv-mn
+dy-oe
+fi-yu
+jm-in
+bg-yi
+so-cq
+tt-sr
+kz-qb
+yh-vu
+uq-rt
+vj-aj
+og-pz
+ny-kq
+kc-yq
+qg-ym
+wx-ef
+dk-iv
+jp-aj
+sp-oa
+ej-so
+om-um
+ho-jf
+as-hl
+lh-es
+cw-ij
+yo-wl
+sd-to
+xf-ld
+qk-hr
+fa-ds
+gk-or
+dv-oe
+uq-ib
+ua-ad
+ts-yf
+fj-kl
+yp-fu
+uc-sn
+qz-yc
+mk-mp
+bs-gr
+yr-bq
+mj-ib
+op-ds
+vp-ts
+mv-iu
+jo-xh
+ae-ps
+af-lk
+id-dl
+je-op
+td-ux
+th-ww
+hr-hg
+wn-hy
+bn-qp
+ev-kr
+iq-uv
+xd-vz
+mv-ix
+co-mv
+ky-zb
+uf-qu
+nv-ub
+zb-dl
+fo-ug
+ye-xr
+cn-tw
+ps-wq
+id-pv
+mv-qz
+rf-go
+mw-be
+hc-ys
+of-qf
+fj-ja
+rt-lh
+iz-kw
+rb-vd
+nn-dw
+nn-fk
+vd-ef
+ra-jg
+xu-qp
+pn-wp
+ty-gi
+kn-ca
+kl-uk
+zd-sn
+el-sd
+qp-sq
+bk-xs
+jg-ku
+oz-jw
+bm-tm
+gc-qp
+pm-qe
+wz-ct
+mz-ul
+iz-qn
+nl-at
+wj-rw
+sg-pg
+cl-dx
+wz-yx
+ow-ye
+jp-sm
+rw-qf
+ep-hj
+na-mv
+ib-eu
+rz-cw
+im-kh
+xz-tm
+ek-sp
+yx-uh
+yt-ud
+at-yr
+kx-sd
+wd-un
+nb-gd
+hy-bd
+ir-kw
+jk-fn
+au-qb
+rc-nl
+ld-ky
+tf-ik
+zr-wr
+yc-bx
+uf-cl
+zk-kk
+vr-il
+vh-af
+ed-nz
+jf-bo
+yd-wu
+al-xi
+ly-mf
+yk-ly
+bq-sy
+lf-pt
+oi-nh
+bj-lj
+qj-jm
+iq-wj
+yc-xe
+dv-tn
+jm-hz
+vq-hr
+mm-fh
+ej-rq
+lu-xb
+je-di
+ph-ep
+rm-gk
+qk-hg
+vp-pn
+ib-xp
+fa-ll
+nc-xl
+ea-ay
+jy-bm
+jy-we
+fd-lf
+nt-zq
+iw-ot
+wt-bj
+tf-ti
+fj-op
+tw-ex
+xz-ie
+pn-kp
+ut-ce
+of-wj
+ct-yx
+cc-bh
+ld-kg
+qn-ap
+jy-cu
+gk-po
+un-ns
+eh-rj
+fi-ra
+ll-be
+fu-qd
+ax-wj
+pa-ya
+ce-iv
+kn-kq
+pt-fd
+zn-hn
+ro-pm
+km-gc
+ua-ji
+uq-qi
+hp-vz
+xd-kr
+iq-of
+vt-nf
+xd-nt
+zj-wu
+qv-pt
+nt-kr
+rc-cf
+zv-jz
+he-yz
+tj-bd
+ct-dq
+jx-yq
+fj-uk
+na-ix
+jq-cs
+lo-cp
+dd-to
+zh-zv
+to-ql
+cc-da
+yf-xs
+ve-pw
+zn-eb
+hn-eb
+vm-ze
+zg-go
+sg-kn
+se-ia
+os-to
+db-pa
+zf-sz
+od-ip
+eb-vc
+pw-fo
+ru-ur
+lu-qq
+lx-sn
+xp-mj
+oj-mc
+ur-ml
+tw-kc
+ut-yk
+mn-ps
+yz-wl
+fo-dd
+sj-mg
+vy-vw
+fd-ek
+hb-jj
+ms-ej
+do-db
+ie-zk
+pm-fu
+cu-ze
+da-is
+ji-au
+qm-ui
+yq-tw
+lt-ye
+ca-gq
+wt-ae
+bp-oc
+dk-go
+wa-qd
+te-mc
+ad-ag
+qd-fh
+gd-md
+ns-rb
+ww-gk
+oa-hq
+ch-ja
+xq-lu
+ex-kv
+fi-bo
+me-kp
+cq-gp
+bt-yt
+nn-jz
+cx-qp
+zo-ge
+kd-hq
+yw-ez
+sj-oj
+pe-zr
+fs-dh
+ty-to
+mk-ia
+xw-da
+cl-jy
+tq-sr
+tm-cu
+dg-gr
+ei-xi
+vh-rk
+tm-cl
+oe-jp
+sj-yd
+nt-nc
+hv-sx
+ew-vz
+ag-js
+ca-lh
+fk-gn
+gc-dr
+mj-cw
+wz-uh
+sa-ag
+zh-zo
+na-bt
+vw-uk
+jn-zy
+xg-mw
+yq-kv
+ed-we
+oa-lq
+bs-jw
+cu-xz
+ej-un
+lb-tl
+yq-ex
+mm-hb
+er-ie
+pf-vg
+ge-zv
+vo-gp
+dk-rf
+nw-sq
+ev-hp
+dg-ts
+lv-gu
+dx-qu
+jo-ri
+tc-rb
+sn-vj
+ex-jx
+qr-pm
+kb-rf
+oj-ga
+ye-os
+es-eu
+xz-dx
+fs-nz
+cs-yl
+hn-nm
+ik-sb
+ra-zp
+lo-da
+cd-oy
+ty-ql
+ly-yx
+vu-ya
+nw-dr
+yo-br
+qe-hb
+ub-js
+xq-ap
+aj-ru
+rg-of
+cq-fz
+uk-sf
+qt-po
+zm-dy
+ji-qb
+es-xp
+ti-nj
+ak-zt
+de-mg
+by-lm
+dl-fr
+ok-sv
+jx-ob
+iw-hx
+gu-te
+ux-xc
+hz-jz
+ro-rn
+fe-ar
+gj-kz
+ko-on
+to-gi
+hj-ik
+ct-pr
+zh-ai
+wf-zj
+wu-wf
+pb-eb
+ex-kc
+gi-pw
+qf-uv
+ml-tw
+xl-hp
+ro-sg
+al-jo
+cf-ws
+up-tf
+ps-rj
+dx-tm
+ni-hn
+he-pa
+yf-wx
+ss-ii
+rf-pu
+he-ie
+rp-ic
+tm-jy
+ay-vh
+pr-yk
+xy-sa
+rp-dv
+up-aq
+dr-ee
+dv-zm
+vc-sn
+ra-dj
+qu-vm
+sg-rn
+rg-uv
+vo-od
+xl-su
+uv-vr
+sr-ei
+ea-rk
+az-by
+ku-cj
+au-ag
+vq-ss
+ky-oy
+jx-mz
+fa-xg
+nh-gk
+ej-rb
+al-gh
+gu-ch
+ky-xb
+ae-zf
+sx-yl
+ek-og
+hl-um
+ur-vj
+sm-vg
+ow-qn
+rn-ny
+te-ar
+on-dw
+up-ti
+su-hp
+qq-lk
+um-og
+rq-vb
+qm-xi
+iu-bx
+zw-ex
+me-gr
+se-dk
+in-ge
+ii-qk
+zn-ni
+vo-vj
+dj-jf
+vz-no
+qp-nw
+az-zf
+ph-ik
+ln-sy
+yd-mg
+ie-db
+ym-cs
+dx-qo
+op-tc
+id-rj
+fe-zg
+xb-lk
+vx-xk
+ei-al
+bd-hx
+ko-ff
+wn-bd
+ve-el
+ar-uk
+to-ug
+jo-fy
+zk-yo
+zh-nn
+ux-pb
+ot-nu
+gd-hr
+mu-uh
+km-dr
+lv-te
+rc-cm
+uf-xt
+pb-gt
+sc-vb
+xb-xq
+fz-wb
+au-gj
+gu-vw
+ns-wd
+ky-cd
+on-lb
+rp-vg
+nh-po
+ao-fx
+kw-qj
+wn-tj
+pn-wl
+ip-vs
+qr-hb
+uh-ct
+pj-wj
+mc-kl
+di-ll
+rm-ao
diff --git a/2024/in/day23.ref b/2024/in/day23.ref
new file mode 100644
index 0000000..3d49766
--- /dev/null
+++ b/2024/in/day23.ref
@@ -0,0 +1,32 @@
+kh-tc
+qp-kh
+de-cg
+ka-co
+yn-aq
+qp-ub
+cg-tb
+vc-aq
+tb-ka
+wh-tc
+yn-cg
+kh-ub
+ta-co
+de-co
+tc-td
+tb-wq
+wh-td
+ta-ka
+td-qp
+aq-cg
+wq-ub
+ub-vc
+de-ta
+wq-aq
+wq-vc
+wh-yn
+ka-de
+kh-ta
+co-tc
+wh-qp
+tb-vc
+td-yn