FIX: using while(true)