missing :pass-info
change collect interface