moved to arrays