1Write interfaces 2Clean up the code generator 3Avoid capture properly instead of relying on the user not to use _ 4 5 6