reorganise main.js