roll back some changes that damaged performance of ArrayList