restore screen position
check invalid region
improve temporary variable's name
guard for does-not-exist-error