Revert functions, and add return, pack, crash
Desugar cut
Desugar connect
Allow patterns in return
Desugar with pattern and expression
Support unpack pattern properly