add `let` support