works locally, waiting for judge results, lots silly mistakes here and there