add inference for let-bindings