manipulating infinite list