Multiplier interview question

explain JS Execution Contexts, scopes and hoisting