Update: added better distinction between main()