[
  {
    "path": ".gitignore",
    "content": "# Miscellaneous\n*.class\n*.log\n*.pyc\n*.swp\n.DS_Store\n.atom/\n.buildlog/\n.history\n.svn/\n\n# IntelliJ related\n*.iml\n*.ipr\n*.iws\n.idea/\n\n# The .vscode folder contains launch configuration and tasks you configure in\n# VS Code which you may wish to be included in version control, so this line\n# is commented out by default.\n#.vscode/\n\n# Flutter/Dart/Pub related\n**/doc/api/\n**/ios/Flutter/.last_build_id\n.dart_tool/\n.flutter-plugins\n.flutter-plugins-dependencies\n.packages\n.pub-cache/\n.pub/\n/build/\n\n# Web related\nlib/generated_plugin_registrant.dart\n\n# Symbolication related\napp.*.symbols\n\n# Obfuscation related\napp.*.map.json\n\n# Android Studio will place build artifacts here\n/android/app/debug\n/android/app/profile\n/android/app/release\n"
  },
  {
    "path": ".metadata",
    "content": "# This file tracks properties of this Flutter project.\n# Used by Flutter tool to assess capabilities and perform upgrades etc.\n#\n# This file should be version controlled and should not be manually edited.\n\nversion:\n  revision: d79295af24c3ed621c33713ecda14ad196fd9c31\n  channel: stable\n\nproject_type: app\n"
  },
  {
    "path": ".vscode/settings.json",
    "content": "{\n    \"dart.flutterSdkPath\": \"/Users/sangvaleapvanny/fvm/versions/stable\"\n}"
  },
  {
    "path": "README.md",
    "content": "# Real Estate App - Flutter\n\n- Preview video: https://youtu.be/11u0KeymAAs\n- Support my work: https://www.patreon.com/sangvaleap\n  \n- [My Twitter](https://twitter.com/sangvaleap)\n- [My Patreon](https://www.patreon.com/sangvaleap)\n- [My Linkedin](https://www.linkedin.com/in/sangvaleap-vanny-353b25aa/)\n\n\n<img width=\"600\" alt=\"Screen Shot 2022-01-05 at 6 43 05 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213269-45f3ba01-d059-43f2-85c4-1d31543f06f5.png\">\n<img width=\"600\" alt=\"Screen Shot 2022-01-05 at 6 43 24 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213286-e2f3c5f4-581f-4011-afb5-4e702f5724d7.png\">\n<img width=\"600\" alt=\"Screen Shot 2022-01-05 at 6 43 45 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213292-078c3fe6-ad7d-4e04-adfe-23b1656dfa14.png\">\n<img width=\"599\" alt=\"Screen Shot 2022-01-05 at 6 44 48 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213300-b765d20b-7bb2-49ea-b290-b923f660e9c7.png\">\n<img width=\"600\" alt=\"Screen Shot 2022-01-05 at 6 45 16 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213303-7f83c8b7-7736-4e3e-91c7-377b93fd79c5.png\">\n<img width=\"601\" alt=\"Screen Shot 2022-01-05 at 6 44 06 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213295-77f7f1cf-bfd0-49c2-a7a1-65e204964c20.png\">\n<img width=\"600\" alt=\"Screen Shot 2022-01-05 at 6 44 22 PM\" src=\"https://user-images.githubusercontent.com/86506519/148213298-090fc88d-7e10-4ee0-ae1b-87e06bcf7f35.png\">\n"
  },
  {
    "path": "android/.gitignore",
    "content": "gradle-wrapper.jar\n/.gradle\n/captures/\n/gradlew\n/gradlew.bat\n/local.properties\nGeneratedPluginRegistrant.java\n\n# Remember to never publicly share your keystore.\n# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app\nkey.properties\n"
  },
  {
    "path": "android/app/build.gradle",
    "content": "def localProperties = new Properties()\ndef localPropertiesFile = rootProject.file('local.properties')\nif (localPropertiesFile.exists()) {\n    localPropertiesFile.withReader('UTF-8') { reader ->\n        localProperties.load(reader)\n    }\n}\n\ndef flutterRoot = localProperties.getProperty('flutter.sdk')\nif (flutterRoot == null) {\n    throw new GradleException(\"Flutter SDK not found. Define location with flutter.sdk in the local.properties file.\")\n}\n\ndef flutterVersionCode = localProperties.getProperty('flutter.versionCode')\nif (flutterVersionCode == null) {\n    flutterVersionCode = '1'\n}\n\ndef flutterVersionName = localProperties.getProperty('flutter.versionName')\nif (flutterVersionName == null) {\n    flutterVersionName = '1.0'\n}\n\napply plugin: 'com.android.application'\napply plugin: 'kotlin-android'\napply from: \"$flutterRoot/packages/flutter_tools/gradle/flutter.gradle\"\n\nandroid {\n    compileSdkVersion 30\n\n    sourceSets {\n        main.java.srcDirs += 'src/main/kotlin'\n    }\n\n    defaultConfig {\n        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).\n        applicationId \"com.example.real_estate\"\n        minSdkVersion 16\n        targetSdkVersion 30\n        versionCode flutterVersionCode.toInteger()\n        versionName flutterVersionName\n    }\n\n    buildTypes {\n        release {\n            // TODO: Add your own signing config for the release build.\n            // Signing with the debug keys for now, so `flutter run --release` works.\n            signingConfig signingConfigs.debug\n        }\n    }\n}\n\nflutter {\n    source '../..'\n}\n\ndependencies {\n    implementation \"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version\"\n}\n"
  },
  {
    "path": "android/app/src/debug/AndroidManifest.xml",
    "content": "<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"com.example.real_estate\">\n    <!-- Flutter needs it to communicate with the running application\n         to allow setting breakpoints, to provide hot reload, etc.\n    -->\n    <uses-permission android:name=\"android.permission.INTERNET\"/>\n</manifest>\n"
  },
  {
    "path": "android/app/src/main/AndroidManifest.xml",
    "content": "<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"com.example.real_estate\">\n   <application\n        android:label=\"real_estate\"\n        android:icon=\"@mipmap/ic_launcher\">\n        <activity\n            android:name=\".MainActivity\"\n            android:launchMode=\"singleTop\"\n            android:theme=\"@style/LaunchTheme\"\n            android:configChanges=\"orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode\"\n            android:hardwareAccelerated=\"true\"\n            android:windowSoftInputMode=\"adjustResize\">\n            <!-- Specifies an Android theme to apply to this Activity as soon as\n                 the Android process has started. This theme is visible to the user\n                 while the Flutter UI initializes. After that, this theme continues\n                 to determine the Window background behind the Flutter UI. -->\n            <meta-data\n              android:name=\"io.flutter.embedding.android.NormalTheme\"\n              android:resource=\"@style/NormalTheme\"\n              />\n            <!-- Displays an Android View that continues showing the launch screen\n                 Drawable until Flutter paints its first frame, then this splash\n                 screen fades out. A splash screen is useful to avoid any visual\n                 gap between the end of Android's launch screen and the painting of\n                 Flutter's first frame. -->\n            <meta-data\n              android:name=\"io.flutter.embedding.android.SplashScreenDrawable\"\n              android:resource=\"@drawable/launch_background\"\n              />\n            <intent-filter>\n                <action android:name=\"android.intent.action.MAIN\"/>\n                <category android:name=\"android.intent.category.LAUNCHER\"/>\n            </intent-filter>\n        </activity>\n        <!-- Don't delete the meta-data below.\n             This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->\n        <meta-data\n            android:name=\"flutterEmbedding\"\n            android:value=\"2\" />\n    </application>\n</manifest>\n"
  },
  {
    "path": "android/app/src/main/kotlin/com/example/real_estate/MainActivity.kt",
    "content": "package com.example.real_estate\n\nimport io.flutter.embedding.android.FlutterActivity\n\nclass MainActivity: FlutterActivity() {\n}\n"
  },
  {
    "path": "android/app/src/main/res/drawable/launch_background.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<!-- Modify this file to customize your launch splash screen -->\n<layer-list xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <item android:drawable=\"@android:color/white\" />\n\n    <!-- You can insert your own image assets here -->\n    <!-- <item>\n        <bitmap\n            android:gravity=\"center\"\n            android:src=\"@mipmap/launch_image\" />\n    </item> -->\n</layer-list>\n"
  },
  {
    "path": "android/app/src/main/res/drawable-v21/launch_background.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<!-- Modify this file to customize your launch splash screen -->\n<layer-list xmlns:android=\"http://schemas.android.com/apk/res/android\">\n    <item android:drawable=\"?android:colorBackground\" />\n\n    <!-- You can insert your own image assets here -->\n    <!-- <item>\n        <bitmap\n            android:gravity=\"center\"\n            android:src=\"@mipmap/launch_image\" />\n    </item> -->\n</layer-list>\n"
  },
  {
    "path": "android/app/src/main/res/values/styles.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->\n    <style name=\"LaunchTheme\" parent=\"@android:style/Theme.Light.NoTitleBar\">\n        <!-- Show a splash screen on the activity. Automatically removed when\n             Flutter draws its first frame -->\n        <item name=\"android:windowBackground\">@drawable/launch_background</item>\n    </style>\n    <!-- Theme applied to the Android Window as soon as the process has started.\n         This theme determines the color of the Android Window while your\n         Flutter UI initializes, as well as behind your Flutter UI while its\n         running.\n         \n         This Theme is only used starting with V2 of Flutter's Android embedding. -->\n    <style name=\"NormalTheme\" parent=\"@android:style/Theme.Light.NoTitleBar\">\n        <item name=\"android:windowBackground\">?android:colorBackground</item>\n    </style>\n</resources>\n"
  },
  {
    "path": "android/app/src/main/res/values-night/styles.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n    <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->\n    <style name=\"LaunchTheme\" parent=\"@android:style/Theme.Black.NoTitleBar\">\n        <!-- Show a splash screen on the activity. Automatically removed when\n             Flutter draws its first frame -->\n        <item name=\"android:windowBackground\">@drawable/launch_background</item>\n    </style>\n    <!-- Theme applied to the Android Window as soon as the process has started.\n         This theme determines the color of the Android Window while your\n         Flutter UI initializes, as well as behind your Flutter UI while its\n         running.\n         \n         This Theme is only used starting with V2 of Flutter's Android embedding. -->\n    <style name=\"NormalTheme\" parent=\"@android:style/Theme.Black.NoTitleBar\">\n        <item name=\"android:windowBackground\">?android:colorBackground</item>\n    </style>\n</resources>\n"
  },
  {
    "path": "android/app/src/profile/AndroidManifest.xml",
    "content": "<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    package=\"com.example.real_estate\">\n    <!-- Flutter needs it to communicate with the running application\n         to allow setting breakpoints, to provide hot reload, etc.\n    -->\n    <uses-permission android:name=\"android.permission.INTERNET\"/>\n</manifest>\n"
  },
  {
    "path": "android/build.gradle",
    "content": "buildscript {\n    ext.kotlin_version = '1.3.50'\n    repositories {\n        google()\n        jcenter()\n    }\n\n    dependencies {\n        classpath 'com.android.tools.build:gradle:4.1.0'\n        classpath \"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version\"\n    }\n}\n\nallprojects {\n    repositories {\n        google()\n        jcenter()\n    }\n}\n\nrootProject.buildDir = '../build'\nsubprojects {\n    project.buildDir = \"${rootProject.buildDir}/${project.name}\"\n    project.evaluationDependsOn(':app')\n}\n\ntask clean(type: Delete) {\n    delete rootProject.buildDir\n}\n"
  },
  {
    "path": "android/gradle/wrapper/gradle-wrapper.properties",
    "content": "#Fri Jun 23 08:50:38 CEST 2017\ndistributionBase=GRADLE_USER_HOME\ndistributionPath=wrapper/dists\nzipStoreBase=GRADLE_USER_HOME\nzipStorePath=wrapper/dists\ndistributionUrl=https\\://services.gradle.org/distributions/gradle-6.7-all.zip\n"
  },
  {
    "path": "android/gradle.properties",
    "content": "org.gradle.jvmargs=-Xmx1536M\nandroid.useAndroidX=true\nandroid.enableJetifier=true\n"
  },
  {
    "path": "android/settings.gradle",
    "content": "include ':app'\n\ndef localPropertiesFile = new File(rootProject.projectDir, \"local.properties\")\ndef properties = new Properties()\n\nassert localPropertiesFile.exists()\nlocalPropertiesFile.withReader(\"UTF-8\") { reader -> properties.load(reader) }\n\ndef flutterSdkPath = properties.getProperty(\"flutter.sdk\")\nassert flutterSdkPath != null, \"flutter.sdk not set in local.properties\"\napply from: \"$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle\"\n"
  },
  {
    "path": "ios/.gitignore",
    "content": "*.mode1v3\n*.mode2v3\n*.moved-aside\n*.pbxuser\n*.perspectivev3\n**/*sync/\n.sconsign.dblite\n.tags*\n**/.vagrant/\n**/DerivedData/\nIcon?\n**/Pods/\n**/.symlinks/\nprofile\nxcuserdata\n**/.generated/\nFlutter/App.framework\nFlutter/Flutter.framework\nFlutter/Flutter.podspec\nFlutter/Generated.xcconfig\nFlutter/ephemeral/\nFlutter/app.flx\nFlutter/app.zip\nFlutter/flutter_assets/\nFlutter/flutter_export_environment.sh\nServiceDefinitions.json\nRunner/GeneratedPluginRegistrant.*\n\n# Exceptions to above rules.\n!default.mode1v3\n!default.mode2v3\n!default.pbxuser\n!default.perspectivev3\n"
  },
  {
    "path": "ios/Flutter/AppFrameworkInfo.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n  <key>CFBundleDevelopmentRegion</key>\n  <string>en</string>\n  <key>CFBundleExecutable</key>\n  <string>App</string>\n  <key>CFBundleIdentifier</key>\n  <string>io.flutter.flutter.app</string>\n  <key>CFBundleInfoDictionaryVersion</key>\n  <string>6.0</string>\n  <key>CFBundleName</key>\n  <string>App</string>\n  <key>CFBundlePackageType</key>\n  <string>FMWK</string>\n  <key>CFBundleShortVersionString</key>\n  <string>1.0</string>\n  <key>CFBundleSignature</key>\n  <string>????</string>\n  <key>CFBundleVersion</key>\n  <string>1.0</string>\n  <key>MinimumOSVersion</key>\n  <string>8.0</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "ios/Flutter/Debug.xcconfig",
    "content": "#include? \"Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig\"\n#include \"Generated.xcconfig\"\n"
  },
  {
    "path": "ios/Flutter/Release.xcconfig",
    "content": "#include? \"Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig\"\n#include \"Generated.xcconfig\"\n"
  },
  {
    "path": "ios/Podfile",
    "content": "# Uncomment this line to define a global platform for your project\n# platform :ios, '9.0'\n\n# CocoaPods analytics sends network stats synchronously affecting flutter build latency.\nENV['COCOAPODS_DISABLE_STATS'] = 'true'\n\nproject 'Runner', {\n  'Debug' => :debug,\n  'Profile' => :release,\n  'Release' => :release,\n}\n\ndef flutter_root\n  generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)\n  unless File.exist?(generated_xcode_build_settings_path)\n    raise \"#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first\"\n  end\n\n  File.foreach(generated_xcode_build_settings_path) do |line|\n    matches = line.match(/FLUTTER_ROOT\\=(.*)/)\n    return matches[1].strip if matches\n  end\n  raise \"FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get\"\nend\n\nrequire File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)\n\nflutter_ios_podfile_setup\n\ntarget 'Runner' do\n  use_frameworks!\n  use_modular_headers!\n\n  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))\nend\n\npost_install do |installer|\n  installer.pods_project.targets.each do |target|\n    flutter_additional_ios_build_settings(target)\n  end\nend\n"
  },
  {
    "path": "ios/Runner/AppDelegate.swift",
    "content": "import UIKit\nimport Flutter\n\n@UIApplicationMain\n@objc class AppDelegate: FlutterAppDelegate {\n  override func application(\n    _ application: UIApplication,\n    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?\n  ) -> Bool {\n    GeneratedPluginRegistrant.register(with: self)\n    return super.application(application, didFinishLaunchingWithOptions: launchOptions)\n  }\n}\n"
  },
  {
    "path": "ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"size\" : \"20x20\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-20x20@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"20x20\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-20x20@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-29x29@1x.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-29x29@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-29x29@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-40x40@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-40x40@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-60x60@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"60x60\",\n      \"idiom\" : \"iphone\",\n      \"filename\" : \"Icon-App-60x60@3x.png\",\n      \"scale\" : \"3x\"\n    },\n    {\n      \"size\" : \"20x20\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-20x20@1x.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"20x20\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-20x20@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-29x29@1x.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"29x29\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-29x29@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-40x40@1x.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"40x40\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-40x40@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-76x76@1x.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"76x76\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-76x76@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"83.5x83.5\",\n      \"idiom\" : \"ipad\",\n      \"filename\" : \"Icon-App-83.5x83.5@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"1024x1024\",\n      \"idiom\" : \"ios-marketing\",\n      \"filename\" : \"Icon-App-1024x1024@1x.png\",\n      \"scale\" : \"1x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}\n"
  },
  {
    "path": "ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"LaunchImage.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"LaunchImage@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"LaunchImage@3x.png\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}\n"
  },
  {
    "path": "ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md",
    "content": "# Launch Screen Assets\n\nYou can customize the launch screen with your own desired assets by replacing the image files in this directory.\n\nYou can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images."
  },
  {
    "path": "ios/Runner/Base.lproj/LaunchScreen.storyboard",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3.0\" toolsVersion=\"12121\" systemVersion=\"16G29\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" useAutolayout=\"YES\" launchScreen=\"YES\" colorMatched=\"YES\" initialViewController=\"01J-lp-oVM\">\n    <dependencies>\n        <deployment identifier=\"iOS\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"12089\"/>\n    </dependencies>\n    <scenes>\n        <!--View Controller-->\n        <scene sceneID=\"EHf-IW-A2E\">\n            <objects>\n                <viewController id=\"01J-lp-oVM\" sceneMemberID=\"viewController\">\n                    <layoutGuides>\n                        <viewControllerLayoutGuide type=\"top\" id=\"Ydg-fD-yQy\"/>\n                        <viewControllerLayoutGuide type=\"bottom\" id=\"xbc-2k-c8Z\"/>\n                    </layoutGuides>\n                    <view key=\"view\" contentMode=\"scaleToFill\" id=\"Ze5-6b-2t3\">\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <imageView opaque=\"NO\" clipsSubviews=\"YES\" multipleTouchEnabled=\"YES\" contentMode=\"center\" image=\"LaunchImage\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"YRO-k0-Ey4\">\n                            </imageView>\n                        </subviews>\n                        <color key=\"backgroundColor\" red=\"1\" green=\"1\" blue=\"1\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n                        <constraints>\n                            <constraint firstItem=\"YRO-k0-Ey4\" firstAttribute=\"centerX\" secondItem=\"Ze5-6b-2t3\" secondAttribute=\"centerX\" id=\"1a2-6s-vTC\"/>\n                            <constraint firstItem=\"YRO-k0-Ey4\" firstAttribute=\"centerY\" secondItem=\"Ze5-6b-2t3\" secondAttribute=\"centerY\" id=\"4X2-HB-R7a\"/>\n                        </constraints>\n                    </view>\n                </viewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"iYj-Kq-Ea1\" userLabel=\"First Responder\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n            <point key=\"canvasLocation\" x=\"53\" y=\"375\"/>\n        </scene>\n    </scenes>\n    <resources>\n        <image name=\"LaunchImage\" width=\"168\" height=\"185\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "ios/Runner/Base.lproj/Main.storyboard",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<document type=\"com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB\" version=\"3.0\" toolsVersion=\"10117\" systemVersion=\"15F34\" targetRuntime=\"iOS.CocoaTouch\" propertyAccessControl=\"none\" useAutolayout=\"YES\" useTraitCollections=\"YES\" initialViewController=\"BYZ-38-t0r\">\n    <dependencies>\n        <deployment identifier=\"iOS\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.IBCocoaTouchPlugin\" version=\"10085\"/>\n    </dependencies>\n    <scenes>\n        <!--Flutter View Controller-->\n        <scene sceneID=\"tne-QT-ifu\">\n            <objects>\n                <viewController id=\"BYZ-38-t0r\" customClass=\"FlutterViewController\" sceneMemberID=\"viewController\">\n                    <layoutGuides>\n                        <viewControllerLayoutGuide type=\"top\" id=\"y3c-jy-aDJ\"/>\n                        <viewControllerLayoutGuide type=\"bottom\" id=\"wfy-db-euE\"/>\n                    </layoutGuides>\n                    <view key=\"view\" contentMode=\"scaleToFill\" id=\"8bC-Xf-vdC\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"600\" height=\"600\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"custom\" customColorSpace=\"calibratedWhite\"/>\n                    </view>\n                </viewController>\n                <placeholder placeholderIdentifier=\"IBFirstResponder\" id=\"dkx-z0-nzr\" sceneMemberID=\"firstResponder\"/>\n            </objects>\n        </scene>\n    </scenes>\n</document>\n"
  },
  {
    "path": "ios/Runner/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>$(DEVELOPMENT_LANGUAGE)</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>real_estate</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>$(FLUTTER_BUILD_NAME)</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(FLUTTER_BUILD_NUMBER)</string>\n\t<key>LSRequiresIPhoneOS</key>\n\t<true/>\n\t<key>UILaunchStoryboardName</key>\n\t<string>LaunchScreen</string>\n\t<key>UIMainStoryboardFile</key>\n\t<string>Main</string>\n\t<key>UISupportedInterfaceOrientations</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n\t<key>UISupportedInterfaceOrientations~ipad</key>\n\t<array>\n\t\t<string>UIInterfaceOrientationPortrait</string>\n\t\t<string>UIInterfaceOrientationPortraitUpsideDown</string>\n\t\t<string>UIInterfaceOrientationLandscapeLeft</string>\n\t\t<string>UIInterfaceOrientationLandscapeRight</string>\n\t</array>\n\t<key>UIViewControllerBasedStatusBarAppearance</key>\n\t<false/>\n</dict>\n</plist>\n"
  },
  {
    "path": "ios/Runner/Runner-Bridging-Header.h",
    "content": "#import \"GeneratedPluginRegistrant.h\"\n"
  },
  {
    "path": "ios/Runner.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };\n\t\t3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };\n\t\t6C8ECD6F2486B73DB85F45CD /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2279A86D9B11C7C39B90F506 /* Pods_Runner.framework */; };\n\t\t74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };\n\t\t97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };\n\t\t97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };\n\t\t97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\t9705A1C41CF9048500538489 /* Embed Frameworks */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = \"\";\n\t\t\tdstSubfolderSpec = 10;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tname = \"Embed Frameworks\";\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\t1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = \"<group>\"; };\n\t\t1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = \"<group>\"; };\n\t\t1C5CC7E46934FDE0E447442D /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = \"Pods-Runner.profile.xcconfig\"; path = \"Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t2279A86D9B11C7C39B90F506 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t33FEEB79E32B62423941CBAA /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = \"Pods-Runner.debug.xcconfig\"; path = \"Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig\"; sourceTree = \"<group>\"; };\n\t\t3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = \"<group>\"; };\n\t\t74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"Runner-Bridging-Header.h\"; sourceTree = \"<group>\"; };\n\t\t74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = \"<group>\"; };\n\t\t7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = \"<group>\"; };\n\t\t9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = \"<group>\"; };\n\t\t9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = \"<group>\"; };\n\t\t97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = \"<group>\"; };\n\t\t97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = \"<group>\"; };\n\t\t97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = \"<group>\"; };\n\t\t97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tAA70A6DF0334C2E535E224A2 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = \"Pods-Runner.release.xcconfig\"; path = \"Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig\"; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t97C146EB1CF9000F007C117D /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t6C8ECD6F2486B73DB85F45CD /* Pods_Runner.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t6E75A15E6B4C7D2038234B4B /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t2279A86D9B11C7C39B90F506 /* Pods_Runner.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t92F4E10C4DBF0C36141E5840 /* Pods */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t33FEEB79E32B62423941CBAA /* Pods-Runner.debug.xcconfig */,\n\t\t\t\tAA70A6DF0334C2E535E224A2 /* Pods-Runner.release.xcconfig */,\n\t\t\t\t1C5CC7E46934FDE0E447442D /* Pods-Runner.profile.xcconfig */,\n\t\t\t);\n\t\t\tname = Pods;\n\t\t\tpath = Pods;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t9740EEB11CF90186004384FC /* Flutter */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */,\n\t\t\t\t9740EEB21CF90195004384FC /* Debug.xcconfig */,\n\t\t\t\t7AFA3C8E1D35360C0083082E /* Release.xcconfig */,\n\t\t\t\t9740EEB31CF90195004384FC /* Generated.xcconfig */,\n\t\t\t);\n\t\t\tname = Flutter;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t97C146E51CF9000F007C117D = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t9740EEB11CF90186004384FC /* Flutter */,\n\t\t\t\t97C146F01CF9000F007C117D /* Runner */,\n\t\t\t\t97C146EF1CF9000F007C117D /* Products */,\n\t\t\t\t92F4E10C4DBF0C36141E5840 /* Pods */,\n\t\t\t\t6E75A15E6B4C7D2038234B4B /* Frameworks */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t97C146EF1CF9000F007C117D /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t97C146EE1CF9000F007C117D /* Runner.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t97C146F01CF9000F007C117D /* Runner */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t97C146FA1CF9000F007C117D /* Main.storyboard */,\n\t\t\t\t97C146FD1CF9000F007C117D /* Assets.xcassets */,\n\t\t\t\t97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */,\n\t\t\t\t97C147021CF9000F007C117D /* Info.plist */,\n\t\t\t\t1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,\n\t\t\t\t1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,\n\t\t\t\t74858FAE1ED2DC5600515810 /* AppDelegate.swift */,\n\t\t\t\t74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */,\n\t\t\t);\n\t\t\tpath = Runner;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t97C146ED1CF9000F007C117D /* Runner */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget \"Runner\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t94D7F106CD18BA2772B4BC0B /* [CP] Check Pods Manifest.lock */,\n\t\t\t\t9740EEB61CF901F6004384FC /* Run Script */,\n\t\t\t\t97C146EA1CF9000F007C117D /* Sources */,\n\t\t\t\t97C146EB1CF9000F007C117D /* Frameworks */,\n\t\t\t\t97C146EC1CF9000F007C117D /* Resources */,\n\t\t\t\t9705A1C41CF9048500538489 /* Embed Frameworks */,\n\t\t\t\t3B06AD1E1E4923F5004D2608 /* Thin Binary */,\n\t\t\t\t6FF052D9A0599EBE3CDD6061 /* [CP] Embed Pods Frameworks */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = Runner;\n\t\t\tproductName = Runner;\n\t\t\tproductReference = 97C146EE1CF9000F007C117D /* Runner.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t97C146E61CF9000F007C117D /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 1020;\n\t\t\t\tORGANIZATIONNAME = \"\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t97C146ED1CF9000F007C117D = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.3.1;\n\t\t\t\t\t\tLastSwiftMigration = 1100;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject \"Runner\" */;\n\t\t\tcompatibilityVersion = \"Xcode 9.3\";\n\t\t\tdevelopmentRegion = en;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\tBase,\n\t\t\t);\n\t\t\tmainGroup = 97C146E51CF9000F007C117D;\n\t\t\tproductRefGroup = 97C146EF1CF9000F007C117D /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t97C146ED1CF9000F007C117D /* Runner */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t97C146EC1CF9000F007C117D /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */,\n\t\t\t\t3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,\n\t\t\t\t97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,\n\t\t\t\t97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\t3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Thin Binary\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"/bin/sh \\\"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\\\" embed_and_thin\";\n\t\t};\n\t\t6FF052D9A0599EBE3CDD6061 /* [CP] Embed Pods Frameworks */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputFileListPaths = (\n\t\t\t\t\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist\",\n\t\t\t);\n\t\t\tname = \"[CP] Embed Pods Frameworks\";\n\t\t\toutputFileListPaths = (\n\t\t\t\t\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist\",\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"\\\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\\\"\\n\";\n\t\t\tshowEnvVarsInLog = 0;\n\t\t};\n\t\t94D7F106CD18BA2772B4BC0B /* [CP] Check Pods Manifest.lock */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputFileListPaths = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t\t\"${PODS_PODFILE_DIR_PATH}/Podfile.lock\",\n\t\t\t\t\"${PODS_ROOT}/Manifest.lock\",\n\t\t\t);\n\t\t\tname = \"[CP] Check Pods Manifest.lock\";\n\t\t\toutputFileListPaths = (\n\t\t\t);\n\t\t\toutputPaths = (\n\t\t\t\t\"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt\",\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"diff \\\"${PODS_PODFILE_DIR_PATH}/Podfile.lock\\\" \\\"${PODS_ROOT}/Manifest.lock\\\" > /dev/null\\nif [ $? != 0 ] ; then\\n    # print error to STDERR\\n    echo \\\"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\\\" >&2\\n    exit 1\\nfi\\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\\necho \\\"SUCCESS\\\" > \\\"${SCRIPT_OUTPUT_FILE_0}\\\"\\n\";\n\t\t\tshowEnvVarsInLog = 0;\n\t\t};\n\t\t9740EEB61CF901F6004384FC /* Run Script */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Run Script\";\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"/bin/sh \\\"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\\\" build\";\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t97C146EA1CF9000F007C117D /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */,\n\t\t\t\t1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXVariantGroup section */\n\t\t97C146FA1CF9000F007C117D /* Main.storyboard */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t97C146FB1CF9000F007C117D /* Base */,\n\t\t\t);\n\t\t\tname = Main.storyboard;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t97C147001CF9000F007C117D /* Base */,\n\t\t\t);\n\t\t\tname = LaunchScreen.storyboard;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\t249021D3217E4FDB00AE95B9 /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSUPPORTED_PLATFORMS = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\t249021D4217E4FDB00AE95B9 /* Profile */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = \"$(FLUTTER_BUILD_NUMBER)\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tINFOPLIST_FILE = Runner/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.example.realEstate;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = \"Runner/Runner-Bridging-Header.h\";\n\t\t\t\tSWIFT_VERSION = 5.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t};\n\t\t\tname = Profile;\n\t\t};\n\t\t97C147031CF9000F007C117D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t97C147041CF9000F007C117D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 9.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tSUPPORTED_PLATFORMS = iphoneos;\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Owholemodule\";\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t97C147061CF9000F007C117D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = \"$(FLUTTER_BUILD_NUMBER)\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tINFOPLIST_FILE = Runner/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.example.realEstate;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = \"Runner/Runner-Bridging-Header.h\";\n\t\t\t\tSWIFT_OPTIMIZATION_LEVEL = \"-Onone\";\n\t\t\t\tSWIFT_VERSION = 5.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t97C147071CF9000F007C117D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCURRENT_PROJECT_VERSION = \"$(FLUTTER_BUILD_NUMBER)\";\n\t\t\t\tENABLE_BITCODE = NO;\n\t\t\t\tINFOPLIST_FILE = Runner/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.example.realEstate;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tSWIFT_OBJC_BRIDGING_HEADER = \"Runner/Runner-Bridging-Header.h\";\n\t\t\t\tSWIFT_VERSION = 5.0;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t97C146E91CF9000F007C117D /* Build configuration list for PBXProject \"Runner\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t97C147031CF9000F007C117D /* Debug */,\n\t\t\t\t97C147041CF9000F007C117D /* Release */,\n\t\t\t\t249021D3217E4FDB00AE95B9 /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget \"Runner\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t97C147061CF9000F007C117D /* Debug */,\n\t\t\t\t97C147071CF9000F007C117D /* Release */,\n\t\t\t\t249021D4217E4FDB00AE95B9 /* Profile */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 97C146E61CF9000F007C117D /* Project object */;\n}\n"
  },
  {
    "path": "ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDEDidComputeMac32BitWarning</key>\n\t<true/>\n</dict>\n</plist>\n"
  },
  {
    "path": "ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreviewsEnabled</key>\n\t<false/>\n</dict>\n</plist>\n"
  },
  {
    "path": "ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1020\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"97C146ED1CF9000F007C117D\"\n               BuildableName = \"Runner.app\"\n               BlueprintName = \"Runner\"\n               ReferencedContainer = \"container:Runner.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"97C146ED1CF9000F007C117D\"\n            BuildableName = \"Runner.app\"\n            BlueprintName = \"Runner\"\n            ReferencedContainer = \"container:Runner.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <BuildableProductRunnable\n         runnableDebuggingMode = \"0\">\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"97C146ED1CF9000F007C117D\"\n            BuildableName = \"Runner.app\"\n            BlueprintName = \"Runner\"\n            ReferencedContainer = \"container:Runner.xcodeproj\">\n         </BuildableReference>\n      </BuildableProductRunnable>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Profile\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <BuildableProductRunnable\n         runnableDebuggingMode = \"0\">\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"97C146ED1CF9000F007C117D\"\n            BuildableName = \"Runner.app\"\n            BlueprintName = \"Runner\"\n            ReferencedContainer = \"container:Runner.xcodeproj\">\n         </BuildableReference>\n      </BuildableProductRunnable>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "ios/Runner.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Runner.xcodeproj\">\n   </FileRef>\n   <FileRef\n      location = \"group:Pods/Pods.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDEDidComputeMac32BitWarning</key>\n\t<true/>\n</dict>\n</plist>\n"
  },
  {
    "path": "ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PreviewsEnabled</key>\n\t<false/>\n</dict>\n</plist>\n"
  },
  {
    "path": "lib/main.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'pages/root.dart';\nimport 'theme/color.dart';\n\nvoid main() {\n  runApp(MyApp());\n}\n\nclass MyApp extends StatelessWidget {\n  @override\n  Widget build(BuildContext context) {\n    return MaterialApp(\n      debugShowCheckedModeBanner: false,\n      title: 'Real Estate App',\n      theme: ThemeData(\n        primaryColor: AppColor.primary,\n      ),\n      home: const RootApp(),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/pages/explore.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\nimport 'package:real_estate/utils/data.dart';\nimport 'package:real_estate/widgets/broker_item.dart';\nimport 'package:real_estate/widgets/company_item.dart';\nimport 'package:real_estate/widgets/custom_textbox.dart';\nimport 'package:real_estate/widgets/icon_box.dart';\nimport 'package:real_estate/widgets/recommend_item.dart';\n\nclass ExplorePage extends StatefulWidget {\n  const ExplorePage({Key? key}) : super(key: key);\n\n  @override\n  _ExplorePageState createState() => _ExplorePageState();\n}\n\nclass _ExplorePageState extends State<ExplorePage> {\n  @override\n  Widget build(BuildContext context) {\n    return CustomScrollView(\n      slivers: <Widget>[\n        SliverAppBar(\n          backgroundColor: AppColor.appBgColor,\n          pinned: true,\n          snap: true,\n          floating: true,\n          title: _buildHeader(),\n        ),\n        SliverToBoxAdapter(child: _buildBody())\n      ],\n    );\n  }\n\n  _buildHeader() {\n    return Row(\n      children: [\n        Expanded(\n          child: CustomTextBox(\n            hint: \"Search\",\n            prefix: Icon(Icons.search, color: Colors.grey),\n          ),\n        ),\n        const SizedBox(\n          width: 10,\n        ),\n        IconBox(\n          child: Icon(Icons.filter_list_rounded, color: Colors.white),\n          bgColor: AppColor.secondary,\n          radius: 10,\n        )\n      ],\n    );\n  }\n\n  _buildBody() {\n    return SingleChildScrollView(\n      child: Column(\n        crossAxisAlignment: CrossAxisAlignment.start,\n        children: [\n          const SizedBox(\n            height: 20,\n          ),\n          const Padding(\n            padding: EdgeInsets.only(left: 15),\n            child: Text(\n              \"Matched Properties\",\n              style: TextStyle(fontSize: 18, fontWeight: FontWeight.w600),\n            ),\n          ),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildRecommended(),\n          const SizedBox(\n            height: 20,\n          ),\n          const Padding(\n            padding: EdgeInsets.only(left: 15),\n            child: Text(\n              \"Companies\",\n              style: TextStyle(\n                fontSize: 18,\n                fontWeight: FontWeight.w600,\n              ),\n            ),\n          ),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildCompanies(),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildBrokers(),\n          const SizedBox(\n            height: 100,\n          ),\n        ],\n      ),\n    );\n  }\n\n  _buildRecommended() {\n    List<Widget> lists = List.generate(\n      recommended.length,\n      (index) => RecommendItem(\n        data: recommended[index],\n      ),\n    );\n\n    return SingleChildScrollView(\n      scrollDirection: Axis.horizontal,\n      padding: EdgeInsets.only(bottom: 5, left: 15),\n      child: Row(children: lists),\n    );\n  }\n\n  int _selectedCategory = 0;\n  _buildCompanies() {\n    List<Widget> lists = List.generate(\n      companies.length,\n      (index) => CompanyItem(\n        data: companies[index],\n        color: AppColor.listColors[index % 10],\n        selected: index == _selectedCategory,\n        onTap: () {\n          setState(() {\n            _selectedCategory = index;\n          });\n        },\n      ),\n    );\n\n    return SingleChildScrollView(\n      scrollDirection: Axis.horizontal,\n      padding: EdgeInsets.only(bottom: 5, left: 15),\n      child: Row(children: lists),\n    );\n  }\n\n  _buildBrokers() {\n    List<Widget> lists = List.generate(\n      brokers.length,\n      (index) => BrokerItem(\n        data: brokers[index],\n      ),\n    );\n\n    return Padding(\n      padding: EdgeInsets.symmetric(horizontal: 15),\n      child: Column(children: lists),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/pages/home.dart",
    "content": "import 'package:carousel_slider/carousel_slider.dart';\nimport 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\nimport 'package:real_estate/utils/data.dart';\nimport 'package:real_estate/widgets/category_item.dart';\nimport 'package:real_estate/widgets/custom_image.dart';\nimport 'package:real_estate/widgets/custom_textbox.dart';\nimport 'package:real_estate/widgets/icon_box.dart';\nimport 'package:real_estate/widgets/property_item.dart';\nimport 'package:real_estate/widgets/recent_item.dart';\nimport 'package:real_estate/widgets/recommend_item.dart';\n\nclass HomePage extends StatefulWidget {\n  const HomePage({Key? key}) : super(key: key);\n\n  @override\n  _HomePageState createState() => _HomePageState();\n}\n\nclass _HomePageState extends State<HomePage> {\n  @override\n  Widget build(BuildContext context) {\n    return CustomScrollView(\n      slivers: <Widget>[\n        SliverAppBar(\n          backgroundColor: AppColor.appBgColor,\n          pinned: true,\n          snap: true,\n          floating: true,\n          title: _buildHeader(),\n        ),\n        SliverToBoxAdapter(child: _buildBody())\n      ],\n    );\n  }\n\n  _buildHeader() {\n    return Column(\n      children: [\n        Row(\n          crossAxisAlignment: CrossAxisAlignment.center,\n          mainAxisAlignment: MainAxisAlignment.spaceBetween,\n          children: [\n            Column(\n              crossAxisAlignment: CrossAxisAlignment.start,\n              children: [\n                Text(\n                  \"Hello!\",\n                  style: TextStyle(\n                    color: AppColor.darker,\n                    fontSize: 14,\n                    fontWeight: FontWeight.w500,\n                  ),\n                ),\n                Text(\n                  \"Sangvaleap\",\n                  style: TextStyle(\n                    color: Colors.black87,\n                    fontSize: 17,\n                    fontWeight: FontWeight.w600,\n                  ),\n                ),\n              ],\n            ),\n            CustomImage(\n              profile,\n              width: 35,\n              height: 35,\n              trBackground: true,\n              borderColor: AppColor.primary,\n              radius: 10,\n            ),\n          ],\n        ),\n      ],\n    );\n  }\n\n  _buildBody() {\n    return SingleChildScrollView(\n      child: Column(\n        crossAxisAlignment: CrossAxisAlignment.start,\n        children: [\n          const SizedBox(\n            height: 15,\n          ),\n          _buildSearch(),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildCategories(),\n          const SizedBox(\n            height: 20,\n          ),\n          Padding(\n            padding: EdgeInsets.symmetric(horizontal: 15),\n            child: Row(\n              mainAxisAlignment: MainAxisAlignment.spaceBetween,\n              children: const [\n                Text(\n                  \"Popular\",\n                  style: TextStyle(fontSize: 18, fontWeight: FontWeight.w600),\n                ),\n                Text(\n                  \"See all\",\n                  style: TextStyle(fontSize: 14, color: AppColor.darker),\n                ),\n              ],\n            ),\n          ),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildPopulars(),\n          const SizedBox(\n            height: 20,\n          ),\n          Padding(\n            padding: EdgeInsets.symmetric(horizontal: 15),\n            child: Row(\n              mainAxisAlignment: MainAxisAlignment.spaceBetween,\n              children: [\n                Text(\n                  \"Recommended\",\n                  style: TextStyle(fontSize: 18, fontWeight: FontWeight.w600),\n                ),\n                Text(\n                  \"See all\",\n                  style: TextStyle(fontSize: 14, color: AppColor.darker),\n                ),\n              ],\n            ),\n          ),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildRecommended(),\n          const SizedBox(\n            height: 20,\n          ),\n          Padding(\n            padding: EdgeInsets.symmetric(horizontal: 15),\n            child: Row(\n              mainAxisAlignment: MainAxisAlignment.spaceBetween,\n              children: [\n                Text(\n                  \"Recent\",\n                  style: TextStyle(fontSize: 18, fontWeight: FontWeight.w600),\n                ),\n                Text(\n                  \"See all\",\n                  style: TextStyle(fontSize: 14, color: AppColor.darker),\n                ),\n              ],\n            ),\n          ),\n          const SizedBox(\n            height: 20,\n          ),\n          _buildRecent(),\n          const SizedBox(\n            height: 100,\n          ),\n        ],\n      ),\n    );\n  }\n\n  Widget _buildSearch() {\n    return Padding(\n      padding: const EdgeInsets.symmetric(horizontal: 15),\n      child: Row(\n        children: [\n          Expanded(\n            child: CustomTextBox(\n              hint: \"Search\",\n              prefix: Icon(Icons.search, color: Colors.grey),\n            ),\n          ),\n          const SizedBox(\n            width: 10,\n          ),\n          IconBox(\n            child: Icon(Icons.filter_list_rounded, color: Colors.white),\n            bgColor: AppColor.secondary,\n            radius: 10,\n          )\n        ],\n      ),\n    );\n  }\n\n  int _selectedCategory = 0;\n  Widget _buildCategories() {\n    List<Widget> lists = List.generate(\n      categories.length,\n      (index) => CategoryItem(\n        data: categories[index],\n        selected: index == _selectedCategory,\n        onTap: () {\n          setState(() {\n            _selectedCategory = index;\n          });\n        },\n      ),\n    );\n    return SingleChildScrollView(\n      scrollDirection: Axis.horizontal,\n      padding: EdgeInsets.only(bottom: 5, left: 15),\n      child: Row(children: lists),\n    );\n  }\n\n  Widget _buildPopulars() {\n    return CarouselSlider(\n      options: CarouselOptions(\n        height: 240,\n        enlargeCenterPage: true,\n        disableCenter: true,\n        viewportFraction: .8,\n      ),\n      items: List.generate(\n        populars.length,\n        (index) => PropertyItem(\n          data: populars[index],\n        ),\n      ),\n    );\n  }\n\n  Widget _buildRecommended() {\n    List<Widget> lists = List.generate(\n      recommended.length,\n      (index) => RecommendItem(\n        data: recommended[index],\n      ),\n    );\n\n    return SingleChildScrollView(\n      scrollDirection: Axis.horizontal,\n      padding: EdgeInsets.only(bottom: 5, left: 15),\n      child: Row(children: lists),\n    );\n  }\n\n  Widget _buildRecent() {\n    List<Widget> lists = List.generate(\n      recents.length,\n      (index) => RecentItem(\n        data: recents[index],\n      ),\n    );\n\n    return SingleChildScrollView(\n      scrollDirection: Axis.horizontal,\n      padding: EdgeInsets.only(bottom: 5, left: 15),\n      child: Row(children: lists),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/pages/root.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/pages/explore.dart';\nimport 'package:real_estate/theme/color.dart';\nimport 'package:real_estate/widgets/bottombar_item.dart';\n\nimport 'home.dart';\n\nclass RootApp extends StatefulWidget {\n  const RootApp({Key? key}) : super(key: key);\n\n  @override\n  _RootAppState createState() => _RootAppState();\n}\n\nclass _RootAppState extends State<RootApp> {\n  int _activeTab = 0;\n  final List _barItems = [\n    {\n      \"icon\": Icons.home_outlined,\n      \"active_icon\": Icons.home_rounded,\n      \"page\": HomePage(),\n    },\n    {\n      \"icon\": Icons.search_outlined,\n      \"active_icon\": Icons.search,\n      \"page\": ExplorePage(),\n    },\n    {\n      \"icon\": Icons.favorite_border,\n      \"active_icon\": Icons.favorite_outlined,\n      \"page\": HomePage(),\n    },\n    {\n      \"icon\": Icons.forum_outlined,\n      \"active_icon\": Icons.forum_rounded,\n      \"page\": HomePage(),\n    },\n    {\n      \"icon\": Icons.settings_outlined,\n      \"active_icon\": Icons.settings_rounded,\n      \"page\": HomePage(),\n    },\n  ];\n\n  @override\n  Widget build(BuildContext context) {\n    return Scaffold(\n      backgroundColor: AppColor.appBgColor,\n      body: _buildPage(),\n      floatingActionButton: _buildBottomBar(),\n      floatingActionButtonLocation:\n          FloatingActionButtonLocation.miniCenterDocked,\n    );\n  }\n\n  Widget _buildPage() {\n    return IndexedStack(\n      index: _activeTab,\n      children: List.generate(\n        _barItems.length,\n        (index) => _barItems[index][\"page\"],\n      ),\n    );\n  }\n\n  Widget _buildBottomBar() {\n    return Container(\n      height: 55,\n      width: double.infinity,\n      margin: EdgeInsets.symmetric(horizontal: 15),\n      decoration: BoxDecoration(\n        color: AppColor.bottomBarColor,\n        borderRadius: BorderRadius.circular(20),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(0.1),\n            blurRadius: 1,\n            spreadRadius: 1,\n            offset: Offset(0, 1),\n          )\n        ],\n      ),\n      child: Row(\n        mainAxisAlignment: MainAxisAlignment.spaceAround,\n        crossAxisAlignment: CrossAxisAlignment.end,\n        children: List.generate(\n          _barItems.length,\n          (index) => BottomBarItem(\n            _activeTab == index\n                ? _barItems[index][\"active_icon\"]\n                : _barItems[index][\"icon\"],\n            isActive: _activeTab == index,\n            activeColor: AppColor.primary,\n            onTap: () {\n              setState(() {\n                _activeTab = index;\n              });\n            },\n          ),\n        ),\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/theme/color.dart",
    "content": "import 'package:flutter/material.dart';\n\nclass AppColor {\n  static const primary = Color(0xFF3498db);\n  static const secondary = Color(0xFF2ecc71);\n\n  static const darker = Color(0xFF3E4249);\n  static const cardColor = Colors.white;\n  static const mainColor = Color(0xFF000000);\n  static const appBgColor = Color(0xFFFAFAFA);\n  static const shadowColor = Colors.black87;\n  static const textBoxColor = Colors.white;\n\n  static const bottomBarColor = Colors.white;\n  static const inActiveColor = Colors.grey;\n\n  static const yellow = Color(0xFFffcb66);\n  static const green = Color(0xFFb2e1b5);\n  static const pink = Color(0xFFf5bde8);\n  static const purple = Color(0xFFd9bcff);\n  static const red = Color(0xFFff4b60);\n  static const orange = Color(0xFFFFC8A2);\n  static const sky = Color(0xFFABDEE6);\n  static const blue = Color(0xFF509BE4);\n\n  static const listColors = [\n    green,\n    purple,\n    yellow,\n    orange,\n    sky,\n    secondary,\n    red,\n    blue,\n    pink,\n    yellow,\n  ];\n}\n"
  },
  {
    "path": "lib/utils/data.dart",
    "content": "\nimport 'package:flutter/material.dart';\nimport 'package:font_awesome_flutter/font_awesome_flutter.dart';\n\nvar profile = \"https://avatars.githubusercontent.com/u/86506519?v=4\";\n\nList populars = [\n  {\n    \"image\": \"https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Single Villa\",\n    \"price\": \"\\$280k\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"is_favorited\": true,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1598928506311-c55ded91a20c?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Convertible Studio\",\n    \"price\": \"\\$150k\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"is_favorited\": false,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1576941089067-2de3c901e126?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Twin Castle\",\n    \"price\": \"\\$175k\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"is_favorited\": false,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1549517045-bc93de075e53?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Twin Villa\",\n    \"price\": \"\\$120k\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"is_favorited\": false,\n  },\n];\n\nList recommended = [\n  {\n    \"image\": \"https://images.unsplash.com/photo-1592595896616-c37162298647?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Garden House\",\n    \"price\": \"\\$180k\",\n    \"location\": \"Phnom Penh\",\n    \"is_favorited\": true,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1576941089067-2de3c901e126?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Twin Castle\",\n    \"price\": \"\\$175k\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"is_favorited\": false,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1625602812206-5ec545ca1231?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"King Villa\",\n    \"price\": \"\\$180k\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"is_favorited\": true,\n  },\n];\n\nList recents = [\n  {\n    \"image\": \"https://images.unsplash.com/photo-1549517045-bc93de075e53?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Double Villa\",\n    \"price\": \"\\$180k\",\n    \"location\": \"Phnom Penh\",\n    \"is_favorited\": false,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1598928506311-c55ded91a20c?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Convertible Studio\",\n    \"price\": \"\\$150k\",\n    \"location\": \"Phnom Penh\",\n    \"is_favorited\": false,\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1576941089067-2de3c901e126?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Double Villa\",\n    \"price\": \"\\$180k\",\n    \"location\": \"Phnom Penh\",\n    \"is_favorited\": false,\n  },\n];\n\nList categories = [\n  {\n    \"name\" : \"All\",\n    \"icon\" :  FontAwesomeIcons.boxes\n  },\n  {\n    \"name\" : \"Villa\",\n    \"icon\" :  FontAwesomeIcons.university\n  },\n  {\n    \"name\" : \"Shop\",\n    \"icon\" :  FontAwesomeIcons.storeAlt\n  },\n  {\n    \"name\" : \"Building\",\n    \"icon\" :  FontAwesomeIcons.building\n  },\n  {\n    \"name\" : \"House\",\n    \"icon\" :  FontAwesomeIcons.home\n  },\n];\n\nvar brokers = [\n    {\n    \"image\": \"https://images.unsplash.com/photo-1544005313-94ddf0286df2?ixid=MXwxMjA3fDB8MHxzZWFyY2h8MjV8fHByb2ZpbGV8ZW58MHx8MHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\", \n    \"name\": \"John Siphron\", \n    \"type\": \"Broker\", \n    \"description\": \"Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document\",\n    \"rate\": 4, \n  },\n  {\n    \"image\":\"https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?ixid=MXwxMjA3fDB8MHxzZWFyY2h8MTF8fHByb2ZpbGV8ZW58MHx8MHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\" : \"Corey Aminoff\",\n    \"type\": \"Broker\", \n    \"description\": \"Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document\",\n    \"rate\": 4, \n  },\n  {\n    \"image\" : \"https://images.unsplash.com/photo-1617069470302-9b5592c80f66?ixid=MnwxMjA3fDB8MHxzZWFyY2h8NHx8Z2lybHxlbnwwfHwwfHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Siriya Aminoff\", \n    \"type\": \"Broker\", \n    \"description\": \"Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document\",\n    \"rate\": 4, \n  },\n  {\n    \"image\" : \"https://images.unsplash.com/photo-1545167622-3a6ac756afa4?ixid=MXwxMjA3fDB8MHxzZWFyY2h8MTB8fHByb2ZpbGV8ZW58MHx8MHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Rubin Joe\", \n    \"type\": \"Broker\", \n    \"description\": \"Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document\",\n    \"rate\": 4, \n  },\n];\n\nList companies = [\n  {\n    \"image\": \"https://images.unsplash.com/photo-1549517045-bc93de075e53?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"TS Home\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"type\": \"Broker\",\n    \"is_favorited\": false,\n    \"icon\" : Icons.domain_rounded\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1618221469555-7f3ad97540d6?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Century 21\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"type\": \"Broker\",\n    \"is_favorited\": true,\n    \"icon\" : Icons.house_siding_rounded\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1625602812206-5ec545ca1231?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Dabest Pro\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"type\": \"Broker\",\n    \"is_favorited\": true,\n    \"icon\" : Icons.home_work_rounded\n  },\n  {\n    \"image\": \"https://images.unsplash.com/photo-1625602812206-5ec545ca1231?ixid=MXwxMjA3fDB8MHxzZWFyY2h8NHx8Zm9vZHxlbnwwfHwwfA%3D%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=800&q=60\",\n    \"name\": \"Cam Reality\",\n    \"location\": \"Phnom Penh, Cambodia\",\n    \"type\": \"Broker\",\n    \"is_favorited\": true,\n    \"icon\" : Icons.location_city_rounded\n  },\n];"
  },
  {
    "path": "lib/widgets/bottombar_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nclass BottomBarItem extends StatelessWidget {\n  const BottomBarItem(\n    this.icon, {\n    this.onTap,\n    this.color = AppColor.inActiveColor,\n    this.activeColor = AppColor.primary,\n    this.isActive = false,\n    this.isNotified = false,\n  });\n\n  final IconData icon;\n  final Color color;\n  final Color activeColor;\n  final bool isNotified;\n  final bool isActive;\n  final GestureTapCallback? onTap;\n\n  @override\n  Widget build(BuildContext context) {\n    return GestureDetector(\n      onTap: onTap,\n      child: Container(\n        alignment: Alignment.center,\n        child: Stack(\n          alignment: Alignment.center,\n          children: <Widget>[\n            Container(\n              padding: EdgeInsets.all(7),\n              decoration: BoxDecoration(\n                borderRadius: BorderRadius.circular(50),\n                color: isActive\n                    ? AppColor.primary.withOpacity(.1)\n                    : Colors.transparent,\n              ),\n              child: Icon(\n                icon,\n                size: 25,\n                color: isActive ? activeColor : color,\n              ),\n            ),\n            Positioned(\n              bottom: -8,\n              child: Icon(\n                Icons.arrow_drop_up,\n                size: 20.0,\n                color: isActive ? activeColor : Colors.transparent,\n              ),\n            ),\n          ],\n        ),\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/broker_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\nimport 'custom_image.dart';\n\nclass BrokerItem extends StatelessWidget {\n  const BrokerItem({Key? key, required this.data}) : super(key: key);\n\n  final data;\n\n  @override\n  Widget build(BuildContext context) {\n    return Container(\n      padding: EdgeInsets.all(10),\n      margin: EdgeInsets.only(bottom: 10),\n      decoration: BoxDecoration(\n        color: Colors.white,\n        borderRadius: BorderRadius.circular(10),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(0.1),\n            spreadRadius: .5,\n            blurRadius: 1,\n            offset: Offset(0, 1), // changes position of shadow\n          ),\n        ],\n      ),\n      child: Column(\n        crossAxisAlignment: CrossAxisAlignment.start,\n        children: [\n          _buildProfile(),\n          const SizedBox(\n            height: 10,\n          ),\n          Text(\n            data[\"description\"],\n            style: TextStyle(height: 1.5, color: AppColor.darker),\n          ),\n          const SizedBox(\n            height: 10,\n          ),\n          _buildRate()\n        ],\n      ),\n    );\n  }\n\n  Widget _buildProfile() {\n    return Row(\n      children: [\n        CustomImage(\n          data[\"image\"],\n          width: 35,\n          height: 35,\n        ),\n        const SizedBox(\n          width: 10,\n        ),\n        Column(\n          crossAxisAlignment: CrossAxisAlignment.start,\n          children: [\n            Text(\n              data[\"name\"],\n              style: TextStyle(fontSize: 13, fontWeight: FontWeight.w500),\n            ),\n            const SizedBox(\n              height: 3,\n            ),\n            Text(\n              data[\"type\"],\n              style: TextStyle(fontSize: 12, color: Colors.grey),\n            ),\n          ],\n        )\n      ],\n    );\n  }\n\n  Widget _buildRate() {\n    return Row(\n      children: [\n        Icon(\n          Icons.star,\n          size: 16,\n          color: AppColor.yellow,\n        ),\n        Icon(\n          Icons.star,\n          size: 16,\n          color: AppColor.yellow,\n        ),\n        Icon(\n          Icons.star,\n          size: 16,\n          color: AppColor.yellow,\n        ),\n        Icon(\n          Icons.star,\n          size: 16,\n          color: AppColor.yellow,\n        ),\n        Icon(\n          Icons.star_outline,\n          size: 16,\n          color: AppColor.yellow,\n        ),\n      ],\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/category_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nclass CategoryItem extends StatelessWidget {\n  const CategoryItem({\n    Key? key,\n    required this.data,\n    this.selected = false,\n    this.onTap,\n  }) : super(key: key);\n\n  final data;\n  final bool selected;\n  final GestureTapCallback? onTap;\n\n  @override\n  Widget build(BuildContext context) {\n    return GestureDetector(\n      onTap: onTap,\n      child: AnimatedContainer(\n        duration: const Duration(milliseconds: 500),\n        curve: Curves.fastOutSlowIn,\n        padding: EdgeInsets.fromLTRB(5, 20, 5, 0),\n        margin: EdgeInsets.only(right: 10),\n        width: 90,\n        height: 90,\n        decoration: BoxDecoration(\n          color: selected ? AppColor.primary : AppColor.cardColor,\n          borderRadius: BorderRadius.circular(10),\n          boxShadow: [\n            BoxShadow(\n              color: AppColor.shadowColor.withOpacity(0.1),\n              spreadRadius: .5,\n              blurRadius: .5,\n              offset: Offset(0, 1), // changes position of shadow\n            ),\n          ],\n        ),\n        child: Column(\n          children: [\n            Icon(\n              data[\"icon\"],\n              size: 25,\n              color: selected ? Colors.white : Colors.black,\n            ),\n            const SizedBox(\n              height: 5,\n            ),\n            Expanded(\n              child: Text(\n                data[\"name\"],\n                maxLines: 1,\n                overflow: TextOverflow.ellipsis,\n                style: TextStyle(\n                  fontSize: 13,\n                  color: selected ? Colors.white : AppColor.darker,\n                ),\n              ),\n            ),\n          ],\n        ),\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/company_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nclass CompanyItem extends StatelessWidget {\n  const CompanyItem({\n    Key? key,\n    required this.data,\n    this.bgColor = Colors.white,\n    this.color = AppColor.primary,\n    this.selected = false,\n    this.onTap,\n  }) : super(key: key);\n\n  final data;\n  final Color bgColor;\n  final Color color;\n  final bool selected;\n  final GestureTapCallback? onTap;\n\n  @override\n  Widget build(BuildContext context) {\n    return GestureDetector(\n      onTap: onTap,\n      child: Container(\n        width: 110,\n        height: 110,\n        margin: EdgeInsets.only(right: 15),\n        padding: EdgeInsets.fromLTRB(5, 10, 5, 0),\n        decoration: BoxDecoration(\n          color: Colors.white,\n          borderRadius: BorderRadius.circular(10),\n          boxShadow: [\n            BoxShadow(\n              color: AppColor.shadowColor.withOpacity(0.1),\n              spreadRadius: .5,\n              blurRadius: 1,\n              offset: Offset(0, 1), // changes position of shadow\n            ),\n          ],\n        ),\n        child: Column(\n          mainAxisAlignment: MainAxisAlignment.center,\n          children: [\n            Container(\n              padding: EdgeInsets.all(7),\n              decoration: BoxDecoration(\n                shape: BoxShape.circle,\n                color: color.withOpacity(.3),\n              ),\n              child: Icon(data[\"icon\"], color: color),\n            ),\n            const SizedBox(\n              height: 8,\n            ),\n            Text(\n              data[\"name\"],\n              maxLines: 1,\n              style: TextStyle(fontSize: 13, fontWeight: FontWeight.w500),\n            ),\n            const SizedBox(\n              height: 5,\n            ),\n            Expanded(\n              child: Text(\n                data[\"type\"],\n                style: TextStyle(fontSize: 12, color: AppColor.darker),\n              ),\n            ),\n            Visibility(\n              visible: selected,\n              child: Container(\n                width: double.infinity,\n                height: 2,\n                decoration: BoxDecoration(color: AppColor.primary),\n              ),\n            ),\n          ],\n        ),\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/custom_image.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nclass CustomImage extends StatelessWidget {\n  const CustomImage(\n    this.name, {\n    this.width = 100,\n    this.height = 100,\n    this.bgColor,\n    this.borderWidth = 0,\n    this.borderColor,\n    this.trBackground = false,\n    this.isNetwork = true,\n    this.radius = 50,\n  });\n\n  final String name;\n  final double width;\n  final double height;\n  final double borderWidth;\n  final Color? borderColor;\n  final Color? bgColor;\n  final bool trBackground;\n  final bool isNetwork;\n  final double radius;\n\n  @override\n  Widget build(BuildContext context) {\n    return Container(\n      width: width,\n      height: height,\n      decoration: BoxDecoration(\n        color: bgColor,\n        borderRadius: BorderRadius.circular(radius),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(0.1),\n            spreadRadius: 1,\n            blurRadius: 1,\n            offset: Offset(0, 1), // changes position of shadow\n          ),\n        ],\n        image: DecorationImage(\n          image: NetworkImage(name),\n          fit: BoxFit.cover,\n        ),\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/custom_textbox.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nclass CustomTextBox extends StatelessWidget {\n  const CustomTextBox({\n    Key? key,\n    this.hint = \"\",\n    this.prefix,\n    this.suffix,\n    this.controller,\n    this.readOnly = false,\n  }) : super(key: key);\n\n  final String hint;\n  final Widget? prefix;\n  final Widget? suffix;\n  final bool readOnly;\n  final TextEditingController? controller;\n\n  @override\n  Widget build(BuildContext context) {\n    return Container(\n      alignment: Alignment.center,\n      padding: EdgeInsets.only(bottom: 3),\n      height: 40,\n      decoration: BoxDecoration(\n        color: AppColor.textBoxColor,\n        border: Border.all(color: AppColor.textBoxColor),\n        borderRadius: BorderRadius.circular(10),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(.05),\n            spreadRadius: .5,\n            blurRadius: .5,\n            offset: Offset(0, 1), // changes position of shadow\n          ),\n        ],\n      ),\n      child: TextField(\n        readOnly: readOnly,\n        controller: controller,\n        decoration: InputDecoration(\n          prefixIcon: prefix,\n          suffixIcon: suffix,\n          border: InputBorder.none,\n          hintText: hint,\n          hintStyle: TextStyle(\n            color: Colors.grey,\n            fontSize: 15,\n          ),\n        ),\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/icon_box.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nclass IconBox extends StatelessWidget {\n  const IconBox({\n    Key? key,\n    required this.child,\n    this.bgColor,\n    this.onTap,\n    this.borderColor = Colors.transparent,\n    this.radius = 50,\n  }) : super(key: key);\n\n  final Widget child;\n  final Color borderColor;\n  final Color? bgColor;\n  final double radius;\n  final GestureTapCallback? onTap;\n\n  @override\n  Widget build(BuildContext context) {\n    return GestureDetector(\n      onTap: onTap,\n      child: Container(\n        padding: EdgeInsets.all(5),\n        decoration: BoxDecoration(\n          color: bgColor,\n          borderRadius: BorderRadius.circular(radius),\n          border: Border.all(color: borderColor),\n          boxShadow: [\n            BoxShadow(\n              color: AppColor.shadowColor.withOpacity(0.1),\n              spreadRadius: 1,\n              blurRadius: 1,\n              offset: Offset(0, 1), // changes position of shadow\n            ),\n          ],\n        ),\n        child: child,\n      ),\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/property_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nimport 'custom_image.dart';\nimport 'icon_box.dart';\n\nclass PropertyItem extends StatelessWidget {\n  const PropertyItem({Key? key, required this.data}) : super(key: key);\n\n  final data;\n\n  @override\n  Widget build(BuildContext context) {\n    return Container(\n      width: double.infinity,\n      height: 240,\n      margin: EdgeInsets.fromLTRB(0, 0, 0, 5),\n      decoration: BoxDecoration(\n        color: Colors.white,\n        borderRadius: BorderRadius.circular(25),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(0.1),\n            spreadRadius: .5,\n            blurRadius: 1,\n            offset: Offset(0, 1), // changes position of shadow\n          ),\n        ],\n      ),\n      child: Stack(\n        children: [\n          CustomImage(\n            data[\"image\"],\n            width: double.infinity,\n            height: 150,\n            radius: 25,\n          ),\n          Positioned(\n            right: 20,\n            top: 130,\n            child: _buildFavorite(),\n          ),\n          Positioned(\n            left: 15,\n            top: 160,\n            child: _buildInfo(),\n          ),\n        ],\n      ),\n    );\n  }\n\n  Widget _buildFavorite() {\n    return IconBox(\n      bgColor: AppColor.red,\n      child: Icon(\n        data[\"is_favorited\"] ? Icons.favorite : Icons.favorite_border,\n        color: Colors.white,\n        size: 20,\n      ),\n    );\n  }\n\n  Widget _buildInfo() {\n    return Column(\n      crossAxisAlignment: CrossAxisAlignment.start,\n      children: [\n        Text(\n          data[\"name\"],\n          maxLines: 1,\n          overflow: TextOverflow.ellipsis,\n          style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600),\n        ),\n        const SizedBox(\n          height: 5,\n        ),\n        Row(\n          children: [\n            Icon(\n              Icons.place_outlined,\n              color: AppColor.darker,\n              size: 13,\n            ),\n            const SizedBox(\n              width: 3,\n            ),\n            Text(\n              data[\"location\"],\n              style: TextStyle(fontSize: 13, color: AppColor.darker),\n            ),\n          ],\n        ),\n        const SizedBox(\n          height: 5,\n        ),\n        Text(\n          data[\"price\"],\n          style: TextStyle(\n            fontSize: 15,\n            color: AppColor.primary,\n            fontWeight: FontWeight.w500,\n          ),\n        ),\n      ],\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/recent_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nimport 'custom_image.dart';\n\nclass RecentItem extends StatelessWidget {\n  const RecentItem({Key? key, required this.data}) : super(key: key);\n  final data;\n\n  @override\n  Widget build(BuildContext context) {\n    return Container(\n      width: 280,\n      margin: EdgeInsets.only(right: 15),\n      decoration: BoxDecoration(\n        color: Colors.white,\n        borderRadius: BorderRadius.circular(20),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(0.1),\n            spreadRadius: 1,\n            blurRadius: 1,\n            offset: Offset(0, 1), // changes position of shadow\n          ),\n        ],\n      ),\n      child: Row(\n        children: [\n          CustomImage(\n            data[\"image\"],\n            radius: 20,\n          ),\n          const SizedBox(\n            width: 15,\n          ),\n          Expanded(\n            child: _buildInfo(),\n          )\n        ],\n      ),\n    );\n  }\n\n  Widget _buildInfo() {\n    return Column(\n      crossAxisAlignment: CrossAxisAlignment.start,\n      children: [\n        Text(\n          data[\"name\"],\n          maxLines: 1,\n          overflow: TextOverflow.ellipsis,\n          style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600),\n        ),\n        const SizedBox(\n          height: 5,\n        ),\n        Row(\n          crossAxisAlignment: CrossAxisAlignment.start,\n          children: [\n            Icon(\n              Icons.place_outlined,\n              size: 13,\n            ),\n            const SizedBox(\n              width: 3,\n            ),\n            Expanded(\n              child: Text(\n                data[\"location\"],\n                maxLines: 1,\n                overflow: TextOverflow.ellipsis,\n                style: TextStyle(\n                  fontSize: 12,\n                ),\n              ),\n            ),\n          ],\n        ),\n        const SizedBox(\n          height: 5,\n        ),\n        Text(\n          data[\"price\"],\n          style: TextStyle(\n            fontSize: 13,\n            color: AppColor.primary,\n            fontWeight: FontWeight.w500,\n          ),\n        )\n      ],\n    );\n  }\n}\n"
  },
  {
    "path": "lib/widgets/recommend_item.dart",
    "content": "import 'package:flutter/material.dart';\nimport 'package:real_estate/theme/color.dart';\n\nimport 'custom_image.dart';\n\nclass RecommendItem extends StatelessWidget {\n  const RecommendItem({Key? key, required this.data}) : super(key: key);\n  final data;\n\n  @override\n  Widget build(BuildContext context) {\n    return Container(\n      width: 220,\n      height: 130,\n      margin: EdgeInsets.only(right: 15),\n      decoration: BoxDecoration(\n        borderRadius: BorderRadius.circular(20),\n        boxShadow: [\n          BoxShadow(\n            color: AppColor.shadowColor.withOpacity(0.1),\n            spreadRadius: 1,\n            blurRadius: 1,\n            offset: Offset(0, 1), // changes position of shadow\n          ),\n        ],\n      ),\n      child: Stack(\n        children: [\n          CustomImage(\n            data[\"image\"],\n            radius: 20,\n            width: double.infinity,\n            height: double.infinity,\n          ),\n          _buildOverlay(),\n          Positioned(\n            bottom: 12,\n            left: 10,\n            child: _buildInfo(),\n          ),\n        ],\n      ),\n    );\n  }\n\n  Widget _buildOverlay() {\n    return Container(\n      width: double.infinity,\n      height: double.infinity,\n      decoration: BoxDecoration(\n        borderRadius: BorderRadius.circular(20),\n        gradient: LinearGradient(\n          begin: Alignment.bottomCenter,\n          end: Alignment.topCenter,\n          colors: [\n            Colors.black.withOpacity(.8),\n            Colors.white.withOpacity(.01),\n          ],\n        ),\n      ),\n    );\n  }\n\n  Widget _buildInfo() {\n    return Column(\n      crossAxisAlignment: CrossAxisAlignment.start,\n      children: [\n        Text(\n          data[\"name\"],\n          maxLines: 1,\n          overflow: TextOverflow.ellipsis,\n          style: TextStyle(\n            color: Colors.white,\n            fontSize: 14,\n            fontWeight: FontWeight.w600,\n          ),\n        ),\n        const SizedBox(\n          height: 5,\n        ),\n        Row(\n          children: [\n            Icon(\n              Icons.place_outlined,\n              color: Colors.white,\n              size: 13,\n            ),\n            const SizedBox(\n              width: 3,\n            ),\n            Text(\n              data[\"location\"],\n              style: TextStyle(\n                fontSize: 13,\n                color: Colors.white,\n              ),\n            ),\n          ],\n        ),\n      ],\n    );\n  }\n}\n"
  },
  {
    "path": "pubspec.yaml",
    "content": "name: real_estate\ndescription: A new Flutter project.\n\npublish_to: 'none' # Remove this line if you wish to publish to pub.dev\n\nversion: 1.0.0+1\n\nenvironment:\n  sdk: \">=2.12.0 <3.0.0\"\n\ndependencies:\n  flutter:\n    sdk: flutter\n\n  cupertino_icons: ^1.0.2\n  google_fonts: ^2.1.1\n  font_awesome_flutter: ^9.2.0\n  carousel_slider: ^4.0.0\n\n\ndev_dependencies:\n  flutter_test:\n    sdk: flutter\n\nflutter:\n  uses-material-design: true\n"
  },
  {
    "path": "test/widget_test.dart",
    "content": "// This is a basic Flutter widget test.\n//\n// To perform an interaction with a widget in your test, use the WidgetTester\n// utility that Flutter provides. For example, you can send tap and scroll\n// gestures. You can also use WidgetTester to find child widgets in the widget\n// tree, read text, and verify that the values of widget properties are correct.\n\nimport 'package:flutter/material.dart';\nimport 'package:flutter_test/flutter_test.dart';\n\nimport 'package:real_estate/main.dart';\n\nvoid main() {\n  testWidgets('Counter increments smoke test', (WidgetTester tester) async {\n    // Build our app and trigger a frame.\n    await tester.pumpWidget(MyApp());\n\n    // Verify that our counter starts at 0.\n    expect(find.text('0'), findsOneWidget);\n    expect(find.text('1'), findsNothing);\n\n    // Tap the '+' icon and trigger a frame.\n    await tester.tap(find.byIcon(Icons.add));\n    await tester.pump();\n\n    // Verify that our counter has incremented.\n    expect(find.text('0'), findsNothing);\n    expect(find.text('1'), findsOneWidget);\n  });\n}\n"
  }
]