Long main (22/33)

Long main