1--l-l-lmnmlklkj--lj--kl--kl-lmnm-ml--klkj-kl
1--d-g-f-e--e-c-dd--f-e-c-c--d-ef-d-d
1--d-fgh-g--g--g-g-g--h-hghjgf