continue writing collection logics