complete lexical-binding