code: def _add_variable_proxy_methods(var, proxy_tensor):
    
    proxy_tensor.read_value = lambda: tf.identity(proxy_tensor)
    proxy_tensor.assign_sub = var.assign_sub
    proxy_tensor.assign = var.assign
    proxy_tensor.initialized_value = var.initialized_value
docs: Proxy methods of underlying variable.
  
    This enables our custom getters to still work with, e.g., batch norm.
  
    Args:
      var: Variable to proxy
      proxy_tensor: Tensor that is identity of var