Webview on IOS 12.4 closes the app

Steps to Reproduce
Clone this https://github.com/brenoasm/flutter_web_view_test and run.
Expected results: Google's page shown up.
Actual results: App closes.
I'm using IOS Simulator version 12.4.

Analyzing web_view_test...
No issues found! (ran in 2.0s)

[✓] Flutter (Channel unknown, 1.22.6, on macOS 11.2.3 20D91 darwin-arm, locale pt-BR)
    • Flutter version 1.22.6 at /Users/brenoaugustodasilvamoreno/fvm/versions/1.22.6
    • Framework revision 9b2d32b605 (3 months ago), 2021-01-22 14:36:39 -0800
    • Engine revision 2f0af37152
    • Dart version 2.10.5

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/brenoaugustodasilvamoreno/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.5)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.55.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (1 available)
    • iPad Air (mobile) • 29F5ECB9-D742-4FF8-86EC-C4BCEB2BBD86 • ios • com.apple.CoreSimulator.SimRuntime.iOS-12-4 (simulator)

! Doctor found issues in 1 category.

Hi @brenoasm
Just tried your code on the latest stable channel on iOS 12.4 simulator, no crash, web page loads

code sample
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}
class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text('Material App Bar'),
        ),
        body: Container(
          child: WebView(
            initialUrl: 'https://www.google.com/',
          ),
        ));
  }
}

flutter doctor -v
[✓] Flutter (Channel stable, 2.0.5, on macOS 11.3 20E232 darwin-x64, locale en-GB)
    • Flutter version 2.0.5 at /Users/tahatesser/Code/flutter_stable
    • Framework revision adc687823a (12 days ago), 2021-04-16 09:40:20 -0700
    • Engine revision b09f014e96
    • Dart version 2.12.3
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Volumes/Extreme/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Volumes/Extreme/SDK
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1
[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
[✓] VS Code (version 1.55.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0
[✓] Connected device (3 available)
    • iPhone X (mobile) • 2C64EDB9-A057-4E33-A9B2-2E5943C03DD3 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-12-4 (simulator)
    • macOS (desktop)   • macos                                • darwin-x64     • macOS 11.3 20E232 darwin-x64
    • Chrome (web)      • chrome                               • web-javascript • Google Chrome 90.0.4430.93
• No issues found!

Can you please upgrade to the latest  stable and try again
flutter channel stable
flutter upgrade --force
flutter doctor -v
Thank you

@TahaTesser I've tried already on stable and got the same behavior. Gonna try again and answer later.

@TahaTesser can you provide your pubspec?

Tried with webview_flutter 2.0.4 and Flutter 2.0.5 and got the same problem.
flutter doctor -v
[✓] Flutter (Channel stable, 2.0.5, on macOS 11.2.3 20D91 darwin-arm, locale pt-BR)
    • Flutter version 2.0.5 at /Users/brenoaugustodasilvamoreno/fvm/versions/stable
    • Framework revision adc687823a (12 days ago), 2021-04-16 09:40:20 -0700
    • Engine revision b09f014e96
    • Dart version 2.12.3

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/brenoaugustodasilvamoreno/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.55.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (2 available)
    • iPad Air (mobile) • 29F5ECB9-D742-4FF8-86EC-C4BCEB2BBD86 • ios          • com.apple.CoreSimulator.SimRuntime.iOS-12-4 (simulator)
    • macOS (desktop)   • macos                                • darwin-arm64 • macOS 11.2.3 20D91 darwin-arm

! Doctor found issues in 1 category.

This is my pubspec:
name: web_view_test
description: A new Flutter project.
publish_to: "none"

version: 1.0.0+1

environment:
  sdk: ">=2.12.0 <3.0.0"

dependencies:
  webview_flutter: ^2.0.4

  flutter:
    sdk: flutter

  cupertino_icons: ^1.0.0

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

Hi @brenoasm
I just tried a new project on the stable channel on the same simulator (iPad Air 12.4). First, run on IDE and then Xcode, no issues

code sample
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text('Material App Bar'),
        ),
        body: Container(
          child: WebView(
            initialUrl: 'https://www.google.com/',
          ),
        ));
  }
}

pubspec.yaml
name: stable_flutter
description: A new Flutter project.

# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^1.0.2
  webview_flutter: ^2.0.4

dev_dependencies:
  flutter_test:
    sdk: flutter

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:

  # The following line ensures that the Material Icons font is
  # included with your application, so that you can use the icons in
  # the material Icons class.
  uses-material-design: true
  # To add assets to your application, add an assets section, like this:
  # assets:
  #   - images/a_dot_burr.jpeg
  #   - images/a_dot_ham.jpeg
  # An image asset can refer to one or more resolution-specific "variants", see
  # https://flutter.dev/assets-and-images/#resolution-aware.
  # For details regarding adding assets from package dependencies, see
  # https://flutter.dev/assets-and-images/#from-packages
  # To add custom fonts to your application, add a fonts section here,
  # in this "flutter" section. Each entry in this list should have a
  # "family" key with the font family name, and a "fonts" key with a
  # list giving the asset and other descriptors for the font. For
  # example:
  # fonts:
  #   - family: Schyler
  #     fonts:
  #       - asset: fonts/Schyler-Regular.ttf
  #       - asset: fonts/Schyler-Italic.ttf
  #         style: italic
  #   - family: Trajan Pro
  #     fonts:
  #       - asset: fonts/TrajanPro.ttf
  #       - asset: fonts/TrajanPro_Bold.ttf
  #         weight: 700
  #
  # For details regarding fonts from package dependencies,
  # see https://flutter.dev/custom-fonts/#from-packages

screenshots

can you please crash logs from flutter run -v?
Thank you

Tried re-install flutter and nothing changed.
I could not find any crash running with flutter run -v, there is what i got:
[  +12 ms] executing: [/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios/] /usr/bin/arch -arm64e xcrun xcodebuild
-configuration Debug VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner
BUILD_DIR=/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios -sdk iphonesimulator -arch x86_64
SCRIPT_OUTPUT_STREAM_FILE=/var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/T/flutter_tools.xfz5RZ/flutter_build_log_pipe.LcAjSj/pipe_to_stdout
FLUTTER_SUPPRESS_ANALYTICS=true COMPILER_INDEX_STORE_ENABLE=NO -showBuildSettings
[        ] executing: [/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios/] /usr/bin/arch -arm64e xcrun xcodebuild
-configuration Debug VERBOSE_SCRIPT_LOGGING=YES -workspace Runner.xcworkspace -scheme Runner
BUILD_DIR=/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios -sdk iphonesimulator -arch x86_64
SCRIPT_OUTPUT_STREAM_FILE=/var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/T/flutter_tools.xfz5RZ/flutter_build_log_pipe.LcAjSj/pipe_to_stdout
FLUTTER_SUPPRESS_ANALYTICS=true COMPILER_INDEX_STORE_ENABLE=NO -showBuildSettings
[ +811 ms] Command line invocation:
                        /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -configuration Debug VERBOSE_SCRIPT_LOGGING=YES
                        -workspace Runner.xcworkspace -scheme Runner
                        BUILD_DIR=/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios -sdk iphonesimulator -arch x86_64
                        SCRIPT_OUTPUT_STREAM_FILE=/var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/T/flutter_tools.xfz5RZ/flutter_build_log_pipe
                        .LcAjSj/pipe_to_stdout FLUTTER_SUPPRESS_ANALYTICS=true COMPILER_INDEX_STORE_ENABLE=NO -showBuildSettings

                    User defaults from command line:
                        IDEPackageSupportUseBuiltinSCM = YES

                    Build settings from command line:
                        ARCHS = x86_64
                        BUILD_DIR = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios
                        COMPILER_INDEX_STORE_ENABLE = NO
                        FLUTTER_SUPPRESS_ANALYTICS = true
                        SCRIPT_OUTPUT_STREAM_FILE =
                        /var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/T/flutter_tools.xfz5RZ/flutter_build_log_pipe.LcAjSj/pipe_to_stdout
                        SDKROOT = iphonesimulator14.5
                        VERBOSE_SCRIPT_LOGGING = YES

                    Build settings for action build and target Runner:
                        ACTION = build
                        AD_HOC_CODE_SIGNING_ALLOWED = YES
                        ALTERNATE_GROUP = staff
                        ALTERNATE_MODE = u+w,go-w,a+rX
                        ALTERNATE_OWNER = brenoaugustodasilvamoreno
                        ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO
                        ALWAYS_SEARCH_USER_PATHS = NO
                        ALWAYS_USE_SEPARATE_HEADERMAPS = NO
                        APPLE_INTERNAL_DEVELOPER_DIR = /AppleInternal/Developer
                        APPLE_INTERNAL_DIR = /AppleInternal
                        APPLE_INTERNAL_DOCUMENTATION_DIR = /AppleInternal/Documentation
                        APPLE_INTERNAL_LIBRARY_DIR = /AppleInternal/Library
                        APPLE_INTERNAL_TOOLS = /AppleInternal/Developer/Tools
                        APPLICATION_EXTENSION_API_ONLY = NO
                        APPLY_RULES_IN_COPY_FILES = NO
                        APPLY_RULES_IN_COPY_HEADERS = NO
                        ARCHS = x86_64
                        ARCHS_STANDARD = arm64 x86_64 i386
                        ARCHS_STANDARD_32_64_BIT = arm64 i386 x86_64
                        ARCHS_STANDARD_32_BIT = i386
                        ARCHS_STANDARD_64_BIT = arm64 x86_64
                        ARCHS_STANDARD_INCLUDING_64_BIT = arm64 x86_64 i386
                        ARCHS_UNIVERSAL_IPHONE_OS = arm64 i386 x86_64
                        ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon
                        AVAILABLE_PLATFORMS = appletvos appletvsimulator iphoneos iphonesimulator macosx watchos watchsimulator
                        BITCODE_GENERATION_MODE = marker
                        BUILD_ACTIVE_RESOURCES_ONLY = NO
                        BUILD_COMPONENTS = headers build
                        BUILD_DIR = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios
                        BUILD_LIBRARY_FOR_DISTRIBUTION = NO
                        BUILD_ROOT =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Product
                        s
                        BUILD_STYLE =
                        BUILD_VARIANTS = normal
                        BUILT_PRODUCTS_DIR = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator
                        BUNDLE_CONTENTS_FOLDER_PATH_deep = Contents/
                        BUNDLE_EXECUTABLE_FOLDER_NAME_deep = MacOS
                        BUNDLE_FORMAT = shallow
                        BUNDLE_FRAMEWORKS_FOLDER_PATH = Frameworks
                        BUNDLE_PLUGINS_FOLDER_PATH = PlugIns
                        BUNDLE_PRIVATE_HEADERS_FOLDER_PATH = PrivateHeaders
                        BUNDLE_PUBLIC_HEADERS_FOLDER_PATH = Headers
                        CACHE_ROOT = /var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/C/com.apple.DeveloperTools/12.5-12E262/Xcode
                        CCHROOT = /var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/C/com.apple.DeveloperTools/12.5-12E262/Xcode
                        CHMOD = /bin/chmod
                        CHOWN = /usr/sbin/chown
                        CLANG_ANALYZER_NONNULL = YES
                        CLANG_CXX_LANGUAGE_STANDARD = gnu++0x
                        CLANG_CXX_LIBRARY = libc++
                        CLANG_ENABLE_MODULES = YES
                        CLANG_ENABLE_OBJC_ARC = YES
                        CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES
                        CLANG_WARN_BOOL_CONVERSION = YES
                        CLANG_WARN_COMMA = YES
                        CLANG_WARN_CONSTANT_CONVERSION = YES
                        CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES
                        CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR
                        CLANG_WARN_EMPTY_BODY = YES
                        CLANG_WARN_ENUM_CONVERSION = YES
                        CLANG_WARN_INFINITE_RECURSION = YES
                        CLANG_WARN_INT_CONVERSION = YES
                        CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES
                        CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES
                        CLANG_WARN_OBJC_LITERAL_CONVERSION = YES
                        CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR
                        CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO
                        CLANG_WARN_RANGE_LOOP_ANALYSIS = YES
                        CLANG_WARN_STRICT_PROTOTYPES = YES
                        CLANG_WARN_SUSPICIOUS_MOVE = YES
                        CLANG_WARN_UNREACHABLE_CODE = YES
                        CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
                        CLASS_FILE_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/JavaClasses
                        CLEAN_PRECOMPS = YES
                        CLONE_HEADERS = NO
                        CODESIGNING_FOLDER_PATH =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator/Runner.app
                        CODE_SIGNING_ALLOWED = YES
                        CODE_SIGNING_REQUIRED = YES
                        CODE_SIGN_CONTEXT_CLASS = XCiPhoneSimulatorCodeSignContext
                        CODE_SIGN_IDENTITY = -
                        CODE_SIGN_INJECT_BASE_ENTITLEMENTS = YES
                        COLOR_DIAGNOSTICS = NO
                        COMBINE_HIDPI_IMAGES = NO
                        COMPILER_INDEX_STORE_ENABLE = NO
                        COMPOSITE_SDK_DIRS =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/CompositeSDKs
                        COMPRESS_PNG_FILES = YES
                        CONFIGURATION = Debug
                        CONFIGURATION_BUILD_DIR =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator
                        CONFIGURATION_TEMP_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator
                        CONTENTS_FOLDER_PATH = Runner.app
                        COPYING_PRESERVES_HFS_DATA = NO
                        COPY_HEADERS_RUN_UNIFDEF = NO
                        COPY_PHASE_STRIP = NO
                        COPY_RESOURCES_FROM_STATIC_FRAMEWORKS = YES
                        CORRESPONDING_DEVICE_PLATFORM_DIR = /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform
                        CORRESPONDING_DEVICE_PLATFORM_NAME = iphoneos
                        CORRESPONDING_DEVICE_SDK_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.5.sdk
                        CORRESPONDING_DEVICE_SDK_NAME = iphoneos14.5
                        CP = /bin/cp
                        CREATE_INFOPLIST_SECTION_IN_BINARY = NO
                        CURRENT_ARCH = x86_64
                        CURRENT_PROJECT_VERSION = 1
                        CURRENT_VARIANT = normal
                        DART_OBFUSCATION = false
                        DEAD_CODE_STRIPPING = YES
                        DEBUGGING_SYMBOLS = YES
                        DEBUG_INFORMATION_FORMAT = dwarf
                        DEFAULT_COMPILER = com.apple.compilers.llvm.clang.1_0
                        DEFAULT_DEXT_INSTALL_PATH = /System/Library/DriverExtensions
                        DEFAULT_KEXT_INSTALL_PATH = /System/Library/Extensions
                        DEFINES_MODULE = NO
                        DEPLOYMENT_LOCATION = NO
                        DEPLOYMENT_POSTPROCESSING = NO
                        DEPLOYMENT_TARGET_CLANG_ENV_NAME = IPHONEOS_DEPLOYMENT_TARGET
                        DEPLOYMENT_TARGET_CLANG_FLAG_NAME = mios-simulator-version-min
                        DEPLOYMENT_TARGET_CLANG_FLAG_PREFIX = -mios-simulator-version-min=
                        DEPLOYMENT_TARGET_LD_ENV_NAME = IPHONEOS_DEPLOYMENT_TARGET
                        DEPLOYMENT_TARGET_LD_FLAG_NAME = ios_simulator_version_min
                        DEPLOYMENT_TARGET_SETTING_NAME = IPHONEOS_DEPLOYMENT_TARGET
                        DEPLOYMENT_TARGET_SUGGESTED_VALUES = 9.0 9.2 10.0 10.2 11.0 11.2 11.4 12.1 12.3 13.0 13.2 13.4 13.6 14.1 14.3 14.5
                        DERIVED_FILES_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/DerivedSources
                        DERIVED_FILE_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/DerivedSources
                        DERIVED_SOURCES_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/DerivedSources
                        DEVELOPER_APPLICATIONS_DIR = /Applications/Xcode.app/Contents/Developer/Applications
                        DEVELOPER_BIN_DIR = /Applications/Xcode.app/Contents/Developer/usr/bin
                        DEVELOPER_DIR = /Applications/Xcode.app/Contents/Developer
                        DEVELOPER_FRAMEWORKS_DIR = /Applications/Xcode.app/Contents/Developer/Library/Frameworks
                        DEVELOPER_FRAMEWORKS_DIR_QUOTED = /Applications/Xcode.app/Contents/Developer/Library/Frameworks
                        DEVELOPER_LIBRARY_DIR = /Applications/Xcode.app/Contents/Developer/Library
                        DEVELOPER_SDK_DIR = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
                        DEVELOPER_TOOLS_DIR = /Applications/Xcode.app/Contents/Developer/Tools
                        DEVELOPER_USR_DIR = /Applications/Xcode.app/Contents/Developer/usr
                        DEVELOPMENT_LANGUAGE = en
                        DOCUMENTATION_FOLDER_PATH = Runner.app/en.lproj/Documentation
                        DONT_GENERATE_INFOPLIST_FILE = NO
                        DO_HEADER_SCANNING_IN_JAM = NO
                        DSTROOT = /tmp/Runner.dst
                        DT_TOOLCHAIN_DIR = /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
                        DWARF_DSYM_FILE_NAME = Runner.app.dSYM
                        DWARF_DSYM_FILE_SHOULD_ACCOMPANY_PRODUCT = NO
                        DWARF_DSYM_FOLDER_PATH =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator
                        EFFECTIVE_PLATFORM_NAME = -iphonesimulator
                        EMBEDDED_CONTENT_CONTAINS_SWIFT = NO
                        EMBED_ASSET_PACKS_IN_PRODUCT_BUNDLE = NO
                        ENABLE_BITCODE = NO
                        ENABLE_DEFAULT_HEADER_SEARCH_PATHS = YES
                        ENABLE_HARDENED_RUNTIME = NO
                        ENABLE_HEADER_DEPENDENCIES = YES
                        ENABLE_ON_DEMAND_RESOURCES = YES
                        ENABLE_STRICT_OBJC_MSGSEND = YES
                        ENABLE_TESTABILITY = YES
                        ENABLE_TESTING_SEARCH_PATHS = NO
                        ENTITLEMENTS_DESTINATION = __entitlements
                        ENTITLEMENTS_REQUIRED = YES
                        EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS = .DS_Store .svn .git .hg CVS
                        EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = *.nib *.lproj *.framework *.gch *.xcode* *.xcassets (*) .DS_Store CVS
                        .svn .git .hg *.pbproj *.pbxproj
                        EXECUTABLES_FOLDER_PATH = Runner.app/Executables
                        EXECUTABLE_FOLDER_PATH = Runner.app
                        EXECUTABLE_NAME = Runner
                        EXECUTABLE_PATH = Runner.app/Runner
                        EXPANDED_CODE_SIGN_IDENTITY =
                        EXPANDED_CODE_SIGN_IDENTITY_NAME =
                        EXPANDED_PROVISIONING_PROFILE =
                        FILE_LIST =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/Objects/LinkFileList
                        FIXED_FILES_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/FixedFiles
                        FLUTTER_APPLICATION_PATH = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test
                        FLUTTER_BUILD_DIR = build
                        FLUTTER_BUILD_NAME = 1.0.0
                        FLUTTER_BUILD_NUMBER = 1
                        FLUTTER_ROOT = /Users/brenoaugustodasilvamoreno/development/flutter_2.0.5
                        FLUTTER_SUPPRESS_ANALYTICS = true
                        FLUTTER_TARGET = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/lib/main.dart
                        FRAMEWORKS_FOLDER_PATH = Runner.app/Frameworks
                        FRAMEWORK_FLAG_PREFIX = -framework
                        FRAMEWORK_SEARCH_PATHS =
                        "/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator/webview_flutter"
                        FRAMEWORK_VERSION = A
                        FULL_PRODUCT_NAME = Runner.app
                        GCC3_VERSION = 3.3
                        GCC_C_LANGUAGE_STANDARD = gnu99
                        GCC_DYNAMIC_NO_PIC = NO
                        GCC_INLINES_ARE_PRIVATE_EXTERN = YES
                        GCC_NO_COMMON_BLOCKS = YES
                        GCC_OBJC_LEGACY_DISPATCH = YES
                        GCC_OPTIMIZATION_LEVEL = 0
                        GCC_PFE_FILE_C_DIALECTS = c objective-c c++ objective-c++
                        GCC_PREPROCESSOR_DEFINITIONS = DEBUG=1  COCOAPODS=1
                        GCC_SYMBOLS_PRIVATE_EXTERN = NO
                        GCC_TREAT_WARNINGS_AS_ERRORS = NO
                        GCC_VERSION = com.apple.compilers.llvm.clang.1_0
                        GCC_VERSION_IDENTIFIER = com_apple_compilers_llvm_clang_1_0
                        GCC_WARN_64_TO_32_BIT_CONVERSION = YES
                        GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR
                        GCC_WARN_UNDECLARED_SELECTOR = YES
                        GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE
                        GCC_WARN_UNUSED_FUNCTION = YES
                        GCC_WARN_UNUSED_VARIABLE = YES
                        GENERATED_MODULEMAP_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/GeneratedModuleMaps-iphonesimulator
                        GENERATE_MASTER_OBJECT_FILE = NO
                        GENERATE_PKGINFO_FILE = YES
                        GENERATE_PROFILING_CODE = NO
                        GENERATE_TEXT_BASED_STUBS = NO
                        GID = 20
                        GROUP = staff
                        HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT = YES
                        HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES = YES
                        HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS = YES
                        HEADERMAP_INCLUDES_PROJECT_HEADERS = YES
                        HEADERMAP_USES_FRAMEWORK_PREFIX_ENTRIES = YES
                        HEADERMAP_USES_VFS = NO
                        HEADER_SEARCH_PATHS =
                        "/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator/webview_flutter/webvie
                        w_flutter.framework/Headers"
                        HIDE_BITCODE_SYMBOLS = YES
                        HOME = /Users/brenoaugustodasilvamoreno
                        ICONV = /usr/bin/iconv
                        INFOPLIST_EXPAND_BUILD_SETTINGS = YES
                        INFOPLIST_FILE = Runner/Info.plist
                        INFOPLIST_OUTPUT_FORMAT = binary
                        INFOPLIST_PATH = Runner.app/Info.plist
                        INFOPLIST_PREPROCESS = NO
                        INFOSTRINGS_PATH = Runner.app/en.lproj/InfoPlist.strings
                        INLINE_PRIVATE_FRAMEWORKS = NO
                        INSTALLHDRS_COPY_PHASE = NO
                        INSTALLHDRS_SCRIPT_PHASE = NO
                        INSTALL_DIR = /tmp/Runner.dst/Applications
                        INSTALL_GROUP = staff
                        INSTALL_MODE_FLAG = u+w,go-w,a+rX
                        INSTALL_OWNER = brenoaugustodasilvamoreno
                        INSTALL_PATH = /Applications
                        INSTALL_ROOT = /tmp/Runner.dst
                        IPHONEOS_DEPLOYMENT_TARGET = 9.0
                        JAVAC_DEFAULT_FLAGS = -J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8
                        JAVA_APP_STUB = /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub
                        JAVA_ARCHIVE_CLASSES = YES
                        JAVA_ARCHIVE_TYPE = JAR
                        JAVA_COMPILER = /usr/bin/javac
                        JAVA_FOLDER_PATH = Runner.app/Java
                        JAVA_FRAMEWORK_RESOURCES_DIRS = Resources
                        JAVA_JAR_FLAGS = cv
                        JAVA_SOURCE_SUBDIR = .
                        JAVA_USE_DEPENDENCIES = YES
                        JAVA_ZIP_FLAGS = -urg
                        JIKES_DEFAULT_FLAGS = +E +OLDCSO
                        KEEP_PRIVATE_EXTERNS = NO
                        LD_DEPENDENCY_INFO_FILE =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/Objects-normal/x86_64/Runner_dependency_info.dat
                        LD_GENERATE_MAP_FILE = NO
                        LD_MAP_FILE_PATH =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/Runner-LinkMap-normal-x86_64.txt
                        LD_NO_PIE = NO
                        LD_QUOTE_LINKER_ARGUMENTS_FOR_COMPILER_DRIVER = YES
                        LD_RUNPATH_SEARCH_PATHS =  '@executable_path/Frameworks' '@loader_path/Frameworks' @executable_path/Frameworks
                        LEGACY_DEVELOPER_DIR = /Applications/Xcode.app/Contents/PlugIns/Xcode3Core.ideplugin/Contents/SharedSupport/Developer
                        LEX = lex
                        LIBRARY_DEXT_INSTALL_PATH = /Library/DriverExtensions
                        LIBRARY_FLAG_NOSPACE = YES
                        LIBRARY_FLAG_PREFIX = -l
                        LIBRARY_KEXT_INSTALL_PATH = /Library/Extensions
                        LINKER_DISPLAYS_MANGLED_NAMES = NO
                        LINK_FILE_LIST_normal_x86_64 =
                        LINK_WITH_STANDARD_LIBRARIES = YES
                        LLVM_TARGET_TRIPLE_OS_VERSION = ios9.0
                        LLVM_TARGET_TRIPLE_SUFFIX = -simulator
                        LLVM_TARGET_TRIPLE_VENDOR = apple
                        LOCALIZABLE_CONTENT_DIR =
                        LOCALIZATION_EXPORT_SUPPORTED = YES
                        LOCALIZED_RESOURCES_FOLDER_PATH = Runner.app/en.lproj
                        LOCALIZED_STRING_MACRO_NAMES = NSLocalizedString CFCopyLocalizedString
                        LOCALIZED_STRING_SWIFTUI_SUPPORT = YES
                        LOCAL_ADMIN_APPS_DIR = /Applications/Utilities
                        LOCAL_APPS_DIR = /Applications
                        LOCAL_DEVELOPER_DIR = /Library/Developer
                        LOCAL_LIBRARY_DIR = /Library
                        LOCROOT =
                        LOCSYMROOT =
                        MACH_O_TYPE = mh_execute
                        MAC_OS_X_PRODUCT_BUILD_VERSION = 20D91
                        MAC_OS_X_VERSION_ACTUAL = 110203
                        MAC_OS_X_VERSION_MAJOR = 110000
                        MAC_OS_X_VERSION_MINOR = 110200
                        METAL_LIBRARY_FILE_BASE = default
                        METAL_LIBRARY_OUTPUT_DIR =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator/Runner.app
                        MODULES_FOLDER_PATH = Runner.app/Modules
                        MODULE_CACHE_DIR = /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/ModuleCache.noindex
                        MTL_ENABLE_DEBUG_INFO = YES
                        NATIVE_ARCH = arm64e
                        NATIVE_ARCH_32_BIT = i386
                        NATIVE_ARCH_64_BIT = arm64e
                        NATIVE_ARCH_ACTUAL = arm64e
                        NO_COMMON = YES
                        OBJC_ABI_VERSION = 2
                        OBJECT_FILE_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/Objects
                        OBJECT_FILE_DIR_normal =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/Objects-normal
                        OBJROOT =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex
                        ONLY_ACTIVE_ARCH = YES
                        OS = MACOS
                        OSAC = /usr/bin/osacompile
                        OTHER_LDFLAGS =  -framework "webview_flutter"
                        PACKAGE_CONFIG = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/.dart_tool/package_config.json
                        PACKAGE_TYPE = com.apple.package-type.wrapper.application
                        PASCAL_STRINGS = YES
                        PATH =
                        /Applications/Xcode.app/Contents/Developer/usr/bin:/Users/brenoaugustodasilvamoreno/.nvm/versions/node/v11.15.0/bin:/o
                        pt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/brenoaug
                        ustodasilvamoreno/development/flutter_2.0.5/.pub-cache/bin:/Users/brenoaugustodasilvamoreno/development/flutter_2.0.5/
                        bin:/Users/brenoaugustodasilvamoreno/development/flutter_1.22.6/.pub-cache/bin:/Users/brenoaugustodasilvamoreno/develo
                        pment/flutter_1.22.6/bin:/Users/brenoaugustodasilvamoreno/development:/Library/Java/JavaVirtualMachines/jdk-15.0.2.jdk
                        /Contents/Home:/Users/brenoaugustodasilvamoreno/Library/Android/sdk/platform-tools:/Users/brenoaugustodasilvamoreno/de
                        velopment/flutter/.pub-cache/bin:/Users/brenoaugustodasilvamoreno/development/flutter/bin:/Applications/Visual Studio
                        Code.app/Contents/Resources/app/bin:/Users/brenoaugustodasilvamoreno/.nvm/versions/node/v11.15.0/bin:/opt/homebrew/bin
                        :/opt/homebrew/sbin
                        PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES = /usr/include /usr/local/include /System/Library/Frameworks
                        /System/Library/PrivateFrameworks /Applications/Xcode.app/Contents/Developer/Headers
                        /Applications/Xcode.app/Contents/Developer/SDKs /Applications/Xcode.app/Contents/Developer/Platforms
                        PBDEVELOPMENTPLIST_PATH = Runner.app/pbdevelopment.plist
                        PFE_FILE_C_DIALECTS = objective-c
                        PKGINFO_FILE_PATH =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/PkgInfo
                        PKGINFO_PATH = Runner.app/PkgInfo
                        PLATFORM_DEVELOPER_APPLICATIONS_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications
                        PLATFORM_DEVELOPER_BIN_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin
                        PLATFORM_DEVELOPER_LIBRARY_DIR =
                        /Applications/Xcode.app/Contents/PlugIns/Xcode3Core.ideplugin/Contents/SharedSupport/Developer/Library
                        PLATFORM_DEVELOPER_SDK_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs
                        PLATFORM_DEVELOPER_TOOLS_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Tools
                        PLATFORM_DEVELOPER_USR_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr
                        PLATFORM_DIR = /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform
                        PLATFORM_DISPLAY_NAME = iOS Simulator
                        PLATFORM_NAME = iphonesimulator
                        PLATFORM_PREFERRED_ARCH = x86_64
                        PLATFORM_PRODUCT_BUILD_VERSION = 18E182
                        PLIST_FILE_OUTPUT_FORMAT = binary
                        PLUGINS_FOLDER_PATH = Runner.app/PlugIns
                        PODS_BUILD_DIR = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios
                        PODS_CONFIGURATION_BUILD_DIR =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator
                        PODS_PODFILE_DIR_PATH = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios/.
                        PODS_ROOT = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios/Pods
                        PODS_XCFRAMEWORKS_BUILD_DIR =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator/XCFrameworkIntermediate
                        s
                        PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES
                        PRECOMP_DESTINATION_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/PrefixHeaders
                        PRESERVE_DEAD_CODE_INITS_AND_TERMS = NO
                        PRIVATE_HEADERS_FOLDER_PATH = Runner.app/PrivateHeaders
                        PRODUCT_BUNDLE_IDENTIFIER = com.example.webviewTest
                        PRODUCT_BUNDLE_PACKAGE_TYPE = APPL
                        PRODUCT_MODULE_NAME = Runner
                        PRODUCT_NAME = Runner
                        PRODUCT_SETTINGS_PATH = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios/Runner/Info.plist
                        PRODUCT_TYPE = com.apple.product-type.application
                        PROFILING_CODE = NO
                        PROJECT = Runner
                        PROJECT_DERIVED_FILE_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/DerivedSources
                        PROJECT_DIR = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios
                        PROJECT_FILE_PATH = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios/Runner.xcodeproj
                        PROJECT_NAME = Runner
                        PROJECT_TEMP_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build
                        PROJECT_TEMP_ROOT =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex
                        PUBLIC_HEADERS_FOLDER_PATH = Runner.app/Headers
                        RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS = YES
                        REMOVE_CVS_FROM_RESOURCES = YES
                        REMOVE_GIT_FROM_RESOURCES = YES
                        REMOVE_HEADERS_FROM_EMBEDDED_BUNDLES = YES
                        REMOVE_HG_FROM_RESOURCES = YES
                        REMOVE_SVN_FROM_RESOURCES = YES
                        REZ_COLLECTOR_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/ResourceManagerResources
                        REZ_OBJECTS_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build/ResourceManagerResources/Objects
                        SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = NO
                        SCRIPTS_FOLDER_PATH = Runner.app/Scripts
                        SCRIPT_OUTPUT_STREAM_FILE =
                        /var/folders/0p/qwn77hn52x13b8c6f_qdt1k00000gn/T/flutter_tools.xfz5RZ/flutter_build_log_pipe.LcAjSj/pipe_to_stdout
                        SDKROOT =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.5.sdk
                        SDK_DIR =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.5.sdk
                        SDK_DIR_iphonesimulator14_5 =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.5.sdk
                        SDK_NAME = iphonesimulator14.5
                        SDK_NAMES = iphonesimulator14.5
                        SDK_PRODUCT_BUILD_VERSION = 18E182
                        SDK_VERSION = 14.5
                        SDK_VERSION_ACTUAL = 140500
                        SDK_VERSION_MAJOR = 140000
                        SDK_VERSION_MINOR = 140500
                        SED = /usr/bin/sed
                        SEPARATE_STRIP = NO
                        SEPARATE_SYMBOL_EDIT = NO
                        SET_DIR_MODE_OWNER_GROUP = YES
                        SET_FILE_MODE_OWNER_GROUP = NO
                        SHALLOW_BUNDLE = YES
                        SHARED_DERIVED_FILE_DIR =
                        /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator/DerivedSources
                        SHARED_FRAMEWORKS_FOLDER_PATH = Runner.app/SharedFrameworks
                        SHARED_PRECOMPS_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/PrecompiledHeaders
                        SHARED_SUPPORT_FOLDER_PATH = Runner.app/SharedSupport
                        SKIP_INSTALL = NO
                        SOURCE_ROOT = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios
                        SRCROOT = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/ios
                        STRINGS_FILE_INFOPLIST_RENAME = YES
                        STRINGS_FILE_OUTPUT_ENCODING = binary
                        STRIP_BITCODE_FROM_COPIED_FILES = NO
                        STRIP_INSTALLED_PRODUCT = YES
                        STRIP_STYLE = all
                        STRIP_SWIFT_SYMBOLS = YES
                        SUPPORTED_DEVICE_FAMILIES = 1,2
                        SUPPORTED_PLATFORMS = iphonesimulator iphoneos
                        SUPPORTS_TEXT_BASED_API = NO
                        SWIFT_OBJC_BRIDGING_HEADER = Runner/Runner-Bridging-Header.h
                        SWIFT_OPTIMIZATION_LEVEL = -Onone
                        SWIFT_PLATFORM_TARGET_PREFIX = ios
                        SWIFT_VERSION = 5.0
                        SYMROOT =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Product
                        s
                        SYSTEM_ADMIN_APPS_DIR = /Applications/Utilities
                        SYSTEM_APPS_DIR = /Applications
                        SYSTEM_CORE_SERVICES_DIR = /System/Library/CoreServices
                        SYSTEM_DEMOS_DIR = /Applications/Extras
                        SYSTEM_DEVELOPER_APPS_DIR = /Applications/Xcode.app/Contents/Developer/Applications
                        SYSTEM_DEVELOPER_BIN_DIR = /Applications/Xcode.app/Contents/Developer/usr/bin
                        SYSTEM_DEVELOPER_DEMOS_DIR = /Applications/Xcode.app/Contents/Developer/Applications/Utilities/Built Examples
                        SYSTEM_DEVELOPER_DIR = /Applications/Xcode.app/Contents/Developer
                        SYSTEM_DEVELOPER_DOC_DIR = /Applications/Xcode.app/Contents/Developer/ADC Reference Library
                        SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR = /Applications/Xcode.app/Contents/Developer/Applications/Graphics Tools
                        SYSTEM_DEVELOPER_JAVA_TOOLS_DIR = /Applications/Xcode.app/Contents/Developer/Applications/Java Tools
                        SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR = /Applications/Xcode.app/Contents/Developer/Applications/Performance Tools
                        SYSTEM_DEVELOPER_RELEASENOTES_DIR = /Applications/Xcode.app/Contents/Developer/ADC Reference Library/releasenotes
                        SYSTEM_DEVELOPER_TOOLS = /Applications/Xcode.app/Contents/Developer/Tools
                        SYSTEM_DEVELOPER_TOOLS_DOC_DIR = /Applications/Xcode.app/Contents/Developer/ADC Reference
                        Library/documentation/DeveloperTools
                        SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR = /Applications/Xcode.app/Contents/Developer/ADC Reference
                        Library/releasenotes/DeveloperTools
                        SYSTEM_DEVELOPER_USR_DIR = /Applications/Xcode.app/Contents/Developer/usr
                        SYSTEM_DEVELOPER_UTILITIES_DIR = /Applications/Xcode.app/Contents/Developer/Applications/Utilities
                        SYSTEM_DEXT_INSTALL_PATH = /System/Library/DriverExtensions
                        SYSTEM_DOCUMENTATION_DIR = /Library/Documentation
                        SYSTEM_KEXT_INSTALL_PATH = /System/Library/Extensions
                        SYSTEM_LIBRARY_DIR = /System/Library
                        TAPI_VERIFY_MODE = ErrorsOnly
                        TARGETED_DEVICE_FAMILY = 1,2
                        TARGETNAME = Runner
                        TARGET_BUILD_DIR = /Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/Debug-iphonesimulator
                        TARGET_NAME = Runner
                        TARGET_TEMP_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build
                        TEMP_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build
                        TEMP_FILES_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build
                        TEMP_FILE_DIR =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex/Runner.build/Debug-iphonesimulator/Runner.build
                        TEMP_ROOT =
                        /Users/brenoaugustodasilvamoreno/Library/Developer/Xcode/DerivedData/Runner-ajmfuawzgszxlpdlqjsynammuhtz/Build/Interme
                        diates.noindex
                        TEST_FRAMEWORK_SEARCH_PATHS =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.5.sdk/D
                        eveloper/Library/Frameworks
                        TEST_LIBRARY_SEARCH_PATHS =
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/lib
                        TOOLCHAIN_DIR = /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
                        TRACK_WIDGET_CREATION = true
                        TREAT_MISSING_BASELINES_AS_TEST_FAILURES = NO
                        TREE_SHAKE_ICONS = false
                        UID = 501
                        UNLOCALIZED_RESOURCES_FOLDER_PATH = Runner.app
                        UNSTRIPPED_PRODUCT = NO
                        USER = brenoaugustodasilvamoreno
                        USER_APPS_DIR = /Users/brenoaugustodasilvamoreno/Applications
                        USER_LIBRARY_DIR = /Users/brenoaugustodasilvamoreno/Library
                        USE_DYNAMIC_NO_PIC = YES
                        USE_HEADERMAP = YES
                        USE_HEADER_SYMLINKS = NO
                        USE_LLVM_TARGET_TRIPLES = YES
                        USE_LLVM_TARGET_TRIPLES_FOR_CLANG = YES
                        USE_LLVM_TARGET_TRIPLES_FOR_LD = YES
                        USE_LLVM_TARGET_TRIPLES_FOR_TAPI = YES
                        USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES
                        VALIDATE_PRODUCT = NO
                        VALIDATE_WORKSPACE = NO
                        VALID_ARCHS = arm64 arm64e i386 x86_64
                        VERBOSE_PBXCP = NO
                        VERBOSE_SCRIPT_LOGGING = YES
                        VERSIONING_SYSTEM = apple-generic
                        VERSIONPLIST_PATH = Runner.app/version.plist
                        VERSION_INFO_BUILDER = brenoaugustodasilvamoreno
                        VERSION_INFO_FILE = Runner_vers.c
                        VERSION_INFO_STRING = "@(#)PROGRAM:Runner  PROJECT:Runner-1"
                        WRAPPER_EXTENSION = app
                        WRAPPER_NAME = Runner.app
                        WRAPPER_SUFFIX = .app
                        WRAP_ASSET_PACKS_IN_SEPARATE_DIRECTORIES = NO
                        XCODE_APP_SUPPORT_DIR = /Applications/Xcode.app/Contents/Developer/Library/Xcode
                        XCODE_PRODUCT_BUILD_VERSION = 12E262
                        XCODE_VERSION_ACTUAL = 1250
                        XCODE_VERSION_MAJOR = 1200
                        XCODE_VERSION_MINOR = 1250
                        XPCSERVICES_FOLDER_PATH = Runner.app/XPCServices
                        YACC = yacc
                        arch = x86_64
                        variant = normal

                    objc[4676]: Class AMSupportURLConnectionDelegate is implemented in both ?? (0x1ed684188) and ?? (0x115ab82b8). One of the
                    two will be used. Which one is undefined.
                    objc[4676]: Class AMSupportURLSession is implemented in both ?? (0x1ed6841d8) and ?? (0x115ab8308). One of the two will be
                    used. Which one is undefined.
[ +157 ms] executing: /usr/bin/arch -arm64e xcrun simctl install 29F5ECB9-D742-4FF8-86EC-C4BCEB2BBD86
/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/iphonesimulator/Runner.app
[+2085 ms] executing: /usr/bin/plutil -convert json -o -
/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/iphonesimulator/Runner.app/Info.plist
[  +52 ms] Exit code 0 from: /usr/bin/plutil -convert json -o -
/Users/brenoaugustodasilvamoreno/projects/flutter/webview_test/build/ios/iphonesimulator/Runner.app/Info.plist
[        ]
{"CFBundleName":"webview_test","DTXcode":"1250","DTSDKName":"iphonesimulator14.5","UILaunchStoryboardName":"LaunchScreen","CFBundleIcons~ipad"
:{"CFBundlePrimaryIcon":{"CFBundleIconFiles":["AppIcon20x20","AppIcon29x29","AppIcon40x40","AppIcon60x60","AppIcon76x76","AppIcon83.5x83.5"],"
CFBundleIconName":"AppIcon"}},"DTSDKBuild":"18E182","CFBundleDevelopmentRegion":"en","CFBundleVersion":"1","BuildMachineOSBuild":"20D91","DTPl
atformName":"iphonesimulator","CFBundlePackageType":"APPL","UIMainStoryboardFile":"Main","CFBundleSupportedPlatforms":["iPhoneSimulator"],"CFB
undleShortVersionString":"1.0.0","CFBundleInfoDictionaryVersion":"6.0","CFBundleExecutable":"Runner","DTCompiler":"com.apple.compilers.llvm.cl
ang.1_0","UISupportedInterfaceOrientations~ipad":["UIInterfaceOrientationPortrait","UIInterfaceOrientationPortraitUpsideDown","UIInterfaceOrie
ntationLandscapeLeft","UIInterfaceOrientationLandscapeRight"],"MinimumOSVersion":"9.0","CFBundleIdentifier":"com.example.webviewTest","UIDevic
eFamily":[1,2],"DTPlatformVersion":"14.5","CFBundleSignature":"????","CFBundleIcons":{"CFBundlePrimaryIcon":{"CFBundleIconFiles":["AppIcon20x2
0","AppIcon29x29","AppIcon40x40","AppIcon60x60"],"CFBundleIconName":"AppIcon"}},"DTXcodeBuild":"12E262","LSRequiresIPhoneOS":true,"UISupported
InterfaceOrientations":["UIInterfaceOrientationPortrait","UIInterfaceOrientationLandscapeLeft","UIInterfaceOrientationLandscapeRight"],"UIView
ControllerBasedStatusBarAppearance":false,"NSBonjourServices":["_dartobservatory._tcp"],"DTPlatformBuild":"18E182","NSLocalNetworkUsageDescrip
tion":"Allow Flutter tools on your computer to connect and debug your application. This prompt will not appear on release builds."}
[   +5 ms] executing: /usr/bin/arch -arm64e xcrun simctl launch 29F5ECB9-D742-4FF8-86EC-C4BCEB2BBD86 com.example.webviewTest
--enable-dart-profiling --enable-checked-mode --verify-entry-points --observatory-port=0
[+6228 ms] com.example.webviewTest: 4714
[        ] Waiting for observatory port to be available...
[+3039 ms] Observatory URL on device: http://<IP_ADDRESS>:50301/r78gfB8iiGg=/
[  +16 ms] Caching compiled dill
[  +63 ms] Connecting to service protocol: http://<IP_ADDRESS>:50301/r78gfB8iiGg=/
[ +386 ms] Launching a Dart Developer Service (DDS) instance at http://<IP_ADDRESS>:0, connecting to VM service at
http://<IP_ADDRESS>:50301/r78gfB8iiGg=/.
[ +159 ms] DDS is listening at http://<IP_ADDRESS>:50307/PD--KpQWTIw=/.
[ +104 ms] Successfully connected to service protocol: http://<IP_ADDRESS>:50301/r78gfB8iiGg=/
[  +18 ms] Activating Dart DevTools...
[ +435 ms] Service protocol connection closed.
[        ] Lost connection to device.

The only thing i could see that is different is my sdk environment, mine is ">=2.12.0 <3.0.0" and yours ">=2.7.0 <3.0.0"

@brenoasm
I just tried with null safety enabled, still no issues

code sample
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

/// Widgets that handle interaction with asynchronous computations.
///
/// Asynchronous computations are represented by [Future]s and [Stream]s.

import 'dart:async' show StreamSubscription;

import 'package:flutter/foundation.dart';

import 'framework.dart';

/// Base class for widgets that build themselves based on interaction with
/// a specified [Stream].
///
/// A [StreamBuilderBase] is stateful and maintains a summary of the interaction
/// so far. The type of the summary and how it is updated with each interaction
/// is defined by sub-classes.
///
/// Examples of summaries include:
///
/// * the running average of a stream of integers;
/// * the current direction and speed based on a stream of geolocation data;
/// * a graph displaying data points from a stream.
///
/// In general, the summary is the result of a fold computation over the data
/// items and errors received from the stream along with pseudo-events
/// representing termination or change of stream. The initial summary is
/// specified by sub-classes by overriding [initial]. The summary updates on
/// receipt of stream data and errors are specified by overriding [afterData] and
/// [afterError], respectively. If needed, the summary may be updated on stream
/// termination by overriding [afterDone]. Finally, the summary may be updated
/// on change of stream by overriding [afterDisconnected] and [afterConnected].
///
/// `T` is the type of stream events.
///
/// `S` is the type of interaction summary.
///
/// See also:
///
///  * [StreamBuilder], which is specialized for the case where only the most
///    recent interaction is needed for widget building.
abstract class StreamBuilderBase<T, S> extends StatefulWidget {
  /// Creates a [StreamBuilderBase] connected to the specified [stream].
  const StreamBuilderBase({ Key? key, this.stream }) : super(key: key);

  /// The asynchronous computation to which this builder is currently connected,
  /// possibly null. When changed, the current summary is updated using
  /// [afterDisconnected], if the previous stream was not null, followed by
  /// [afterConnected], if the new stream is not null.
  final Stream<T>? stream;

  /// Returns the initial summary of stream interaction, typically representing
  /// the fact that no interaction has happened at all.
  ///
  /// Sub-classes must override this method to provide the initial value for
  /// the fold computation.
  S initial();

  /// Returns an updated version of the [current] summary reflecting that we
  /// are now connected to a stream.
  ///
  /// The default implementation returns [current] as is.
  S afterConnected(S current) => current;

  /// Returns an updated version of the [current] summary following a data event.
  ///
  /// Sub-classes must override this method to specify how the current summary
  /// is combined with the new data item in the fold computation.
  S afterData(S current, T data);

  /// Returns an updated version of the [current] summary following an error
  /// with a stack trace.
  ///
  /// The default implementation returns [current] as is.
  S afterError(S current, Object error, StackTrace stackTrace) => current;

  /// Returns an updated version of the [current] summary following stream
  /// termination.
  ///
  /// The default implementation returns [current] as is.
  S afterDone(S current) => current;

  /// Returns an updated version of the [current] summary reflecting that we
  /// are no longer connected to a stream.
  ///
  /// The default implementation returns [current] as is.
  S afterDisconnected(S current) => current;

  /// Returns a Widget based on the [currentSummary].
  Widget build(BuildContext context, S currentSummary);

  @override
  State<StreamBuilderBase<T, S>> createState() => _StreamBuilderBaseState<T, S>();
}

/// State for [StreamBuilderBase].
class _StreamBuilderBaseState<T, S> extends State<StreamBuilderBase<T, S>> {
  StreamSubscription<T>? _subscription; // ignore: cancel_subscriptions
  late S _summary;

  @override
  void initState() {
    super.initState();
    _summary = widget.initial();
    _subscribe();
  }

  @override
  void didUpdateWidget(StreamBuilderBase<T, S> oldWidget) {
    super.didUpdateWidget(oldWidget);
    if (oldWidget.stream != widget.stream) {
      if (_subscription != null) {
        _unsubscribe();
        _summary = widget.afterDisconnected(_summary);
      }
      _subscribe();
    }
  }

  @override
  Widget build(BuildContext context) => widget.build(context, _summary);

  @override
  void dispose() {
    _unsubscribe();
    super.dispose();
  }

  void _subscribe() {
    if (widget.stream != null) {
      _subscription = widget.stream!.listen((T data) {
        setState(() {
          _summary = widget.afterData(_summary, data);
        });
      }, onError: (Object error, StackTrace stackTrace) {
        setState(() {
          _summary = widget.afterError(_summary, error, stackTrace);
        });
      }, onDone: () {
        setState(() {
          _summary = widget.afterDone(_summary);
        });
      });
      _summary = widget.afterConnected(_summary);
    }
  }

  void _unsubscribe() {
    if (_subscription != null) {
      _subscription!.cancel();
      _subscription = null;
    }
  }
}

/// The state of connection to an asynchronous computation.
///
/// The usual flow of state is as follows:
///
/// 1. [none], maybe with some initial data.
/// 2. [waiting], indicating that the asynchronous operation has begun,
///    typically with the data being null.
/// 3. [active], with data being non-null, and possible changing over time.
/// 4. [done], with data being non-null.
///
/// See also:
///
///  * [AsyncSnapshot], which augments a connection state with information
///    received from the asynchronous computation.
enum ConnectionState {
  /// Not currently connected to any asynchronous computation.
  ///
  /// For example, a [FutureBuilder] whose [FutureBuilder.future] is null.
  none,

  /// Connected to an asynchronous computation and awaiting interaction.
  waiting,

  /// Connected to an active asynchronous computation.
  ///
  /// For example, a [Stream] that has returned at least one value, but is not
  /// yet done.
  active,

  /// Connected to a terminated asynchronous computation.
  done,
}

/// Immutable representation of the most recent interaction with an asynchronous
/// computation.
///
/// See also:
///
///  * [StreamBuilder], which builds itself based on a snapshot from interacting
///    with a [Stream].
///  * [FutureBuilder], which builds itself based on a snapshot from interacting
///    with a [Future].
@immutable
class AsyncSnapshot<T> {
  /// Creates an [AsyncSnapshot] with the specified [connectionState],
  /// and optionally either [data] or [error] with an optional [stackTrace]
  /// (but not both data and error).
  const AsyncSnapshot._(this.connectionState, this.data, this.error, this.stackTrace)
    : assert(connectionState != null),
      assert(!(data != null && error != null)),
      assert(stackTrace == null || error != null);

  /// Creates an [AsyncSnapshot] in [ConnectionState.none] with null data and error.
  const AsyncSnapshot.nothing() : this._(ConnectionState.none, null, null, null);

  /// Creates an [AsyncSnapshot] in [ConnectionState.waiting] with null data and error.
  const AsyncSnapshot.waiting() : this._(ConnectionState.waiting, null, null, null);

  /// Creates an [AsyncSnapshot] in the specified [state] and with the specified [data].
  const AsyncSnapshot.withData(ConnectionState state, T data): this._(state, data, null, null);

  /// Creates an [AsyncSnapshot] in the specified [state] with the specified [error]
  /// and a [stackTrace].
  ///
  /// If no [stackTrace] is explicitly specified, [StackTrace.empty] will be used instead.
  const AsyncSnapshot.withError(
    ConnectionState state,
    Object error, [
    StackTrace stackTrace = StackTrace.empty,
  ]) : this._(state, null, error, stackTrace);

  /// Current state of connection to the asynchronous computation.
  final ConnectionState connectionState;

  /// The latest data received by the asynchronous computation.
  ///
  /// If this is non-null, [hasData] will be true.
  ///
  /// If [error] is not null, this will be null. See [hasError].
  ///
  /// If the asynchronous computation has never returned a value, this may be
  /// set to an initial data value specified by the relevant widget. See
  /// [FutureBuilder.initialData] and [StreamBuilder.initialData].
  final T? data;

  /// Returns latest data received, failing if there is no data.
  ///
  /// Throws [error], if [hasError]. Throws [StateError], if neither [hasData]
  /// nor [hasError].
  T get requireData {
    if (hasData)
      return data!;
    if (hasError)
      throw error!;
    throw StateError('Snapshot has neither data nor error');
  }

  /// The latest error object received by the asynchronous computation.
  ///
  /// If this is non-null, [hasError] will be true.
  ///
  /// If [data] is not null, this will be null.
  final Object? error;

  /// The latest stack trace object received by the asynchronous computation.
  ///
  /// This will not be null iff [error] is not null. Consequently, [stackTrace]
  /// will be non-null when [hasError] is true.
  ///
  /// However, even when not null, [stackTrace] might be empty. The stack trace
  /// is empty when there is an error but no stack trace has been provided.
  final StackTrace? stackTrace;

  /// Returns a snapshot like this one, but in the specified [state].
  ///
  /// The [data], [error], and [stackTrace] fields persist unmodified, even if
  /// the new state is [ConnectionState.none].
  AsyncSnapshot<T> inState(ConnectionState state) => AsyncSnapshot<T>._(state, data, error, stackTrace);

  /// Returns whether this snapshot contains a non-null [data] value.
  ///
  /// This can be false even when the asynchronous computation has completed
  /// successfully, if the computation did not return a non-null value. For
  /// example, a [Future<void>] will complete with the null value even if it
  /// completes successfully.
  bool get hasData => data != null;

  /// Returns whether this snapshot contains a non-null [error] value.
  ///
  /// This is always true if the asynchronous computation's last result was
  /// failure.
  bool get hasError => error != null;

  @override
  String toString() => '${objectRuntimeType(this, 'AsyncSnapshot')}($connectionState, $data, $error, $stackTrace)';

  @override
  bool operator ==(Object other) {
    if (identical(this, other))
      return true;
    return other is AsyncSnapshot<T>
        && other.connectionState == connectionState
        && other.data == data
        && other.error == error
        && other.stackTrace == stackTrace;
  }

  @override
  int get hashCode => hashValues(connectionState, data, error);
}

/// Signature for strategies that build widgets based on asynchronous
/// interaction.
///
/// See also:
///
///  * [StreamBuilder], which delegates to an [AsyncWidgetBuilder] to build
///    itself based on a snapshot from interacting with a [Stream].
///  * [FutureBuilder], which delegates to an [AsyncWidgetBuilder] to build
///    itself based on a snapshot from interacting with a [Future].
typedef AsyncWidgetBuilder<T> = Widget Function(BuildContext context, AsyncSnapshot<T> snapshot);

/// Widget that builds itself based on the latest snapshot of interaction with
/// a [Stream].
///
/// {@youtube 560 315 https://www.youtube.com/watch?v=MkKEWHfy99Y}
///
/// Widget rebuilding is scheduled by each interaction, using [State.setState],
/// but is otherwise decoupled from the timing of the stream. The [builder]
/// is called at the discretion of the Flutter pipeline, and will thus receive a
/// timing-dependent sub-sequence of the snapshots that represent the
/// interaction with the stream.
///
/// As an example, when interacting with a stream producing the integers
/// 0 through 9, the [builder] may be called with any ordered sub-sequence
/// of the following snapshots that includes the last one (the one with
/// ConnectionState.done):
///
/// * `AsyncSnapshot<int>.withData(ConnectionState.waiting, null)`
/// * `AsyncSnapshot<int>.withData(ConnectionState.active, 0)`
/// * `AsyncSnapshot<int>.withData(ConnectionState.active, 1)`
/// * ...
/// * `AsyncSnapshot<int>.withData(ConnectionState.active, 9)`
/// * `AsyncSnapshot<int>.withData(ConnectionState.done, 9)`
///
/// The actual sequence of invocations of the [builder] depends on the relative
/// timing of events produced by the stream and the build rate of the Flutter
/// pipeline.
///
/// Changing the [StreamBuilder] configuration to another stream during event
/// generation introduces snapshot pairs of the form:
///
/// * `AsyncSnapshot<int>.withData(ConnectionState.none, 5)`
/// * `AsyncSnapshot<int>.withData(ConnectionState.waiting, 5)`
///
/// The latter will be produced only when the new stream is non-null, and the
/// former only when the old stream is non-null.
///
/// The stream may produce errors, resulting in snapshots of the form:
///
/// * `AsyncSnapshot<int>.withError(ConnectionState.active, 'some error', someStackTrace)`
///
/// The data and error fields of snapshots produced are only changed when the
/// state is `ConnectionState.active`.
///
/// The initial snapshot data can be controlled by specifying [initialData].
/// This should be used to ensure that the first frame has the expected value,
/// as the builder will always be called before the stream listener has a chance
/// to be processed.
///
/// {@tool dartpad --template=stateful_widget_material}
///
/// This sample shows a [StreamBuilder] that listens to a Stream that emits bids
/// for an auction. Every time the StreamBuilder receives a bid from the Stream,
/// it will display the price of the bid below an icon. If the Stream emits an
/// error, the error is displayed below an error icon. When the Stream finishes
/// emitting bids, the final price is displayed.
///
/// ```dart
/// Stream<int> _bids = (() async* {
///   await Future<void>.delayed(Duration(seconds: 1));
///   yield 1;
///   await Future<void>.delayed(Duration(seconds: 1));
/// })();
///
/// Widget build(BuildContext context) {
///   return DefaultTextStyle(
///     style: Theme.of(context).textTheme.headline2!,
///     textAlign: TextAlign.center,
///     child: Container(
///       alignment: FractionalOffset.center,
///       color: Colors.white,
///       child: StreamBuilder<int>(
///         stream: _bids,
///         builder: (BuildContext context, AsyncSnapshot<int> snapshot) {
///           List<Widget> children;
///           if (snapshot.hasError) {
///             children = <Widget>[
///               Icon(
///                 Icons.error_outline,
///                 color: Colors.red,
///                 size: 60,
///               ),
///               Padding(
///                 padding: const EdgeInsets.only(top: 16),
///                 child: Text('Error: ${snapshot.error}'),
///               ),
///               Padding(
///                 padding: const EdgeInsets.only(top: 8),
///                 child: Text('Stack trace: ${snapshot.stackTrace}'),
///               ),
///             ];
///           } else {
///             switch (snapshot.connectionState) {
///               case ConnectionState.none:
///                 children = <Widget>[
///                   Icon(
///                     Icons.info,
///                     color: Colors.blue,
///                     size: 60,
///                   ),
///                   const Padding(
///                     padding: EdgeInsets.only(top: 16),
///                     child: Text('Select a lot'),
///                   )
///                 ];
///                 break;
///               case ConnectionState.waiting:
///                 children = <Widget>[
///                   SizedBox(
///                     child: const CircularProgressIndicator(),
///                     width: 60,
///                     height: 60,
///                   ),
///                   const Padding(
///                     padding: EdgeInsets.only(top: 16),
///                     child: Text('Awaiting bids...'),
///                   )
///                 ];
///                 break;
///               case ConnectionState.active:
///                 children = <Widget>[
///                   Icon(
///                     Icons.check_circle_outline,
///                     color: Colors.green,
///                     size: 60,
///                   ),
///                   Padding(
///                     padding: const EdgeInsets.only(top: 16),
///                     child: Text('\$${snapshot.data}'),
///                   )
///                 ];
///                 break;
///               case ConnectionState.done:
///                 children = <Widget>[
///                   Icon(
///                     Icons.info,
///                     color: Colors.blue,
///                     size: 60,
///                   ),
///                   Padding(
///                     padding: const EdgeInsets.only(top: 16),
///                     child: Text('\$${snapshot.data} (closed)'),
///                   )
///                 ];
///                 break;
///             }
///           }
///
///           return Column(
///             mainAxisAlignment: MainAxisAlignment.center,
///             crossAxisAlignment: CrossAxisAlignment.center,
///             children: children,
///           );
///         },
///       ),
///     ),
///   );
/// }
/// ```
/// {@end-tool}
///
/// See also:
///
///  * [ValueListenableBuilder], which wraps a [ValueListenable] instead of a
///    [Stream].
///  * [StreamBuilderBase], which supports widget building based on a computation
///    that spans all interactions made with the stream.
// TODO(ianh): remove unreachable code above once https://github.com/dart-lang/linter/issues/1139 is fixed
class StreamBuilder<T> extends StreamBuilderBase<T, AsyncSnapshot<T>> {
  /// Creates a new [StreamBuilder] that builds itself based on the latest
  /// snapshot of interaction with the specified [stream] and whose build
  /// strategy is given by [builder].
  ///
  /// The [initialData] is used to create the initial snapshot.
  ///
  /// The [builder] must not be null.
  const StreamBuilder({
    Key? key,
    this.initialData,
    Stream<T>? stream,
    required this.builder,
  }) : assert(builder != null),
       super(key: key, stream: stream);

  /// The build strategy currently used by this builder.
  ///
  /// This builder must only return a widget and should not have any side
  /// effects as it may be called multiple times.
  final AsyncWidgetBuilder<T> builder;

  /// The data that will be used to create the initial snapshot.
  ///
  /// Providing this value (presumably obtained synchronously somehow when the
  /// [Stream] was created) ensures that the first frame will show useful data.
  /// Otherwise, the first frame will be built with the value null, regardless
  /// of whether a value is available on the stream: since streams are
  /// asynchronous, no events from the stream can be obtained before the initial
  /// build.
  final T? initialData;

  @override
  AsyncSnapshot<T> initial() => initialData == null
      ? AsyncSnapshot<T>.nothing()
      : AsyncSnapshot<T>.withData(ConnectionState.none, initialData as T);

  @override
  AsyncSnapshot<T> afterConnected(AsyncSnapshot<T> current) => current.inState(ConnectionState.waiting);

  @override
  AsyncSnapshot<T> afterData(AsyncSnapshot<T> current, T data) {
    return AsyncSnapshot<T>.withData(ConnectionState.active, data);
  }

  @override
  AsyncSnapshot<T> afterError(AsyncSnapshot<T> current, Object error, StackTrace stackTrace) {
    return AsyncSnapshot<T>.withError(ConnectionState.active, error, stackTrace);
  }

  @override
  AsyncSnapshot<T> afterDone(AsyncSnapshot<T> current) => current.inState(ConnectionState.done);

  @override
  AsyncSnapshot<T> afterDisconnected(AsyncSnapshot<T> current) => current.inState(ConnectionState.none);

  @override
  Widget build(BuildContext context, AsyncSnapshot<T> currentSummary) => builder(context, currentSummary);
}

/// Widget that builds itself based on the latest snapshot of interaction with
/// a [Future].
///
/// The [future] must have been obtained earlier, e.g. during [State.initState],
/// [State.didUpdateWidget], or [State.didChangeDependencies]. It must not be
/// created during the [State.build] or [StatelessWidget.build] method call when
/// constructing the [FutureBuilder]. If the [future] is created at the same
/// time as the [FutureBuilder], then every time the [FutureBuilder]'s parent is
/// rebuilt, the asynchronous task will be restarted.
///
/// A general guideline is to assume that every `build` method could get called
/// every frame, and to treat omitted calls as an optimization.
///
/// {@youtube 560 315 https://www.youtube.com/watch?v=ek8ZPdWj4Qo}
///
/// ## Timing
///
/// Widget rebuilding is scheduled by the completion of the future, using
/// [State.setState], but is otherwise decoupled from the timing of the future.
/// The [builder] callback is called at the discretion of the Flutter pipeline, and
/// will thus receive a timing-dependent sub-sequence of the snapshots that
/// represent the interaction with the future.
///
/// A side-effect of this is that providing a new but already-completed future
/// to a [FutureBuilder] will result in a single frame in the
/// [ConnectionState.waiting] state. This is because there is no way to
/// synchronously determine that a [Future] has already completed.
///
/// ## Builder contract
///
/// For a future that completes successfully with data, assuming [initialData]
/// is null, the [builder] will be called with either both or only the latter of
/// the following snapshots:
///
/// * `AsyncSnapshot<String>.withData(ConnectionState.waiting, null)`
/// * `AsyncSnapshot<String>.withData(ConnectionState.done, 'some data')`
///
/// If that same future instead completed with an error, the [builder] would be
/// called with either both or only the latter of:
///
/// * `AsyncSnapshot<String>.withData(ConnectionState.waiting, null)`
/// * `AsyncSnapshot<String>.withError(ConnectionState.done, 'some error', someStackTrace)`
///
/// The initial snapshot data can be controlled by specifying [initialData]. You
/// would use this facility to ensure that if the [builder] is invoked before
/// the future completes, the snapshot carries data of your choice rather than
/// the default null value.
///
/// The data and error fields of the snapshot change only as the connection
/// state field transitions from `waiting` to `done`, and they will be retained
/// when changing the [FutureBuilder] configuration to another future. If the
/// old future has already completed successfully with data as above, changing
/// configuration to a new future results in snapshot pairs of the form:
///
/// * `AsyncSnapshot<String>.withData(ConnectionState.none, 'data of first future')`
/// * `AsyncSnapshot<String>.withData(ConnectionState.waiting, 'data of second future')`
///
/// In general, the latter will be produced only when the new future is
/// non-null, and the former only when the old future is non-null.
///
/// A [FutureBuilder] behaves identically to a [StreamBuilder] configured with
/// `future?.asStream()`, except that snapshots with `ConnectionState.active`
/// may appear for the latter, depending on how the stream is implemented.
///
/// {@tool dartpad --template=stateful_widget_material}
///
/// This sample shows a [FutureBuilder] that displays a loading spinner while it
/// loads data. It displays a success icon and text if the [Future] completes
/// with a result, or an error icon and text if the [Future] completes with an
/// error. Assume the `_calculation` field is set by pressing a button elsewhere
/// in the UI.
///
/// ```dart
/// Future<String> _calculation = Future<String>.delayed(
///   Duration(seconds: 2),
///   () => 'Data Loaded',
/// );
///
/// Widget build(BuildContext context) {
///   return DefaultTextStyle(
///     style: Theme.of(context).textTheme.headline2!,
///     textAlign: TextAlign.center,
///     child: FutureBuilder<String>(
///       future: _calculation, // a previously-obtained Future<String> or null
///       builder: (BuildContext context, AsyncSnapshot<String> snapshot) {
///         List<Widget> children;
///         if (snapshot.hasData) {
///           children = <Widget>[
///             Icon(
///               Icons.check_circle_outline,
///               color: Colors.green,
///               size: 60,
///             ),
///             Padding(
///               padding: const EdgeInsets.only(top: 16),
///               child: Text('Result: ${snapshot.data}'),
///             )
///           ];
///         } else if (snapshot.hasError) {
///           children = <Widget>[
///             Icon(
///               Icons.error_outline,
///               color: Colors.red,
///               size: 60,
///             ),
///             Padding(
///               padding: const EdgeInsets.only(top: 16),
///               child: Text('Error: ${snapshot.error}'),
///             )
///           ];
///         } else {
///           children = <Widget>[
///             SizedBox(
///               child: CircularProgressIndicator(),
///               width: 60,
///               height: 60,
///             ),
///             const Padding(
///               padding: EdgeInsets.only(top: 16),
///               child: Text('Awaiting result...'),
///             )
///           ];
///         }
///         return Center(
///           child: Column(
///             mainAxisAlignment: MainAxisAlignment.center,
///             crossAxisAlignment: CrossAxisAlignment.center,
///             children: children,
///           ),
///         );
///       },
///     ),
///   );
/// }
/// ```
/// {@end-tool}
// TODO(ianh): remove unreachable code above once https://github.com/dart-lang/sdk/issues/35520 is fixed
class FutureBuilder<T> extends StatefulWidget {
  /// Creates a widget that builds itself based on the latest snapshot of
  /// interaction with a [Future].
  ///
  /// The [builder] must not be null.
  const FutureBuilder({
    Key? key,
    this.future,
    this.initialData,
    required this.builder,
  }) : assert(builder != null),
       super(key: key);

  /// The asynchronous computation to which this builder is currently connected,
  /// possibly null.
  ///
  /// If no future has yet completed, including in the case where [future] is
  /// null, the data provided to the [builder] will be set to [initialData].
  final Future<T>? future;

  /// The build strategy currently used by this builder.
  ///
  /// The builder is provided with an [AsyncSnapshot] object whose
  /// [AsyncSnapshot.connectionState] property will be one of the following
  /// values:
  ///
  ///  * [ConnectionState.none]: [future] is null. The [AsyncSnapshot.data] will
  ///    be set to [initialData], unless a future has previously completed, in
  ///    which case the previous result persists.
  ///
  ///  * [ConnectionState.waiting]: [future] is not null, but has not yet
  ///    completed. The [AsyncSnapshot.data] will be set to [initialData],
  ///    unless a future has previously completed, in which case the previous
  ///    result persists.
  ///
  ///  * [ConnectionState.done]: [future] is not null, and has completed. If the
  ///    future completed successfully, the [AsyncSnapshot.data] will be set to
  ///    the value to which the future completed. If it completed with an error,
  ///    [AsyncSnapshot.hasError] will be true and [AsyncSnapshot.error] will be
  ///    set to the error object.
  ///
  /// This builder must only return a widget and should not have any side
  /// effects as it may be called multiple times.
  final AsyncWidgetBuilder<T> builder;

  /// The data that will be used to create the snapshots provided until a
  /// non-null [future] has completed.
  ///
  /// If the future completes with an error, the data in the [AsyncSnapshot]
  /// provided to the [builder] will become null, regardless of [initialData].
  /// (The error itself will be available in [AsyncSnapshot.error], and
  /// [AsyncSnapshot.hasError] will be true.)
  final T? initialData;

  @override
  State<FutureBuilder<T>> createState() => _FutureBuilderState<T>();
}

/// State for [FutureBuilder].
class _FutureBuilderState<T> extends State<FutureBuilder<T>> {
  /// An object that identifies the currently active callbacks. Used to avoid
  /// calling setState from stale callbacks, e.g. after disposal of this state,
  /// or after widget reconfiguration to a new Future.
  Object? _activeCallbackIdentity;
  late AsyncSnapshot<T> _snapshot;

  @override
  void initState() {
    super.initState();
    _snapshot = widget.initialData == null
        ? AsyncSnapshot<T>.nothing()
        : AsyncSnapshot<T>.withData(ConnectionState.none, widget.initialData as T);
    _subscribe();
  }

  @override
  void didUpdateWidget(FutureBuilder<T> oldWidget) {
    super.didUpdateWidget(oldWidget);
    if (oldWidget.future != widget.future) {
      if (_activeCallbackIdentity != null) {
        _unsubscribe();
        _snapshot = _snapshot.inState(ConnectionState.none);
      }
      _subscribe();
    }
  }

  @override
  Widget build(BuildContext context) => widget.builder(context, _snapshot);

  @override
  void dispose() {
    _unsubscribe();
    super.dispose();
  }

  void _subscribe() {
    if (widget.future != null) {
      final Object callbackIdentity = Object();
      _activeCallbackIdentity = callbackIdentity;
      widget.future!.then<void>((T data) {
        if (_activeCallbackIdentity == callbackIdentity) {
          setState(() {
            _snapshot = AsyncSnapshot<T>.withData(ConnectionState.done, data);
          });
        }
      }, onError: (Object error, StackTrace stackTrace) {
        if (_activeCallbackIdentity == callbackIdentity) {
          setState(() {
            _snapshot = AsyncSnapshot<T>.withError(ConnectionState.done, error, stackTrace);
          });
        }
      });
      _snapshot = _snapshot.inState(ConnectionState.waiting);
    }
  }

  void _unsubscribe() {
    _activeCallbackIdentity = null;
  }
}

dependencies:
  flutter:
    sdk: flutter
  cupertino_icons: ^1.0.2
  webview_flutter: ^2.0.4

This is strange, Is it only on iOS 12.4 or other versions too?

Still could not track the problem, could it be the new chip from mac-m1? The crash is happening in real devices that has the IOS 12 too.

Hi @brenoasm
Jut tried on the iOS 12.5.2 physical, no crash.
Preview

flutter doctor -v
[✓] Flutter (Channel stable, 2.0.6, on macOS 11.3 20E232 darwin-x64, locale en-GB)
    • Flutter version 2.0.6 at /Users/tahatesser/Code/flutter_stable
    • Framework revision 1d9032c7e1 (4 days ago), 2021-04-29 17:37:58 -0700
    • Engine revision 05e680e202
    • Dart version 2.12.3

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Volumes/Extreme/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Volumes/Extreme/SDK
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Volumes/Extreme/Xcode.app/Contents/Developer
    • Xcode 12.5, Build version 12E262
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.55.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (3 available)
    • Taha’s iPhone (mobile) • e534bcc711c9a011aa892eb51cdb60f40b3acddb • ios            • iOS 12.5.2
    • macOS (desktop)        • macos                                    • darwin-x64     • macOS 11.3 20E232 darwin-x64
    • Chrome (web)           • chrome                                   • web-javascript • Google Chrome 90.0.4430.93
    ! Error: Taha’s iPhone is busy: Copying cache files from device. Xcode will continue when Taha’s iPhone is finished. (code -10)

• No issues found!

Just found that Apple has a issue using mac-m1 on older Ios devices, maybe could be the problem? Devs relating that webview os crashing, same as me.


Validate the length of attachment fields in the model

Rather than letting the database (driver) raise an error (now that we have a MySQL
version which doesn't silently truncate), let's validate it in the model and
show the user a helpful validation message, not a 5xx error page.
Examples in production: https://errbit.publishing.service.gov.uk/apps/53020d6c0da11585f10000e7/problems/56658960657863060cb91d00

:+1:


refactor: use list to combine xrepo cmd arguments.

I figured out the quirks of passing list to cmake execute_process which leads to this refactor.
CI fails because xrepo fetch --includes option is not in xmake master for now. We can wait merge this PR until that option goes into xmake master.

I figured out the quirks of passing list to cmake execute_process which leads to this refactor.
CI fails because xrepo fetch --includes option is not in xmake master for now. We can wait merge this PR until that option goes into xmake master.

xrepo fetch --includes was in master 15 days ago

Sorry I didn't sort this out clearly.
CI log shows it's downloading xmake from following url:
https://github.com/xmake-io/xmake/releases/download/v2.6.3/xmake-master.zip

This is actually a fixed release instead of master code, which is released 18 days ago.

Sorry I didn't sort this out clearly.
CI log shows it's downloading xmake from following url:
https://github.com/xmake-io/xmake/releases/download/v2.6.3/xmake-master.zip

This is actually a fixed release instead of master code, which is released 18 days ago.

no, every build task of xmake ci on the master branch will trigger an upload to overwrite and update this file.
It's always been the latest master package, I've downloaded it manually and confirmed that xrepo fetch contains --includes
        {nil, "includes",      "kv", nil, "Includes extra lua configuration files.",

CMake Error at D:/a/xrepo-cmake/xrepo-cmake/xrepo.cmake:372 (string):
string sub-command JSON failed parsing json string: * Line 1, Column 1
Syntax error: value, object or array expected.

This should be a json output problem, not --includes, you can print ${json_output} to debug it on ci.

It's a bug by this PR. Verbose option should not be passed to xrepo fetch. Sorry for considering this a problem in xmake master branch.


Request "duplicate" context menu item for tree view selection

The current workflow for the desired behavior is:

Select an item in the tree view
ctrl+c
ctrl+v
Select the duplicate file
enter to rename

Would be nice to just right click, duplicate, and type the new name.

Closing, this should be done as an extension using the new menu API!


How to disable past dates?

i am not able to disable past dates and also i want to disable current date after a particular time. please let me know to achieve this. i m new on angular.

This isn't an issue with this module.
If you post a demo I might point you in the right direction.

This is first time i m using angular js so i m totally a new born baby in angular js. please help me for resolving this issue. i want to disable aal dates before current date and current date should be disable after a perticular time in current date like after 9PM current date should be disable user can not select current deate after 9PM. please help me to resolve this.
you can visit http://divinewater.in/bisleri-20-ltr-jar for demo i used your multi date picker
here is code
`(function(angular) {
'use strict';
angular.module('app', ['gm.datepickerMultiSelect'])
.controller('AppCtrl', function() {
	this.activeDate;
	this.selectedDates = [new Date().setHours(0, 0, 0, 0)];
	this.removeFromSelected = function(dt) {
	this.selectedDates.splice(this.selectedDates.indexOf(dt), 1);
	}
});

})(window.angular);

</uib-datepicker  class="form-group col-sm-6">

Selected Dates:

           <input type="text" ng-readonly='true' value="{{d | date : 'mediumDate'}} " name="delivery[]" min-date="'2016-03-10'" style="background:none; border:none; width:100px" />
            <button class='btn btn-xs btn-warning' style='margin:5px; background:#009EFF;' ng-click='app.removeFromSelected(d)'>Remove</button>

`

You'll just need to do a calculation to set min-date based on the current time.
For example:
var today = new Date();
if(today.getHours() > 21) {
    this.minDate = today.setHours(24);    // After 9 PM - set minDate to tomorrow
} else {
    this.minDate = today;
}

Be aware that in this example today will be the current local time based on the client's OS, which could be anything depending on where they are and if their time is set correctly. If you really want to keep users from selecting days based on the time of day, you should send the exact universal time you want to cut off orders from your server, and also validate the times the client sends to the server.