01 02 04 12 01 02 08 11 03 05 06 07 03 06 10 21 04 08 09 12 05 07 10 21 13 14 15 16 17 18 19 20