Long main (10/33)

Long main