抽離collapse 共用
補充上一個commit