Collapse logic