4. Use caller_env() or parent.frame().
5. <- always creates a binding in the current environment; <<- rebinds an existing name in a parent of the current environment.