collect all books wait function seperated