milestone2: nearly done