wrap collection

fix #678