methods moved to extensions. IsSaving saveguard correctly used