From d9511a97a135ba2f9cd78bc0f8b845c4a6d2521d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Beno=C3=AEt=20Harrault?= <benoit@harrault.fr>
Date: Tue, 29 Jun 2021 19:07:09 +0200
Subject: [PATCH] Add initial empty app

---
 .gitignore                                    |  46 ++
 .gitlab-ci.yml                                | 122 +++++
 .metadata                                     |  10 +
 README.md                                     |   3 +-
 android/.gitignore                            |  11 +
 android/app/build.gradle                      |  70 +++
 android/app/src/debug/AndroidManifest.xml     |   7 +
 android/app/src/main/AndroidManifest.xml      |  41 ++
 .../minehunter/MainActivity.java              |   6 +
 .../res/drawable-v21/launch_background.xml    |  12 +
 .../main/res/drawable/launch_background.xml   |  12 +
 .../src/main/res/mipmap-hdpi/ic_launcher.png  | Bin 0 -> 1807 bytes
 .../src/main/res/mipmap-mdpi/ic_launcher.png  | Bin 0 -> 1217 bytes
 .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 2361 bytes
 .../main/res/mipmap-xxhdpi/ic_launcher.png    | Bin 0 -> 3800 bytes
 .../main/res/mipmap-xxxhdpi/ic_launcher.png   | Bin 0 -> 5409 bytes
 .../app/src/main/res/values-night/styles.xml  |  18 +
 android/app/src/main/res/values/styles.xml    |  18 +
 android/app/src/profile/AndroidManifest.xml   |   7 +
 android/build.gradle                          |  29 ++
 android/gradle.properties                     |   5 +
 .../gradle/wrapper/gradle-wrapper.properties  |   6 +
 android/settings.gradle                       |  11 +
 assets/files/.gitkeep                         |   0
 icons/build_icons.sh                          |  48 ++
 icons/icon.svg                                |  81 +++
 ios/.gitignore                                |  33 ++
 ios/Flutter/AppFrameworkInfo.plist            |  26 +
 ios/Flutter/Debug.xcconfig                    |   1 +
 ios/Flutter/Release.xcconfig                  |   1 +
 ios/Runner.xcodeproj/project.pbxproj          | 472 ++++++++++++++++++
 .../contents.xcworkspacedata                  |   7 +
 .../xcshareddata/IDEWorkspaceChecks.plist     |   8 +
 .../xcshareddata/WorkspaceSettings.xcsettings |   8 +
 .../xcshareddata/xcschemes/Runner.xcscheme    |  91 ++++
 .../contents.xcworkspacedata                  |   7 +
 .../xcshareddata/IDEWorkspaceChecks.plist     |   8 +
 .../xcshareddata/WorkspaceSettings.xcsettings |   8 +
 ios/Runner/AppDelegate.h                      |   6 +
 ios/Runner/AppDelegate.m                      |  13 +
 .../AppIcon.appiconset/Contents.json          | 122 +++++
 .../Icon-App-1024x1024@1x.png                 | Bin 0 -> 10932 bytes
 .../AppIcon.appiconset/Icon-App-20x20@1x.png  | Bin 0 -> 564 bytes
 .../AppIcon.appiconset/Icon-App-20x20@2x.png  | Bin 0 -> 1283 bytes
 .../AppIcon.appiconset/Icon-App-20x20@3x.png  | Bin 0 -> 1588 bytes
 .../AppIcon.appiconset/Icon-App-29x29@1x.png  | Bin 0 -> 1025 bytes
 .../AppIcon.appiconset/Icon-App-29x29@2x.png  | Bin 0 -> 1716 bytes
 .../AppIcon.appiconset/Icon-App-29x29@3x.png  | Bin 0 -> 1920 bytes
 .../AppIcon.appiconset/Icon-App-40x40@1x.png  | Bin 0 -> 1283 bytes
 .../AppIcon.appiconset/Icon-App-40x40@2x.png  | Bin 0 -> 1895 bytes
 .../AppIcon.appiconset/Icon-App-40x40@3x.png  | Bin 0 -> 2665 bytes
 .../AppIcon.appiconset/Icon-App-60x60@2x.png  | Bin 0 -> 2665 bytes
 .../AppIcon.appiconset/Icon-App-60x60@3x.png  | Bin 0 -> 3831 bytes
 .../AppIcon.appiconset/Icon-App-76x76@1x.png  | Bin 0 -> 1888 bytes
 .../AppIcon.appiconset/Icon-App-76x76@2x.png  | Bin 0 -> 3294 bytes
 .../Icon-App-83.5x83.5@2x.png                 | Bin 0 -> 3612 bytes
 .../LaunchImage.imageset/Contents.json        |  23 +
 .../LaunchImage.imageset/LaunchImage.png      | Bin 0 -> 68 bytes
 .../LaunchImage.imageset/LaunchImage@2x.png   | Bin 0 -> 68 bytes
 .../LaunchImage.imageset/LaunchImage@3x.png   | Bin 0 -> 68 bytes
 .../LaunchImage.imageset/README.md            |   5 +
 ios/Runner/Base.lproj/LaunchScreen.storyboard |  37 ++
 ios/Runner/Base.lproj/Main.storyboard         |  26 +
 ios/Runner/Info.plist                         |  45 ++
 ios/Runner/main.m                             |   9 +
 lib/main.dart                                 |  29 ++
 lib/provider/data.dart                        |   5 +
 lib/screens/home.dart                         |  57 +++
 pubspec.lock                                  | 161 ++++++
 pubspec.yaml                                  |  21 +
 test/widget_test.dart                         |  14 +
 71 files changed, 1804 insertions(+), 2 deletions(-)
 create mode 100644 .gitignore
 create mode 100644 .gitlab-ci.yml
 create mode 100644 .metadata
 create mode 100644 android/.gitignore
 create mode 100644 android/app/build.gradle
 create mode 100644 android/app/src/debug/AndroidManifest.xml
 create mode 100644 android/app/src/main/AndroidManifest.xml
 create mode 100644 android/app/src/main/java/org/benoitharrault/minehunter/MainActivity.java
 create mode 100644 android/app/src/main/res/drawable-v21/launch_background.xml
 create mode 100644 android/app/src/main/res/drawable/launch_background.xml
 create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png
 create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png
 create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
 create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
 create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
 create mode 100644 android/app/src/main/res/values-night/styles.xml
 create mode 100644 android/app/src/main/res/values/styles.xml
 create mode 100644 android/app/src/profile/AndroidManifest.xml
 create mode 100644 android/build.gradle
 create mode 100644 android/gradle.properties
 create mode 100644 android/gradle/wrapper/gradle-wrapper.properties
 create mode 100644 android/settings.gradle
 create mode 100644 assets/files/.gitkeep
 create mode 100755 icons/build_icons.sh
 create mode 100644 icons/icon.svg
 create mode 100644 ios/.gitignore
 create mode 100644 ios/Flutter/AppFrameworkInfo.plist
 create mode 100644 ios/Flutter/Debug.xcconfig
 create mode 100644 ios/Flutter/Release.xcconfig
 create mode 100644 ios/Runner.xcodeproj/project.pbxproj
 create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
 create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
 create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
 create mode 100644 ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
 create mode 100644 ios/Runner.xcworkspace/contents.xcworkspacedata
 create mode 100644 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
 create mode 100644 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
 create mode 100644 ios/Runner/AppDelegate.h
 create mode 100644 ios/Runner/AppDelegate.m
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json
 create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
 create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
 create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
 create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md
 create mode 100644 ios/Runner/Base.lproj/LaunchScreen.storyboard
 create mode 100644 ios/Runner/Base.lproj/Main.storyboard
 create mode 100644 ios/Runner/Info.plist
 create mode 100644 ios/Runner/main.m
 create mode 100644 lib/main.dart
 create mode 100644 lib/provider/data.dart
 create mode 100644 lib/screens/home.dart
 create mode 100644 pubspec.lock
 create mode 100644 pubspec.yaml
 create mode 100644 test/widget_test.dart

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0fa6b67
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,46 @@
+# Miscellaneous
+*.class
+*.log
+*.pyc
+*.swp
+.DS_Store
+.atom/
+.buildlog/
+.history
+.svn/
+
+# IntelliJ related
+*.iml
+*.ipr
+*.iws
+.idea/
+
+# The .vscode folder contains launch configuration and tasks you configure in
+# VS Code which you may wish to be included in version control, so this line
+# is commented out by default.
+#.vscode/
+
+# Flutter/Dart/Pub related
+**/doc/api/
+**/ios/Flutter/.last_build_id
+.dart_tool/
+.flutter-plugins
+.flutter-plugins-dependencies
+.packages
+.pub-cache/
+.pub/
+/build/
+
+# Web related
+lib/generated_plugin_registrant.dart
+
+# Symbolication related
+app.*.symbols
+
+# Obfuscation related
+app.*.map.json
+
+# Android Studio will place build artifacts here
+/android/app/debug
+/android/app/profile
+/android/app/release
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..b3d9a5d
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,122 @@
+image: cirrusci/flutter:latest
+
+stages:
+  - update
+  - build-debug
+  - build-release
+  - release
+  - deploy
+
+update:
+  stage: update
+  except:
+    - tags
+  script:
+    - flutter packages get
+    - flutter packages upgrade
+  interruptible: true
+
+android:build-debug:
+  stage: build-debug
+  except:
+    - tags
+  script:
+    # Flutter local configuration
+    - echo flutter.sdk=$FLUTTER_PATH > android/local.properties
+    - echo sdk.dir=$ANDROID_SDK_PATH >> android/local.properties
+    - echo flutter.buildMode=debug >> android/local.properties
+    # Android signing
+    - echo "$ANDROID_DEBUG_KEYSTORE_FILE" | base64 -d > android/app/my.keystore
+    - echo storeFile=my.keystore > android/key.properties
+    - echo storePassword=$ANDROID_DEBUG_KEYSTORE_PASSWORD >> android/key.properties
+    - echo keyAlias=$ANDROID_DEBUG_KEY_ALIAS >> android/key.properties
+    - echo keyPassword=$ANDROID_DEBUG_KEY_PASSWORD >> android/key.properties
+    # build flutter app
+    - flutter packages get
+    - flutter clean
+    - flutter build apk --debug
+    # prepare artifact
+    - find . -name "*.apk" # where is my apk?
+  artifacts:
+    paths:
+      - build/app/outputs/apk/debug
+    expire_in: 1 week
+  interruptible: true
+
+android:build-release:
+  stage: build-release
+  only:
+    - master
+  except:
+    - tags
+  dependencies:
+    - android:build-debug
+  script:
+    # Flutter local configuration
+    - echo flutter.sdk=$FLUTTER_PATH > android/local.properties
+    - echo sdk.dir=$ANDROID_SDK_PATH >> android/local.properties
+    - echo flutter.buildMode=release >> android/local.properties
+    # Android signing
+    - echo "$ANDROID_KEYSTORE_FILE" | base64 -d > android/app/my.keystore
+    - echo storeFile=my.keystore > android/key.properties
+    - echo storePassword=$ANDROID_KEYSTORE_PASSWORD >> android/key.properties
+    - echo keyAlias=$ANDROID_KEY_ALIAS >> android/key.properties
+    - echo keyPassword=$ANDROID_KEY_PASSWORD >> android/key.properties
+    # build flutter app
+    - VERSION_FILE="$(find . -name 'gradle.properties' | head -n1)"
+    - VERSION_NAME="$(grep '^app.versionName=' "${VERSION_FILE}" | cut -d'=' -f2)"
+    - VERSION_CODE="$(grep '^app.versionCode=' "${VERSION_FILE}" | cut -d'=' -f2)"
+    - TAG_NAME="Release_${VERSION_NAME}_${VERSION_CODE}"
+    - echo "${TAG_NAME}"
+    - >
+      if [ $(git tag -l "${TAG_NAME}") ]; then
+        echo "Tag ${TAG_NAME} already exists. Skipping build release."
+      else
+        flutter packages get
+        flutter clean
+        flutter build apk --release
+      fi
+    # prepare artifact
+    - find . -name "*.apk" # where is my apk?
+  artifacts:
+    paths:
+      - build/app/outputs/apk/release
+    expire_in: 1 week
+  interruptible: true
+
+application:release:
+  stage: release
+  image:
+    name: alpine/git
+    entrypoint: [""]
+  only:
+    - master
+  except:
+    - tags
+  dependencies:
+    - android:build-release
+  script:
+    - git config user.email "${GITLAB_USER_EMAIL}"
+    - git config user.name "${GITLAB_USER_NAME}"
+    - git remote set-url origin https://oauth2:${GITLAB_ACCESS_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}
+    - VERSION_FILE="$(find . -name 'gradle.properties' | head -n1)"
+    - VERSION_NAME="$(grep '^app.versionName=' "${VERSION_FILE}" | cut -d'=' -f2)"
+    - VERSION_CODE="$(grep '^app.versionCode=' "${VERSION_FILE}" | cut -d'=' -f2)"
+    - TAG_NAME="Release_${VERSION_NAME}_${VERSION_CODE}"
+    - echo "${TAG_NAME}"
+    - >
+      if [ $(git tag -l "${TAG_NAME}") ]; then
+        echo "Tag ${TAG_NAME} already exists. Skipping release and tag creation."
+      else
+        git tag -a "${TAG_NAME}" -m "Release ${VERSION_NAME} (${VERSION_CODE})"
+        git push origin "${TAG_NAME}"
+      fi
+
+android:deploy:
+  stage: deploy
+  only:
+    - tags
+  dependencies:
+    - application:release
+  script:
+    - curl "${REPOSITORY_UPDATE_WEBHOOK}?token=${REPOSITORY_TOKEN}"
diff --git a/.metadata b/.metadata
new file mode 100644
index 0000000..b2896b2
--- /dev/null
+++ b/.metadata
@@ -0,0 +1,10 @@
+# This file tracks properties of this Flutter project.
+# Used by Flutter tool to assess capabilities and perform upgrades etc.
+#
+# This file should be version controlled and should not be manually edited.
+
+version:
+  revision: 5bedb7b1d5698ce2c1c67aaf9afae7b3948b172a
+  channel: beta
+
+project_type: app
diff --git a/README.md b/README.md
index 224a00e..e32ed64 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1 @@
-# org.benoitharrault.minehunter
-
+# Minehunter game
diff --git a/android/.gitignore b/android/.gitignore
new file mode 100644
index 0000000..0a741cb
--- /dev/null
+++ b/android/.gitignore
@@ -0,0 +1,11 @@
+gradle-wrapper.jar
+/.gradle
+/captures/
+/gradlew
+/gradlew.bat
+/local.properties
+GeneratedPluginRegistrant.java
+
+# Remember to never publicly share your keystore.
+# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
+key.properties
diff --git a/android/app/build.gradle b/android/app/build.gradle
new file mode 100644
index 0000000..e1bf069
--- /dev/null
+++ b/android/app/build.gradle
@@ -0,0 +1,70 @@
+def localProperties = new Properties()
+def localPropertiesFile = rootProject.file('local.properties')
+if (localPropertiesFile.exists()) {
+    localPropertiesFile.withReader('UTF-8') { reader ->
+        localProperties.load(reader)
+    }
+}
+
+def gradleProperties = new Properties()
+def gradlePropertiesFile = rootProject.file('gradle.properties')
+if (gradlePropertiesFile.exists()) {
+    gradlePropertiesFile.withReader('UTF-8') { reader ->
+        gradleProperties.load(reader)
+    }
+}
+
+def flutterRoot = localProperties.getProperty('flutter.sdk')
+if (flutterRoot == null) {
+    throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
+}
+
+def appVersionCode = gradleProperties.getProperty('app.versionCode')
+if (appVersionCode == null) {
+    appVersionCode = '1'
+}
+
+def appVersionName = gradleProperties.getProperty('app.versionName')
+if (appVersionName == null) {
+    appVersionName = '1.0'
+}
+
+apply plugin: 'com.android.application'
+apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
+
+def keystoreProperties = new Properties()
+def keystorePropertiesFile = rootProject.file('key.properties')
+if (keystorePropertiesFile.exists()) {
+    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
+}
+
+android {
+    compileSdkVersion 30
+
+    defaultConfig {
+        applicationId "org.benoitharrault.minehunter"
+        minSdkVersion 16
+        targetSdkVersion 30
+        versionCode appVersionCode.toInteger()
+        versionName appVersionName
+        archivesBaseName = "$applicationId" + "_" + "$versionCode"
+    }
+
+    signingConfigs {
+        release {
+            keyAlias keystoreProperties['keyAlias']
+            keyPassword keystoreProperties['keyPassword']
+            storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
+            storePassword keystoreProperties['storePassword']
+        }
+    }
+    buildTypes {
+        release {
+            signingConfig signingConfigs.release
+        }
+    }
+}
+
+flutter {
+    source '../..'
+}
diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml
new file mode 100644
index 0000000..de31332
--- /dev/null
+++ b/android/app/src/debug/AndroidManifest.xml
@@ -0,0 +1,7 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="org.benoitharrault.minehunter">
+    <!-- Flutter needs it to communicate with the running application
+         to allow setting breakpoints, to provide hot reload, etc.
+    -->
+    <uses-permission android:name="android.permission.INTERNET"/>
+</manifest>
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..7805537
--- /dev/null
+++ b/android/app/src/main/AndroidManifest.xml
@@ -0,0 +1,41 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="org.benoitharrault.minehunter">
+   <application
+        android:label="minehunter"
+        android:icon="@mipmap/ic_launcher">
+        <activity
+            android:name=".MainActivity"
+            android:launchMode="singleTop"
+            android:theme="@style/LaunchTheme"
+            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
+            android:hardwareAccelerated="true"
+            android:windowSoftInputMode="adjustResize">
+            <!-- Specifies an Android theme to apply to this Activity as soon as
+                 the Android process has started. This theme is visible to the user
+                 while the Flutter UI initializes. After that, this theme continues
+                 to determine the Window background behind the Flutter UI. -->
+            <meta-data
+              android:name="io.flutter.embedding.android.NormalTheme"
+              android:resource="@style/NormalTheme"
+              />
+            <!-- Displays an Android View that continues showing the launch screen
+                 Drawable until Flutter paints its first frame, then this splash
+                 screen fades out. A splash screen is useful to avoid any visual
+                 gap between the end of Android's launch screen and the painting of
+                 Flutter's first frame. -->
+            <meta-data
+              android:name="io.flutter.embedding.android.SplashScreenDrawable"
+              android:resource="@drawable/launch_background"
+              />
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN"/>
+                <category android:name="android.intent.category.LAUNCHER"/>
+            </intent-filter>
+        </activity>
+        <!-- Don't delete the meta-data below.
+             This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
+        <meta-data
+            android:name="flutterEmbedding"
+            android:value="2" />
+    </application>
+</manifest>
diff --git a/android/app/src/main/java/org/benoitharrault/minehunter/MainActivity.java b/android/app/src/main/java/org/benoitharrault/minehunter/MainActivity.java
new file mode 100644
index 0000000..377fa92
--- /dev/null
+++ b/android/app/src/main/java/org/benoitharrault/minehunter/MainActivity.java
@@ -0,0 +1,6 @@
+package org.benoitharrault.minehunter;
+
+import io.flutter.embedding.android.FlutterActivity;
+
+public class MainActivity extends FlutterActivity {
+}
diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml
new file mode 100644
index 0000000..f74085f
--- /dev/null
+++ b/android/app/src/main/res/drawable-v21/launch_background.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Modify this file to customize your launch splash screen -->
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="?android:colorBackground" />
+
+    <!-- You can insert your own image assets here -->
+    <!-- <item>
+        <bitmap
+            android:gravity="center"
+            android:src="@mipmap/launch_image" />
+    </item> -->
+</layer-list>
diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml
new file mode 100644
index 0000000..304732f
--- /dev/null
+++ b/android/app/src/main/res/drawable/launch_background.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Modify this file to customize your launch splash screen -->
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@android:color/white" />
+
+    <!-- You can insert your own image assets here -->
+    <!-- <item>
+        <bitmap
+            android:gravity="center"
+            android:src="@mipmap/launch_image" />
+    </item> -->
+</layer-list>
diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..2190b0d63c46da1cfa094f94d66f704f857b1b02
GIT binary patch
literal 1807
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
ZrX?M^W?_qM85kHCJYD@<);T3K0RXVlRm}hZ

literal 0
HcmV?d00001

diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..f415ae518ea5e1a78a4b331c77645910a0ad747a
GIT binary patch
literal 1217
zcmeAS@N?(olHy`uVBq!ia0y~yU@!n-4rT@hhJ-tuTNxM_I14-?iy0UsmVq$i?8^I*
z3=9mCC9V-A!TD(=<%vb94CUqJdYO6I#mR{Use1WE>9gP2NHH)l{tNI4ab*C5{|pQb
z3=IDn82&dftO{lLAIh-bfnlaG!x>|SRoV<!wHdalFl_S#2_Ca#*bElmsVBbQL3E?F
z$PsIiZRSEJ%!PIv3!X6++;1Ro*oJ?HCEqbizCC8VJFR$*TJfAP=iYD1eaM(=uO;Vx
zbIyaNock>V4w~`rHReBR%)j4~@30x~J`>(g?aZIsnE$NQ{=ZWD*96A@bNPQyVEoq2
z_`RF)-%^GDOBMc2XZSyz;r|SV|1+7s_b`GOGZ_ERWd1*k?f-1{|Fb#%&*S^QK=}Ux
zk^c+D{x1~&zewW$BFX=YrT;IH{l7%+|8mv;E4BWw()qty|NmO!|7%VEuQUI@-s1my
z%m3@G{%^4PztQ&pM*IJp9RF{2`oG2P|5o?^+kO7;2>8D<@c+)B|9c|-?}_@qFYf=o
z`2Pn|{vS;Je>nU9k(~cW3;v(1`hTkC|LMB_XBz&WZTWw$_5ZoH|K~gYU+DgSvG@PQ
zzW<l{|6iW;|MKMjSEv8KI^+NKx&Lo2_<w83|JzId-(LRz?yCRy*8ab@?*IMu{~v7r
z|7hF)$2<Q&-u3^<-v7^!{C{!m|I3sAU!D5@>dgN)=l{RC@c-SF|L?B;e|PQwhnxRD
z-ueIW?*C8s|9^S>|LgPr-(LLx_VWMtSO34i`Tz6%|6iZ}|Ni#>&-ed-e*FLY>;K>1
z|Ns5@|L^br|Ns8~|Nq4-f}4SX!LB68FPMRmk%@_knVE%^m5q&^or9B$i<^g+myeI1
zUqDbuNLWlvTtZS>Mpi*lSy@F*JuoOZ_|fAhPoF-0`uFeOzXxKDL@+Qg{_=Ej4DmRg
zoUlMX;RyeQP~**o4_M#m_-MR}tY}ePvZRnn(^IgHFGbc(%#NjTsiN?q8sTcC22OVE
z5N_`Ex`t9YM}OWtU^T<SCAZ^Z!eXtnr+Ka&P<5WemdnZ*wt-E~@{!34t%D{fk}nI)
zf8Mst(LYjPcH516IRa1j6r{2iO5F<A`@|B|s2wgQv|Lem#U*RCjVVu0g*-CZaVBbK
ziK;}2i}2Ee^}oC<GD^07*Wx(3Ua{hzmx_U5>A6!kD@-fSMMlX?-OLaftRBb9t9`mL
zMa=1ESCIM~sY~MitD?6Vah~9E&Y1DK=l12Z38GgW!UQLEPb$pj$eP7k<eVFIwn&9H
zw4%B6lo!v1zVO2)KD>ARewcho$cosR;v|#DJ5_sQW7r)jCBxA0?f!lTRvz3ge3|=)
z(EQ&vKKv|?FF)9rk?MbsE9I-U(FgVS9U|_(dsIE7PIa8%|K=E5@HzZkiK<ic-rCcr
zME}<2{$w=O_$k%jwo-d}W9D^9?c&Z$2GyyyCL)JqJ1z+XJxK58oM0jl9dgK|KsZw3
zwT9E_FuuY^CM!-mbyd5W)oCZ0M4aYud~K;_7Mx@v@wv#rS=&;L+1R@2K+Jr}z<#4b
z&lMRN4;g1=75&jU@zq3n{)`?OIR$0Sh9G}qgN;Q6g^w9y=HzI+a*X0&_;QTxA_Kz$
WJ>mV&BcEr23KUOQKbLh*2~7Y5a7las

literal 0
HcmV?d00001

diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..834b9e159e8fe99f414b3521fe00cc3a2442d0c4
GIT binary patch
literal 2361
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

literal 0
HcmV?d00001

diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..4f3ecfdb31e77bbcddd5de725013e9d93ef249ca
GIT binary patch
literal 3800
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
II;Vst0Dg52x&QzG

literal 0
HcmV?d00001

diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..8a46c7dd21392d2da3157b2a8819b0cee05645bc
GIT binary patch
literal 5409
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
XIhwDAOq$8Sz`)??>gTe~DWM4f&no!8

literal 0
HcmV?d00001

diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml
new file mode 100644
index 0000000..449a9f9
--- /dev/null
+++ b/android/app/src/main/res/values-night/styles.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
+    <style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
+        <!-- Show a splash screen on the activity. Automatically removed when
+             Flutter draws its first frame -->
+        <item name="android:windowBackground">@drawable/launch_background</item>
+    </style>
+    <!-- Theme applied to the Android Window as soon as the process has started.
+         This theme determines the color of the Android Window while your
+         Flutter UI initializes, as well as behind your Flutter UI while its
+         running.
+         
+         This Theme is only used starting with V2 of Flutter's Android embedding. -->
+    <style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
+        <item name="android:windowBackground">?android:colorBackground</item>
+    </style>
+</resources>
diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml
new file mode 100644
index 0000000..d74aa35
--- /dev/null
+++ b/android/app/src/main/res/values/styles.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
+    <style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
+        <!-- Show a splash screen on the activity. Automatically removed when
+             Flutter draws its first frame -->
+        <item name="android:windowBackground">@drawable/launch_background</item>
+    </style>
+    <!-- Theme applied to the Android Window as soon as the process has started.
+         This theme determines the color of the Android Window while your
+         Flutter UI initializes, as well as behind your Flutter UI while its
+         running.
+         
+         This Theme is only used starting with V2 of Flutter's Android embedding. -->
+    <style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
+        <item name="android:windowBackground">?android:colorBackground</item>
+    </style>
+</resources>
diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml
new file mode 100644
index 0000000..de31332
--- /dev/null
+++ b/android/app/src/profile/AndroidManifest.xml
@@ -0,0 +1,7 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="org.benoitharrault.minehunter">
+    <!-- Flutter needs it to communicate with the running application
+         to allow setting breakpoints, to provide hot reload, etc.
+    -->
+    <uses-permission android:name="android.permission.INTERNET"/>
+</manifest>
diff --git a/android/build.gradle b/android/build.gradle
new file mode 100644
index 0000000..c9e3db0
--- /dev/null
+++ b/android/build.gradle
@@ -0,0 +1,29 @@
+buildscript {
+    repositories {
+        google()
+        jcenter()
+    }
+
+    dependencies {
+        classpath 'com.android.tools.build:gradle:4.1.0'
+    }
+}
+
+allprojects {
+    repositories {
+        google()
+        jcenter()
+    }
+}
+
+rootProject.buildDir = '../build'
+subprojects {
+    project.buildDir = "${rootProject.buildDir}/${project.name}"
+}
+subprojects {
+    project.evaluationDependsOn(':app')
+}
+
+task clean(type: Delete) {
+    delete rootProject.buildDir
+}
diff --git a/android/gradle.properties b/android/gradle.properties
new file mode 100644
index 0000000..bc2d95e
--- /dev/null
+++ b/android/gradle.properties
@@ -0,0 +1,5 @@
+org.gradle.jvmargs=-Xmx1536M
+android.useAndroidX=true
+android.enableJetifier=true
+app.versionName=0.0.1
+app.versionCode=1
diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..bc6a58a
--- /dev/null
+++ b/android/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Fri Jun 23 08:50:38 CEST 2017
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
diff --git a/android/settings.gradle b/android/settings.gradle
new file mode 100644
index 0000000..44e62bc
--- /dev/null
+++ b/android/settings.gradle
@@ -0,0 +1,11 @@
+include ':app'
+
+def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
+def properties = new Properties()
+
+assert localPropertiesFile.exists()
+localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
+
+def flutterSdkPath = properties.getProperty("flutter.sdk")
+assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
+apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
diff --git a/assets/files/.gitkeep b/assets/files/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/icons/build_icons.sh b/icons/build_icons.sh
new file mode 100755
index 0000000..fefc393
--- /dev/null
+++ b/icons/build_icons.sh
@@ -0,0 +1,48 @@
+#! /bin/bash
+
+# Check dependencies
+command -v inkscape >/dev/null 2>&1 || { echo >&2 "I require inkscape but it's not installed. Aborting."; exit 1; }
+command -v scour >/dev/null 2>&1 || { echo >&2 "I require scour but it's not installed. Aborting."; exit 1; }
+command -v optipng >/dev/null 2>&1 || { echo >&2 "I require optipng but it's not installed. Aborting."; exit 1; }
+command -v convert >/dev/null 2>&1 || { echo >&2 "I require convert (imagemagick) but it's not installed. Aborting."; exit 1; }
+
+CURRENT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
+BASE_DIR="$(dirname "${CURRENT_DIR}")"
+
+SOURCE="${CURRENT_DIR}/icon.svg"
+OPTIPNG_OPTIONS="-preserve -quiet -o7"
+
+# optimize svg
+cp ${SOURCE} ${SOURCE}.tmp
+scour \
+    --remove-descriptive-elements \
+    --enable-id-stripping \
+    --enable-viewboxing \
+    --enable-comment-stripping \
+    --nindent=4 \
+    -i ${SOURCE}.tmp \
+    -o ${SOURCE}
+rm ${SOURCE}.tmp
+
+# build icons
+function build_icon() {
+  ICON_SIZE="$1"
+  TARGET="$2"
+
+  TARGET_PNG="${TARGET}.png"
+
+  inkscape \
+      --export-width=${ICON_SIZE} \
+      --export-height=${ICON_SIZE} \
+      --export-filename=${TARGET_PNG} \
+      ${SOURCE}
+
+  optipng ${OPTIPNG_OPTIONS} ${TARGET_PNG}
+}
+
+
+build_icon  72 ${BASE_DIR}/android/app/src/main/res/mipmap-hdpi/ic_launcher
+build_icon  48 ${BASE_DIR}/android/app/src/main/res/mipmap-mdpi/ic_launcher
+build_icon  96 ${BASE_DIR}/android/app/src/main/res/mipmap-xhdpi/ic_launcher
+build_icon 144 ${BASE_DIR}/android/app/src/main/res/mipmap-xxhdpi/ic_launcher
+build_icon 192 ${BASE_DIR}/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher
diff --git a/icons/icon.svg b/icons/icon.svg
new file mode 100644
index 0000000..979b845
--- /dev/null
+++ b/icons/icon.svg
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg version="1.1" viewBox="0 0 28.747 28.747" xmlns="http://www.w3.org/2000/svg">
+    <defs>
+        <filter id="filter6206-7" x="-.072" y="-.072" width="1.144" height="1.144" color-interpolation-filters="sRGB">
+            <feGaussianBlur stdDeviation="0.658125"/>
+        </filter>
+    </defs>
+    <g transform="translate(0 -1093.8)">
+        <path transform="matrix(1.0781 0 0 1.0641 -.093733 2.7509)" d="m4.4177 1028.2v1.6051h-1.6052v18.192h1.6052v2.1402h18.192v-2.1402h2.1402v-18.192h-2.1402v-1.6051z" fill="#bf360c" filter="url(#filter6206-7)" opacity=".2"/>
+        <rect x="2.9987" y="1096.8" width="22.749" height="22.749" rx="1.1973" ry="1.1974" fill="#ff9800"/>
+        <g transform="translate(-22.32 1056.5)">
+            <path d="m0 0h51.2v51.2h-51.2z" fill="none" stroke-width="1.0667"/>
+            <g transform="matrix(.33601 0 0 .33601 1.5296 73.043)">
+                <path d="m0 0h51.2v51.2h-51.2z" fill="none" stroke-width="1.0667"/>
+            </g>
+            <g transform="matrix(.37187 0 0 .37187 38.802 63.239)">
+                <path d="m0 0h51.2v51.2h-51.2z" fill="none" stroke-width="1.0667"/>
+                <g transform="matrix(2.6891 0 0 2.6891 -82.906 -48.45)">
+                    <path d="m0 0h51.2v51.2h-51.2z" fill="none" stroke-width="1.0667"/>
+                </g>
+            </g>
+        </g>
+        <path d="m4.1958 1096.8c-0.66332 0-1.1979 0.5346-1.1979 1.1979v0.3334c0-0.6634 0.53459-1.1979 1.1979-1.1979h20.354c0.66332 0 1.1979 0.5345 1.1979 1.1979v-0.3334c0-0.6633-0.5346-1.1979-1.1979-1.1979z" fill="#fff" opacity=".2"/>
+        <rect x="128" y="546.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="128" y="631.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="128" y="674.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="128" y="589.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="128" y="717.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="213.33" y="546.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="213.33" y="631.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="213.33" y="674.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="213.33" y="589.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="213.33" y="717.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="298.67" y="546.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="298.67" y="631.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="298.67" y="674.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="298.67" y="589.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="298.67" y="717.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="170.67" y="546.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="170.67" y="631.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="170.67" y="674.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="170.67" y="589.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="170.67" y="717.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="256" y="546.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="256" y="631.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="256" y="674.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="256" y="589.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="256" y="717.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="128" y="759.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="213.33" y="759.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="298.67" y="759.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="170.67" y="759.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="256" y="759.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="341.33" y="589.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="341.33" y="631.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="341.33" y="717.19" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="341.33" y="546.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="341.33" y="674.52" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="341.33" y="759.85" width="42.667" height="42.667" fill="none" stroke-width="1.0667"/>
+        <rect x="160" y="578.52" width="192" height="192" fill="none" stroke-width="1.0667"/>
+        <g transform="matrix(.37344 0 0 .37344 4.7333 1097.4)">
+            <path d="m0 0h51.2v51.2h-51.2z" fill="none" stroke-width="1.0667"/>
+        </g>
+        <g transform="matrix(.36471 0 0 .36471 5.1356 1097.4)">
+            <path d="m0 0h51.2v51.2h-51.2z" fill="none" stroke-width="1.0667"/>
+        </g>
+        <g transform="matrix(.41585 0 0 .41585 84.325 1055.9)">
+            <g transform="matrix(.062269 0 0 .062269 -28.238 185.29)">
+                <g transform="matrix(38.618 0 0 38.618 14724 -13542)">
+                    <g transform="matrix(.71436 0 0 .71436 -400.52 188.34)">
+                        <path d="m1293.2-120.67c-181.75 0.2763-511.18 0.13525-699.05 0.13998-2.3216 10.413-3.593 21.251-3.593 32.384v114c207.65 0.73695 494.72 0.38136 706.23 0.3733v-114.37c0-11.18-1.2522-22.07-3.593-32.523zm-458.69 295.56c-78.385-4e-3 -158.85 0.17892-243.95 0.55995v138.63c286.34-0.39317 421.73-0.13827 706.23-0.32664v-137.75c-163.2-0.53005-311.22-1.1113-462.28-1.1199z" opacity="0" stroke-width="1.4932"/>
+                    </g>
+                </g>
+            </g>
+        </g>
+        <path d="m24.549 1119.5c0.66325 0 1.1979-0.5346 1.1979-1.1979v-0.3333c0 0.6632-0.53461 1.1978-1.1979 1.1978h-20.354c-0.66325 0-1.1979-0.5346-1.1979-1.1978v0.3333c0 0.6633 0.53461 1.1979 1.1979 1.1979z" fill="#bf360c" opacity=".2"/>
+    </g>
+    <g transform="matrix(.17786 0 0 .17786 5.4805 5.4805)" fill="#fff">
+        <path d="m92.148 55.869c-0.626-0.939-1.482-1.519-2.568-1.739l-6.792-1.242c0.368-5.669-0.727-11.035-3.286-16.096l5.853-4.224c0.939-0.663 1.491-1.574 1.657-2.733 0.202-1.086-0.037-2.071-0.718-2.954l-0.469-0.718c-0.626-0.883-1.537-1.427-2.733-1.629-1.031-0.166-2.016 0.092-2.954 0.773l-5.632 4.059c-3.81-4.215-8.347-7.206-13.611-8.973l1.27-7.731c0.202-1.104-0.037-2.126-0.718-3.065-0.626-0.883-1.482-1.427-2.568-1.629l-0.856-0.166c-1.104-0.147-2.126 0.092-3.065 0.718-0.884 0.681-1.427 1.565-1.629 2.65l-1.16 7.427c-2.503-0.221-4.951-0.175-7.344 0.138-1.362 0.055-2.641 0.294-3.838 0.718-0.626 0.147-1.224 0.331-1.795 0.552l-3.451-7.51c-0.46-0.994-1.215-1.693-2.264-2.098-1.031-0.423-2.043-0.405-3.037 0.055l-0.773 0.414c-0.994 0.405-1.73 1.16-2.209 2.264-0.368 1.031-0.313 2.043 0.166 3.037l3.506 7.648c-0.202 0.11-0.405 0.249-0.607 0.414-5.264 3.681-9.019 8.31-11.265 13.888l-6.958-1.546c-1.086-0.276-2.098-0.074-3.037 0.607-0.994 0.534-1.592 1.344-1.795 2.43l-0.246 0.772c-0.203 1.104-0.018 2.172 0.552 3.203 0.626 0.883 1.491 1.463 2.595 1.739l6.626 1.546c-0.736 5.835 0.101 11.329 2.512 16.483l-5.411 3.672c-0.939 0.626-1.537 1.491-1.795 2.595-0.147 1.086 0.092 2.098 0.718 3.037l0.469 0.635c0.626 0.939 1.454 1.537 2.485 1.795 1.16 0.147 2.209-0.092 3.147-0.718l5.135-3.424c3.7 4.583 8.255 7.887 13.667 9.912l-1.242 6.323c-0.202 1.104 9e-3 2.154 0.635 3.147 0.626 0.883 1.482 1.427 2.568 1.629l0.801 0.166c1.086 0.258 2.098 0.101 3.037-0.469 0.939-0.681 1.509-1.574 1.712-2.678l1.242-6.074c6 0.626 11.651-0.285 16.952-2.733l4.003 6.074c0.626 0.939 1.509 1.518 2.651 1.739 1.049 0.258 2.043 0.074 2.982-0.552l0.69-0.387c0.939-0.626 1.537-1.518 1.795-2.678 0.203-1.086-9e-3 -2.098-0.635-3.037l-3.81-5.936c4.583-3.7 7.841-8.255 9.774-13.667l6.875 1.242c1.086 0.202 2.098-9e-3 3.037-0.635 0.883-0.607 1.427-1.463 1.629-2.568l0.166-0.773c0.202-1.103-0.01-2.143-0.636-3.119zm-50.085-15.013c-0.824 1.929-2.217 3.297-4.178 4.102-1.962 0.806-3.92 0.815-5.876 0.028-1.936-0.778-3.299-2.13-4.09-4.056s-0.774-3.853 0.05-5.782c0.844-1.92 2.247-3.284 4.209-4.089 1.962-0.806 3.91-0.819 5.846-0.041 1.956 0.787 3.329 2.144 4.12 4.069 0.79 1.925 0.763 3.848-0.081 5.769z" fill="#fff"/>
+    </g>
+</svg>
diff --git a/ios/.gitignore b/ios/.gitignore
new file mode 100644
index 0000000..151026b
--- /dev/null
+++ b/ios/.gitignore
@@ -0,0 +1,33 @@
+*.mode1v3
+*.mode2v3
+*.moved-aside
+*.pbxuser
+*.perspectivev3
+**/*sync/
+.sconsign.dblite
+.tags*
+**/.vagrant/
+**/DerivedData/
+Icon?
+**/Pods/
+**/.symlinks/
+profile
+xcuserdata
+**/.generated/
+Flutter/App.framework
+Flutter/Flutter.framework
+Flutter/Flutter.podspec
+Flutter/Generated.xcconfig
+Flutter/ephemeral/
+Flutter/app.flx
+Flutter/app.zip
+Flutter/flutter_assets/
+Flutter/flutter_export_environment.sh
+ServiceDefinitions.json
+Runner/GeneratedPluginRegistrant.*
+
+# Exceptions to above rules.
+!default.mode1v3
+!default.mode2v3
+!default.pbxuser
+!default.perspectivev3
diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist
new file mode 100644
index 0000000..9367d48
--- /dev/null
+++ b/ios/Flutter/AppFrameworkInfo.plist
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+  <key>CFBundleDevelopmentRegion</key>
+  <string>en</string>
+  <key>CFBundleExecutable</key>
+  <string>App</string>
+  <key>CFBundleIdentifier</key>
+  <string>io.flutter.flutter.app</string>
+  <key>CFBundleInfoDictionaryVersion</key>
+  <string>6.0</string>
+  <key>CFBundleName</key>
+  <string>App</string>
+  <key>CFBundlePackageType</key>
+  <string>FMWK</string>
+  <key>CFBundleShortVersionString</key>
+  <string>1.0</string>
+  <key>CFBundleSignature</key>
+  <string>????</string>
+  <key>CFBundleVersion</key>
+  <string>1.0</string>
+  <key>MinimumOSVersion</key>
+  <string>8.0</string>
+</dict>
+</plist>
diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig
new file mode 100644
index 0000000..592ceee
--- /dev/null
+++ b/ios/Flutter/Debug.xcconfig
@@ -0,0 +1 @@
+#include "Generated.xcconfig"
diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig
new file mode 100644
index 0000000..592ceee
--- /dev/null
+++ b/ios/Flutter/Release.xcconfig
@@ -0,0 +1 @@
+#include "Generated.xcconfig"
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
new file mode 100644
index 0000000..bfbdf30
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -0,0 +1,472 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 46;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
+		3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
+		978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */; };
+		97C146F31CF9000F007C117D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 97C146F21CF9000F007C117D /* main.m */; };
+		97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
+		97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
+		97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXCopyFilesBuildPhase section */
+		9705A1C41CF9048500538489 /* Embed Frameworks */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = "";
+			dstSubfolderSpec = 10;
+			files = (
+			);
+			name = "Embed Frameworks";
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXCopyFilesBuildPhase section */
+
+/* Begin PBXFileReference section */
+		1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
+		1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
+		3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
+		7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
+		7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
+		7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
+		9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
+		9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
+		97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
+		97C146F21CF9000F007C117D /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
+		97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
+		97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
+		97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
+		97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		97C146EB1CF9000F007C117D /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		9740EEB11CF90186004384FC /* Flutter */ = {
+			isa = PBXGroup;
+			children = (
+				3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */,
+				9740EEB21CF90195004384FC /* Debug.xcconfig */,
+				7AFA3C8E1D35360C0083082E /* Release.xcconfig */,
+				9740EEB31CF90195004384FC /* Generated.xcconfig */,
+			);
+			name = Flutter;
+			sourceTree = "<group>";
+		};
+		97C146E51CF9000F007C117D = {
+			isa = PBXGroup;
+			children = (
+				9740EEB11CF90186004384FC /* Flutter */,
+				97C146F01CF9000F007C117D /* Runner */,
+				97C146EF1CF9000F007C117D /* Products */,
+				CF3B75C9A7D2FA2A4C99F110 /* Frameworks */,
+			);
+			sourceTree = "<group>";
+		};
+		97C146EF1CF9000F007C117D /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				97C146EE1CF9000F007C117D /* Runner.app */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		97C146F01CF9000F007C117D /* Runner */ = {
+			isa = PBXGroup;
+			children = (
+				7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */,
+				7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */,
+				97C146FA1CF9000F007C117D /* Main.storyboard */,
+				97C146FD1CF9000F007C117D /* Assets.xcassets */,
+				97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */,
+				97C147021CF9000F007C117D /* Info.plist */,
+				97C146F11CF9000F007C117D /* Supporting Files */,
+				1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
+				1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
+			);
+			path = Runner;
+			sourceTree = "<group>";
+		};
+		97C146F11CF9000F007C117D /* Supporting Files */ = {
+			isa = PBXGroup;
+			children = (
+				97C146F21CF9000F007C117D /* main.m */,
+			);
+			name = "Supporting Files";
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		97C146ED1CF9000F007C117D /* Runner */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
+			buildPhases = (
+				9740EEB61CF901F6004384FC /* Run Script */,
+				97C146EA1CF9000F007C117D /* Sources */,
+				97C146EB1CF9000F007C117D /* Frameworks */,
+				97C146EC1CF9000F007C117D /* Resources */,
+				9705A1C41CF9048500538489 /* Embed Frameworks */,
+				3B06AD1E1E4923F5004D2608 /* Thin Binary */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = Runner;
+			productName = Runner;
+			productReference = 97C146EE1CF9000F007C117D /* Runner.app */;
+			productType = "com.apple.product-type.application";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		97C146E61CF9000F007C117D /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1020;
+				ORGANIZATIONNAME = "";
+				TargetAttributes = {
+					97C146ED1CF9000F007C117D = {
+						CreatedOnToolsVersion = 7.3.1;
+					};
+				};
+			};
+			buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+				Base,
+			);
+			mainGroup = 97C146E51CF9000F007C117D;
+			productRefGroup = 97C146EF1CF9000F007C117D /* Products */;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				97C146ED1CF9000F007C117D /* Runner */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+		97C146EC1CF9000F007C117D /* Resources */ = {
+			isa = PBXResourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */,
+				3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,
+				97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
+				97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXShellScriptBuildPhase section */
+		3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Thin Binary";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
+		};
+		9740EEB61CF901F6004384FC /* Run Script */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+			);
+			inputPaths = (
+			);
+			name = "Run Script";
+			outputPaths = (
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
+		};
+/* End PBXShellScriptBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+		97C146EA1CF9000F007C117D /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */,
+				97C146F31CF9000F007C117D /* main.m in Sources */,
+				1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+		97C146FA1CF9000F007C117D /* Main.storyboard */ = {
+			isa = PBXVariantGroup;
+			children = (
+				97C146FB1CF9000F007C117D /* Base */,
+			);
+			name = Main.storyboard;
+			sourceTree = "<group>";
+		};
+		97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = {
+			isa = PBXVariantGroup;
+			children = (
+				97C147001CF9000F007C117D /* Base */,
+			);
+			name = LaunchScreen.storyboard;
+			sourceTree = "<group>";
+		};
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+		249021D3217E4FDB00AE95B9 /* Profile */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				SDKROOT = iphoneos;
+				SUPPORTED_PLATFORMS = iphoneos;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Profile;
+		};
+		249021D4217E4FDB00AE95B9 /* Profile */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;
+			buildSettings = {
+				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+				CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
+				ENABLE_BITCODE = NO;
+				INFOPLIST_FILE = Runner/Info.plist;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				PRODUCT_BUNDLE_IDENTIFIER = org.benoitharrault.minehunter;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Profile;
+		};
+		97C147031CF9000F007C117D /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"DEBUG=1",
+					"$(inherited)",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				SDKROOT = iphoneos;
+				TARGETED_DEVICE_FAMILY = "1,2";
+			};
+			name = Debug;
+		};
+		97C147041CF9000F007C117D /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu99;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+				MTL_ENABLE_DEBUG_INFO = NO;
+				SDKROOT = iphoneos;
+				SUPPORTED_PLATFORMS = iphoneos;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+		97C147061CF9000F007C117D /* Debug */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */;
+			buildSettings = {
+				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+				CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
+				ENABLE_BITCODE = NO;
+				INFOPLIST_FILE = Runner/Info.plist;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				PRODUCT_BUNDLE_IDENTIFIER = org.benoitharrault.minehunter;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		97C147071CF9000F007C117D /* Release */ = {
+			isa = XCBuildConfiguration;
+			baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;
+			buildSettings = {
+				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
+				CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
+				ENABLE_BITCODE = NO;
+				INFOPLIST_FILE = Runner/Info.plist;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				PRODUCT_BUNDLE_IDENTIFIER = org.benoitharrault.minehunter;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				97C147031CF9000F007C117D /* Debug */,
+				97C147041CF9000F007C117D /* Release */,
+				249021D3217E4FDB00AE95B9 /* Profile */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				97C147061CF9000F007C117D /* Debug */,
+				97C147071CF9000F007C117D /* Release */,
+				249021D4217E4FDB00AE95B9 /* Profile */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = 97C146E61CF9000F007C117D /* Project object */;
+}
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..919434a
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>IDEDidComputeMac32BitWarning</key>
+	<true/>
+</dict>
+</plist>
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..f9b0d7c
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>PreviewsEnabled</key>
+	<false/>
+</dict>
+</plist>
diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
new file mode 100644
index 0000000..a28140c
--- /dev/null
+++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1020"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "97C146ED1CF9000F007C117D"
+               BuildableName = "Runner.app"
+               BlueprintName = "Runner"
+               ReferencedContainer = "container:Runner.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "97C146ED1CF9000F007C117D"
+            BuildableName = "Runner.app"
+            BlueprintName = "Runner"
+            ReferencedContainer = "container:Runner.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "97C146ED1CF9000F007C117D"
+            BuildableName = "Runner.app"
+            BlueprintName = "Runner"
+            ReferencedContainer = "container:Runner.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Profile"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "97C146ED1CF9000F007C117D"
+            BuildableName = "Runner.app"
+            BlueprintName = "Runner"
+            ReferencedContainer = "container:Runner.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..1d526a1
--- /dev/null
+++ b/ios/Runner.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "group:Runner.xcodeproj">
+   </FileRef>
+</Workspace>
diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>IDEDidComputeMac32BitWarning</key>
+	<true/>
+</dict>
+</plist>
diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..f9b0d7c
--- /dev/null
+++ b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>PreviewsEnabled</key>
+	<false/>
+</dict>
+</plist>
diff --git a/ios/Runner/AppDelegate.h b/ios/Runner/AppDelegate.h
new file mode 100644
index 0000000..36e21bb
--- /dev/null
+++ b/ios/Runner/AppDelegate.h
@@ -0,0 +1,6 @@
+#import <Flutter/Flutter.h>
+#import <UIKit/UIKit.h>
+
+@interface AppDelegate : FlutterAppDelegate
+
+@end
diff --git a/ios/Runner/AppDelegate.m b/ios/Runner/AppDelegate.m
new file mode 100644
index 0000000..70e8393
--- /dev/null
+++ b/ios/Runner/AppDelegate.m
@@ -0,0 +1,13 @@
+#import "AppDelegate.h"
+#import "GeneratedPluginRegistrant.h"
+
+@implementation AppDelegate
+
+- (BOOL)application:(UIApplication *)application
+    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
+  [GeneratedPluginRegistrant registerWithRegistry:self];
+  // Override point for customization after application launch.
+  return [super application:application didFinishLaunchingWithOptions:launchOptions];
+}
+
+@end
diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json
new file mode 100644
index 0000000..d36b1fa
--- /dev/null
+++ b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json
@@ -0,0 +1,122 @@
+{
+  "images" : [
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-20x20@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-20x20@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-29x29@1x.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-29x29@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-29x29@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-40x40@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-40x40@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-60x60@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "60x60",
+      "idiom" : "iphone",
+      "filename" : "Icon-App-60x60@3x.png",
+      "scale" : "3x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-20x20@1x.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "20x20",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-20x20@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-29x29@1x.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "29x29",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-29x29@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-40x40@1x.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "40x40",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-40x40@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "76x76",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-76x76@1x.png",
+      "scale" : "1x"
+    },
+    {
+      "size" : "76x76",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-76x76@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "83.5x83.5",
+      "idiom" : "ipad",
+      "filename" : "Icon-App-83.5x83.5@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "size" : "1024x1024",
+      "idiom" : "ios-marketing",
+      "filename" : "Icon-App-1024x1024@1x.png",
+      "scale" : "1x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
new file mode 100644
index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332
GIT binary patch
literal 10932
zcmeAS@N?(olHy`uVBq!ia0y~yU||4Z4kiW$h7a|7u7G&yj=qiz3>*8o|0J?9Ffb@2
zdj$D1FjT2AFf_C<F#KX*U}$*3z))(y!0;-8fx&791A}<MoLzx73=9lxN#5=*4F5rJ
z!QSPQ85lHAd%8G=RNQ)dH##TfyW{bX|NqaKx$%1T`@Fo}Tey{M6tuKdRF>EYZQ<YZ
z;f!?94flJeT}8E6TbMegZ7Y#hFo}GAOGP>`<X6Ljw{6x7r(C#Ww*9P_^-`6PC_%Hh
z>Nj$7&&r-9tv@bzJN?=JpBk$!-MM9JoV9=dW8?pwu7NBJ3<|t6y+Q6`U|>jKAb}wP
z@+Bh!0|T)Pl1v9FZXm^Uuwph+JwYdHhz%mJCqRlp?qVRtH*lRKG3a0ov7XqFZ91Ky
zp=-yFYtOcR=f2*kwYysJ-=qE$>O2e#H@0)<=fu^epDtZ+>1(~szd!s}W7(I@b#Gt@
z_`hNGum4BdrH|jWKFYwr@U{OJJ2L~r75i86JPZs0|5wx-fT#uk4l*z}{A~tHe&q*C
zUa?1)JdVo%hrf%7G5};X+;p%dP!~WAfH@DY2HgcH20$fO)E@x39qa;_0Z{*8dI6gO
zP|q*^$H)u`ARb5nfkOsr2~-V%00Nud|BD^f0I2gAnF)t5*Z^4YzmkW#0NH@m^;hf@
z7#LR62mEhfWLWUe@ozIDL&Gojul#Hb46o#`*h@ep6BrPZ?thuVl3)43l28LcNr8uf
z0Tk8-AP<AXG2lO5pMuqZA`2;~zOMfl2y+WF8^kRV5Vt@bn!vDw1;cG%Jq^E5+y-(#
zR1eg1*bM|r2L1=9AW&3e38!XoEMR&L77NHee-#f3AT+nEzzAqOZgGSeuo{#YL5Z3H
z6x%3Cia57`Ll|TLII>>Jf8_@U$Q662pTQK=I(DcUXoSL31d2n^4PXF8k^5g}2}n#O
zpu`j&)8Q^a7{CB^9w^!x7{O_hfeoDOP+WlOyukmM27tmE%>aVV1A77H0;mBC{((&g
z<q9<ap_vW}16b%07eHtRU~wLn0BZOZ{(nV112Y3CTQTxL^1lHj&mDl|IV_U>zu3W&
zujCJa%4VnmxWgLNEyxZH{LcWAbpOi?j%Kh=U&a4j{Euk2@Pi!z%41-MuBc}K`C{=u
zMgt-}12-TZlH?F>0Xy`HJp&sg;YdId4#>Ui5QoZxLljif!BQ1S(*5shNQff41zheQ
zfCMZ9GXtpHXW)T^I&O!qsE69~l^@|2a1w&LB>|E}8W_Qa7aoUxT@MLSaJazS0u3}Q
zZo%$Qc)+3=04fa7JcHc;s82zXh$MtP+CXafU&&(+DrCu5@?fh;3u|Npz&gQR06A~*
zKSq#b|1Wm1)x@{}YQO?WlEX9r6wNE@84OTj8)OMy{~@^m$pBCuV_<{CwggJD#GMoZ
z|1*Fj-TyL!)5%wUkOAO4b^ww^7?{CzECUa=WSOw-N4@S9`xXCJ?f7%<+SBs=@2vt-
zxhsE61-0NHE>jEmFMjVviR_9^kGFp4<TsB2x9mVA%2oR}+y1?`lZ)kos05`r?5r#M
ze}VE%!2bkrE?ZqsJPVQ+K+O&iEAT(4sKw4&QUA67S2(x<0cuK;!veLoK+Ow~HIVdz
z&I<Uyj`>wQq^0_mAIfToEc~bow_HKezS!z|C@6b_S_oG}E9zH4JiPIMbudKhQr3Hu
zLDiN7!wcOHc_9!-mo|Q12x&>(;@-o2)gIIU3rMJVzYyHOY2Z7&n-A1zVrIA^aW5Yl
z4kthO1%q`nq_%yZ0nz=!c+YN7wl`o1$Xv&AFC1b~hUtgCAh1%0jg8+YL6q*|eXsOh
z31lh{!xia!_8?Oe7#2MIaLy4_Ofxg6wtwdVB}+Dj7nXaXA*MQ9eOS8)((=2-_g(<h
zu;5_`sHn&Xm6Zt$4d)K;c7k~GirhVZsO@%pg!c%8QiuUVKwSktsGMtHZ1{J0bw8vH
zrX{d`H@Lbwz~I3BNE8x#46Ys5qaa3=D8{8iZECNmy$bFeI4D1w8VdFj!_toHArOUM
z7KLA4y%HQ`4681_?tmDd;l5r0<PQl34Uau#kV=S|LAEp87o>}a;fhL}KE(J7Q!181
z{Tcbl6cS<#wVmPaAcf2fA!>2rP=&MN1jC&m!6dT$Iuj%mFU*Z&g?Q7UcGo|cMJ6k>
z*Z%`In=}Hi$AC=YVfdo4ZW|~TBp6l%#iT>cT(;v7B)}E~6y`#GxqR0upA*yX-TO6n
z`s{Vgpj6?ocGo=5EB}x0+xqcaRAKGn0#k6~Yu44NbN>Fy|GSU30o42qShp@w>uWyq
z0#MK5%j(tB!~Wi805|YNU+-EP`rnKJY}V;rNtsvoL$z#K7a9fAQnGgS6u6es*T0s)
zwLIQsgwV2UohMw&mvyTr!nIs|ZH3VCdlwTz%YnMLaL$E;bywk>fWvir;hYOc>XyPe
z0mtfk;hYP{>q_CAfRnH6*Z$hh2o8d%$iK_s&NN*8f6J@;Y!0B-@r$&t^WiT0y5`^I
zRrS&gpa$%Mg;(q0?w_*dm;dU2xeTB-qr)ZJwf}_IK$T6%2wnX@<@J5Gfd8OSQ`osJ
z?0@I={k#i6Rj<d24OjR7+Rg}WF{~`v_AC6qS;H@O0|teux5ECv0%>AkV_0(O&a3#p
zw;4cfnud^5(SKLhOFMv?B@?{rSJ!{dX9hR5f>suMUH>na0n|8f(2{mQs5%9*8)nuf
z#w!RLa~OuM7IsCk*8hU-Sv$)X@2JTAJiUI+x_?*er_Qw%^EWM71xm*Z-~`#o^_fFp
z!M~fz=b2VQdO48v%Wwsnc0tNOg)XS`2MwhLSez_?1}MWTc}S2q{5sACPB07pZDa(+
zHp7bg9B_JoDgiao;YxBFO3cAo3StMia|MY<h5%?xGkoobqy>k+$&iQ)_<sW&)eKkc
zL5Ts>;{z)J^~^v@z^&^g`(U;Q-2`VxhAZ|fVGfxe0@LUZN(kUyjrvrOH6Sx4gVF=I
z$K;vH49?a8|CekU;>Lk`ClJqq8ru-hf?B3v&w|_GV9zozGtB7uKI>@hdXrf8Rc~Hh
zU2XsI9QP~v1*@M4F;s60=|3%>dFS_?W7TI5U0u+0?f>hwQ`6=CzPR;kZg0i=^Z%xB
zGYR}*VYsoJf9{EC_Lm}7?cVF<`g;G)ZE~A`{q(QP{JDO9xi13`!vVI0Z?Em2e4TLh
zT>UTY)A6+jr!pEaFi1B<uKDj>`&E8Z)QL}@=l@;(bp75Zzd-#;-UDy0*Pr+#u=(@+
z-?N{t-~UL9k&U5&_dw3odb>scoTs(Un7jYO)u*S!W3&%2Fl=C)vGCXVw%7LjhTMj2
zAgQlUPp{vV)WFD)z-(~)>-^Rktpd(H&+Y3gf8M+vV-C^s@K^uZU+;4o(sLOg0^5H5
zKWFw;zWw$7dghjbe|6Ff1`G^249iykn}74!y?V2l{|jUOudTPN|9@Z4{`W3zP6-AE
zGlt7C{|&SMvm_k<rT<sv02>1j$X~0j|5x5!{ceBE|HK9VqH`b?tf>2&-xK-2Fy-%U
z2C&ltp8ndu>(iOTbF2Sv?Yy#|7c|6d#xQm5|95-;dtQU_K?O8KCUn(*@8oOs61)FF
zoxH;D@A~6$zx@B*gDDPO^?#4tr$*!YPZLsw*VjY6(6{2>{e8QNR@OZ8zgPdhp8sq7
z4X6vw{;Ds2dg<_OoA31v-(kjDO!`&7WaqYv)$i=rw^pq9n$HZ0lZ997U!R;G^?T?4
zxWDP`k^jv=Bk4C7WSsu$m(TmXp8wwO{>O8E2K&6(KNad1_VE96pa1(D^?c_1!*!pI
zLqmso-T$lR;q&71*5w{q6Y@WD?f!p{1OB!<uYkE%E&6}{nwY4(dv`h_ZJ%ttw{ZU2
z=zn{w|KGf@_rFEj-}kQ%DnNav7W)77(qHShzP6XHcxTUd_qYDBmH#<6FfuTM65af-
z^&9^_@sG25zd!c>+T(S7&vwGCi2d&$pR+Fa$R4wZ|9hqXUj@};;Q0O)_J95M*YzK|
z>vn(t_dWLiQO1AYw?hq_^Q-<<(*5nVy(|7l9IS=~Ku_d<?e*(zz6Lzs^S|nU;rzp2
z<$u4jm-)854jNB4cF)#czt-k&!28?#++@DR+kM<zdb)no_kZet5+*={>h`t&S@D0j
z_x(Qe+x}DZzSr_jJ%7#rJ`Ok~?*8xfCaC=(f49&7qgnf8``_rFxA#42y!#vKvIhmP
z{@cgL*1qCCJNs$%|DR^x|DFCSzibgKN+nkOXP=#Y_MotR^!I<!(h5AbKQDLvtG)LB
zp`CmRBzhP81L;5b?CiVB|8u{{|5&yD;II6@x3lK{Ook{paPDh;>erL@*`R2%`w_c8
za@%oX`|d@L_Gdw2qe12M|J&hV^Zz(~PTTxGc>l)gd-Zm!{vBRe^XmHn^%jUn9jd<G
z|92&S?fX6d_c7O>n*W!#de#3`b6Bz<mP{!6yMNQKC(LKJe!W!uf9pBj|BcoE?>5_&
z+kD*ossArD-7bmxe?2bp?<3}=!uFr<iT_Po+Wv3%{;9?FUVeYJK*DN4=zsn7c0V0H
zr~N!~K5F+rce&rfUf=)mp9uW_0h&z{(q7j;J;~1I|EDMNcl>X@-{-CP|MT4Wy*_R~
zG=~~2`ggx7^J#beF3XyG^=4mU_wP;qcUaf%>+ZXY{|En=$N=?t<l6sx{s-^>`*Q#9
zU-l9128z%upSJj4d`#sdf3NTVvX>_R`+Ui9{?hfoW~KZM|E>}M)jM<b|JC~IY(5^J
z{aU*A{<o{v@9p{S{nnTN9lY*;G+RyJnPZ}xAzqqs?^k`|)6U=K)#?A9)Uy9;$r1m0
z|N4*47;~smFW3A({{DVU{<imjkMAjeQvdT<{m+y09Y0P`bND)~6%zgjLazRweLt%5
z&*#~%&qma}S^oP-{k8u$?|<6+Kk3EJ|Bt2}w3}@&3C%$>__Ejj+JAH9{~PiD-zxua
zpa19O>3{z=>2EvxSJH~}3M4-#aJ~ND`#+-gjnng!^KFh?D*sz%|3liUpP_ZJ)ze~g
zEkjsntcv-6e!X4Y!tYP~Wq!?DZ}25I{_d~*|GS$jESJ56hll3M|JUco*S;y9Z9aSB
z?<4hLR?qg|`Fnfr&)_3(Ki8ViwcmW4<tC)~3R(N_f9=<e_P1j4uhy^qzViN>FB9(v
z++%qBKV3v|?qmmO_S1^_zrMEk>&5fm=Kd7k?f&n3{VVe+@BWHERj)rbi;+D+3KljF
zrLXFZ-#t6_KX2ZjOxu&eb@QHID}85u2wbQ?5P0?fYJGI=7vtH|v-kS{{U-a}^2?F>
zpReA%`ZNEnACoQ{`{9oLSHClZ3+n?aum4N0?yp()`A+@!?dSIX{}wqva^*ko{@+KE
zLjLxjsfDJHzCHie*Cc<P=%1fgGXJ-{#cSiff1D2Uuc<S3IiLCasNsJVG;Slm{F_=I
zTls|F+}teL`fvOEKPSDG|2-1u|NBVcr0W0bjprWpi$D$KTlz1)GVkj{|J+=YWSP=i
z{yMc+ub&XMufG2+v}f+i%=xg~R`BENfBn_`^;y}q#>e)QJbJ$3UH;KJnP2Pff0}7u
z&HbyzpJ^*3?O7c8RsVB-_;mZ7TQB}ycfT?E-`&S{&j0uRf5+NmZTHi-WJ5nZy!*EN
z`=7A-`<?o0mLJr=$^Mc|x_|k<tzpZeD_?fMFI8{61&KYGqQCpU_^%ePug^~2{CUU!
z0~7yme1BkmK-HV&;s33t{M9Y~zryEocOEmi_AyxatNx?B_1E}+SMuN7{Vo4z-Tfe|
z?|%Pvrq|Zr3IC{a!6Ft`Q5mfK^}qdU_x|fE|DT&|-#q^p@80(MU0>th%(#1WM`xXd
zdgC!oUuZ?pz`5h&q5JFYe(a7u3sM~aL$rE7Z~gh}9r^!e9m)OIY{9vuyyBt`G(+4-
z{=5J0h1%$|XTNR!cXP#KyVLD;?;d6EYin~b6#25d`*){L!_8OFrbENu>;J=+|Ni_g
z{Et}TkI(xOudvr2U-Qk`iqqs=!FOm8^Je|O-P`|czNTL5{rvCr{ZF*NU9Z2-UT-b`
zLD#B2C0@Oe@6W;5IV`tc|9cm?bS2ao5}W^Rp2%L?b}8|H;fr*J!a4iozpGp@l>ggl
z*mAC4->IwJ0-8nMto?WT{NMDw&;La~y#Jl2{-WKr;s^YE(`pSvz6t-$$Uoy0#%<{T
zY8tcwap2$U`WFZ0`+fWF_owG}{pIkVpZ6WEFZ*r3^Q?W|^B4V!r=8=tBXwQ=yQe{-
zWyADe{k8IQWD76VZ+v|7=g|tm{j>M4lDPS|cf!@lwO623euC52_<vpZ4L-!~H*8t-
zx5xLsv)$3P+I9QY8^sh$cG>5*ta%nF4^8QRuh(Cb|2y}WUewF@p4#2D{OXN-|KCRH
zUU}x6YnM`b7up;#xcE!o{+n^c?Tz}EyWcL_C$Z;Xe9z~~`|slCTz9UuGZAxI`%n-T
z%gn3)hrK@DxJLfp_M;c(YaZgO56+kC`SW<;mA}Ui-AP(;wpHi58MK(SxbRE<S3^F}
z(qxC-+y8gRUGRURa$%306nA2s=9T`|HP6<jLi}D}@%8@O|2r<<{rk43S|}rozxVOO
z8!InZ$bD*4hUIU*o&UV|cfGs$|L*OdNAr#y(DP$Do0XVnsB=f|nSaZzIsM;YxuNv$
zce#)96`S@;{Fxi~^!_W5ozJEn`e=RV(A$M|XWXlyrCHyef4l$xeH`$u{}0D|JvrV}
zpDsl3beFe2E^j+lDF1dVV}n-5(TMadj2n8j|Ns75J^yya`pPf=7w`K1t6#C@+I=DC
zGuHLqa+@Wb%zm8L{GXliw=Uy<-93)pR)g&lpW4jbuG)O@{(h(WeE%-K1O^5JW$A?a
zuky|(oUX0<xo7f^NEx61@9fup7T^AF<J#xHpZm4^+GE}fsaqVrzP8`;{%QKt-+%8i
z3jF@xxK^I~$hXgbi@g)`E=t2{-L6;rO&FZ=*^Yb@cAU#7kaS{`K=KTGQL#MkV(+*T
zXd-aF%OJe!|AopK>hF0Q1d@N3Zz}sPzgt(vTJ)L!uYmPn`(zHX&4~HC{h!avpYwIN
z6|?ypeojvOxUS%h86=G`xNl=ri}|lOMgAXWq}a1*k1p}IwBB~kJ(mq`Y%sX*WaL}$
z&zd>mpNq}MgBvQ+S6E(xBv`EtjC@P}y*_^E(#(oaYoKxD&}w#|<#qh`WY7??L#p|K
zBd_e&w;#Ry@yX2%1-q|vNQ0`0RXZ5f0{*Xk7jGpj=3gDV0W?s)V3%~l{;&H>tmgf3
zyxY$UTJR9Of$>}1fA921mtJltQA;V+XEbAwU|?f7Ad=It_sai6vLHiC)Shg;C&2(R
zH=J?7Bk6=azvkOteE08{ljiTM_TbjH&tbM3xqr`>?*1R~(w*@YBnvG|XTG!RpEP&k
z#}b=Tvomuu%J=^Q`>P@I4ukd8`dUSuxqa&A+kOh~ozD#FuODDwm~n~MVAsFTZV^_p
z{xt?N`;$LtDtzq+2XpW)Mz+`X`7K9xKYH|XL&>r&>{p<c|7Ux#`v1}0k2?8Vjv6bT
zzI}K7zm1^kA|cJ}K>7Zk<@xp{_ru=0#OyKFna8*F=Y*?Jjb|22zrXk6<^3O4-;Z8@
z{8r70*NUrG)`Kgr8L8*@f1Fz^U;E(Kt!YqKo0uJ#ec$$bHh+A5eehp!Yt%tX`oXLE
z`M+-nU%ze!4T~ik8Shm+zq3Am*S>2Z|G_QA2`AVpzTY|i|Ie>mZ3x4*{<r)tU0?Y3
zFE7-GCvzI^|M~P)S{fRFLN^)iTYry^-&ePICB#Pxb9p~ZzkdHdXfUFIkzv9awjXcT
z$L!zuFerhUp?ca*7KY1@)Zg!WoGt%<XYg@pJ=V~&fB({_&#%2(%D~Lf;F;4Pzl{-E
zctabF3<xd{sGkW=DhJrW(an&<fSn7;LpcoKusXno!rj0K72m*kfQ^BffkB!f2h@cn
zkqdSfgEYjI8z7E`adW^7;+>1;nFDN4U!k}g><wm65I~&^@`eGZTThlZK;;bB^Pqgg
z0P?^A22fZaa|s1An!6EP0|o|=b2os7FF*`XFhiY-#w9+~c^IaH+?N9?K0vw>*p4pJ
zh+$<|_2Aa-|KH!1-!GP3v7@@~53?Q<XqAzHtPK+j1E>%Ib-#&cfYw_zkh0Wl5UrX*
zaSBPE04oLs8;TKxLXRF{^+1RL)D9+oVc{V03j5Rlj7bMlOs-!q3uItmP%UwdC`m~y
zNwrEYN=+<DWiT=@wA3{)(={>*F|@EUF|#r?)iyA&GBBue+`JS;LvDUbW?Cg~4cs!^
QlAxuUp00i_>zopr0K8b=b^rhX

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
new file mode 100644
index 0000000000000000000000000000000000000000..28c6bf03016f6c994b70f38d1b7346e5831b531f
GIT binary patch
literal 564
zcmeAS@N?(olHy`uVBq!ia0y~yU=RUe4mJh`hTcwDUIqpR#^NA%Cx&(BWL`2bFuwD2
zaSX8#TsvjAw@jeOvGY5>_q|>h+1u6fBdexi<)tM8-3iJOH-6e{csS^|t`^`h%M4z^
zvrUsp%yCUni-1dr!HteCeu1-6sf(@4&z-gOX8TrnJhnM~hPD2_`!&xEoBNpM46ZP5
z>RM6Fs4Du%wQt&V4?nF#Au;N4dCxlR<XldO9-6?g%eZUVFOxLhq?If5795yX*H)3r
zcr-L!Dsz*&v#QSl(?&xbdB=-h`NEg}1Tfsq{4(uywXxqq5w)$a&)ne^j#c_lpTP8G
z*_&ovJMIUWi|u_Gk1ED$Xa95SQ_5@D^>EhFOs+Q*8UNIXwA$#oIyO8|+tqV&R#9*$
zUnSd|Hw&5HJe<YZ<N71*xK-Ib1>-|^3yuFWnr2?uxcNuK(*U^*-n;k6AAGamV&=3x
zQTjVJM+cmBEL?H-jDy2s*;QO>QThRLANE|lxz@Sy?+%4F#V^}4%*``0mhkR1xTsnd
zsl4K{bVpgeu!#g~y%YEC?D&;me>Lr&{KSK$>&ee#llSpUG=!hMOnEB&rtbEo$NBpo
ze0#XwfU{CPz~%7UQ+uQ}ChR*S%%W*wac<_u>)Jc^mA`9MySCxd!B^Kd#zy?>WBq3t
zA?<j7a@z02UrV#jFFU2SH1ENFaf?TqF86c<HRj3ddVAgxk5KwL|Js^`@zZL)>x*4_
W$LnK$#EXG}fx*+&&t;ucLK6TGg!*^@

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..2ccbfd967d9697cd4b83225558af2911e9571c9b
GIT binary patch
literal 1283
zcmeAS@N?(olHy`uVBq!ia0y~yV9)?z4mJh`hMs>rav2y{PI<aGhE&WsI>R?dBvs;g
z{d;TUyFpPJ%eF4Kv7n|^zp=ULn1t;EM$XP7lUeld*i<WYMHn1eEM+Rk!LA?E!ztJy
zD8yIC>OAGhrAO=?vmAmpT<U+jYxid3dVb^0cemaCn{#@yPnp^KJ?}ry{%?H#%xAl{
z8!DE^W+>R*XMV$8#$?-Y`cDL-1XCS@pJejB8Rvppy6eq7etCUAujg?q<WvaP_dQE4
z{y3yycZjut%lnV#r5Q_NT~$>j6J!e{Uv#AAYb{|~a_aH522J@Q@fi&BOpfuWHHbGp
zf5x@0=W&%z;t#%xYZ_i1#tsY?XV=JR1*ru$Xe%q8GYMi`*I43cb15zIa$ef*g)OP`
zxn+8uo27Eb>{9r}R#PV@sJksCu`zk^$I#qqi)ZJWE@$GC^4#7iY9ct-)8d8n31bVb
zX;lK#VjdrPy!sZ;@og0)Rhw5$KOp&F-NcXuofoDxM?Z25Q1Tbd+xYNCT0eV~Php(s
z<cV5Oqt_M$Mm(3`W4LW2^O=pEcVCd0)6OHW!U}d3U4JIHF7H4Q=S9Q*f&ljpaicX$
z!zMRzPZfB&W>r(KmiUp+T6+&?C9dbVk>SLWbgX<w;Owuib8E8IxITQlYSWzjwe_o?
zU#jS)hV?5lUU-G>@7~0v#&fvx<GF_OUrTZeT5o(*zs?;a!Ie>}_S)%a@u$R+v$Lgb
zcLiOYf4R$3h^y$~8P-z=e?C;X^D^2|@K|_BOOua4qui|r8!K13nyLg|73lx<s9^v3
zvz!;@UdMXwyu6)h+Ey2blZUP~$h(=BrA$6PZRxgW&$lFPoN%IEU%xNr>rZXr*ju;F
zgx|erIDfsIxhjhHXMvIP?8enx7P6mu>*fc1c=y;ahGSjp;lGuBcQh{SzH#ApT49dK
z`Ang8Y6pT&Jlr#3(Hn0W*>~S9f3}}*)^yfuapkkQmiJL7h52FRWrLWr4F+59@QKX*
z&iiA|j)#}$b~)uf+UVL>vE{JpQwhGc<u`8Kl#sa+s53)ilYsTF7rV~0@BgWj-}_+F
z>;jIHlKqXlCF80s&R_HEmS6Euygc@5k7ASXhVP2g(|73{u6(F=?yx`%zx0!xh0k=>
z@2~H(ejI6YT%e^_^d0ZiKSyPK{bY7bNiOgy*`?Sx*{Rj0zP_&O%zjCcZ5wK1&7b$b
zS-4u+Re)>xxmODx+IoKSah(vkF4bmQOJ?4@n*L71#9h^eYmdsG-&9-ce|Um#?yRl}
zHz)kP-&6SUG5^IIEML~BMqVrRQjA}+dhu305AQAA`6pzU9W{1E>(0+>-l`ogtQT#4
zv{I4dqgB+-Pp<{^Wvq|eKaP}%{%owt&7)o~)wHF}A<4B|UA%w)kz-Te{&=aQJFhvL
zcU`h$Qee7tc-{WP?;gh+O*;8F!nyT<D)aZAC7TcAEpl@>Ed4_zXS=)6n^)GSALu(@
zFj_mOP`4*Na%-LC^ZU2XzIy6y&|qkMNLIl0d(*@(Mjs@LFW7h~w7dO(eCMgX;W}ey
z)$1FVT(;b{_T{serM4|X+iVsv?@3bGd0_hizGsX6s!a`EBIo^}j%A+F$3@YdzmBZj
z*|cUF%e7fvr+yyrOFrYjRQJK&Nt+6#ztwGP_&n*`Q6J-9SNuJG)iEwe+w485%%@SC
z)0^p~ht+}=x9!*b3^nYjoiqK*szo(3n7-R@emEuiR&Q1|0|Nttr>mdKI;Vst04OMA
Ap8x;=

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..f091b6b0bca859a3f474b03065bef75ba58a9e4c
GIT binary patch
literal 1588
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
KKbLh*2~7ZftovC2

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
new file mode 100644
index 0000000000000000000000000000000000000000..4cde12118dda48d71e01fcb589a74d069c5d7cb5
GIT binary patch
literal 1025
zcmeAS@N?(olHy`uVBq!ia0y~yV2}l24mJh`hOo)${0t1tCp=voLn`KMo$i|v6Do4N
z{`<b~Ml(xh`LD=b>FK#DR4OpQeBF{oZd^@ytAg%E#Qb2~b^X?|T}6qm0$PzPyj`7G
zy_Gu?Tvy63oEqf4uq)x$(ur!5kEj^Gzq`Ntx7tjVxiiC8v%gDvxBLB{bJyoo%T4N0
zVODtQ=;^K!J27NZ$iBu<udg*~FCT{NPxs`yB%kkH^y~kVxl@EEL=|Y%PVng3d}#8q
z<uOzJJgdYHcvLY+uqG)m@JPD6bPRpZxu$Va^MN0sr8bOC2?so^*lbvKh};Sgs%$+h
z%z0c-{RwkH(}6=il6kTD6)&fCJPV0F<;TF?Bk39J5G@vA`r&eC%fk5NqHDVarDk-x
z#vd$NV4viCPRBKQ>KQ4|sNM5<Z%F-|(6+L@mi2H#y-Rk8FvrT>|D|4BlJT3qaC^dy
z`Al<PiMy#~=q4m2sI}#?9&Y^C@l7N{dP<V>i+Wy`_(SF_GH?1bcJn2~W`yzIR&v&n
zHwq7(^p$5v+Sf3x^?C*FF4e(q*QF|>HkSQxN`4T-liuBTV8bK*O%EQdEA!sxwmOn=
z?UScxwmjbZIdxYN+ghe~{*9XrWo&{UU72!%^|WrmE}d^*TJBs<%zjqs`ZenD!Q0Wg
z)z!{jsrNI}RyWA{w*5T9?C;-wPVEGH0LQ{N4|eXGuy?QG!nJd+n?Brnto>zY-v1XL
z^bO0mMaTI!UQYe^r=s(u>x)yB0SOPXB<H>3tXO586LHe?cEZ!6=k?X@+|Imt;Z5WD
zy7))8PqyglPMaOg!<eMimcFg+%}dVdtM<*i@^<glqlSk1ah8#fj-)uHpW86uz%GZJ
zw`Vq2PrkAD=<^FRj+H0h?MwOaQ24{w`J9WV3-2mw+thra!*cfH?eczx7q&g<onjPw
zjQ4gzN^Pp$O<AJ~_apM$N(OAR^An%#UT;yE(la-|=fm|kN{yx}>(U-fn|rcqYiLo;
zi<r*s=eT9%pIz!-&S{>jtaq;Xd#<$P&F$UmocfM*F7Q)L-FK^}@kZzL?dBhoKEIE#
zDxCIWncWkao!4w0KVN51@IfQ|xfjc|2d{o4sfadyjXc04r0&GMzV4H7e%%jVlkmGw
zj<WvBzklLH_U;>ZE<P&GxmID5uF}h7ebPdivmo=ww_2NX?D2nmX7ukdOgxZNIPZ5^
z&a=hh@6uz7I}T1L(l)+SsQgm!fyQ-9UMtRQp6;h9NB3=Q+b^CRHOpyHfoAp9%MTXU
zxm(RSx3th|dD^5SsnY$cpWR!?W#DoBcVyz#M|0+{2w$IlV#1PuNwNR-ePFXu%k;VA
q^R|5R?a8lx23>mWT{!KG{qOgR*SIgbw=gg;FnGH9xvX<aXaWFyM)8~g

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..d0ef06e7edb86cdfe0d15b4b0d98334a86163658
GIT binary patch
literal 1716
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
V&a^duV_;xl@O1TaS?83{1OVHl_EP`=

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..dcdc2306c28505ebc0b6c3a359c4d252bf626b9f
GIT binary patch
literal 1920
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

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
new file mode 100644
index 0000000000000000000000000000000000000000..2ccbfd967d9697cd4b83225558af2911e9571c9b
GIT binary patch
literal 1283
zcmeAS@N?(olHy`uVBq!ia0y~yV9)?z4mJh`hMs>rav2y{PI<aGhE&WsI>R?dBvs;g
z{d;TUyFpPJ%eF4Kv7n|^zp=ULn1t;EM$XP7lUeld*i<WYMHn1eEM+Rk!LA?E!ztJy
zD8yIC>OAGhrAO=?vmAmpT<U+jYxid3dVb^0cemaCn{#@yPnp^KJ?}ry{%?H#%xAl{
z8!DE^W+>R*XMV$8#$?-Y`cDL-1XCS@pJejB8Rvppy6eq7etCUAujg?q<WvaP_dQE4
z{y3yycZjut%lnV#r5Q_NT~$>j6J!e{Uv#AAYb{|~a_aH522J@Q@fi&BOpfuWHHbGp
zf5x@0=W&%z;t#%xYZ_i1#tsY?XV=JR1*ru$Xe%q8GYMi`*I43cb15zIa$ef*g)OP`
zxn+8uo27Eb>{9r}R#PV@sJksCu`zk^$I#qqi)ZJWE@$GC^4#7iY9ct-)8d8n31bVb
zX;lK#VjdrPy!sZ;@og0)Rhw5$KOp&F-NcXuofoDxM?Z25Q1Tbd+xYNCT0eV~Php(s
z<cV5Oqt_M$Mm(3`W4LW2^O=pEcVCd0)6OHW!U}d3U4JIHF7H4Q=S9Q*f&ljpaicX$
z!zMRzPZfB&W>r(KmiUp+T6+&?C9dbVk>SLWbgX<w;Owuib8E8IxITQlYSWzjwe_o?
zU#jS)hV?5lUU-G>@7~0v#&fvx<GF_OUrTZeT5o(*zs?;a!Ie>}_S)%a@u$R+v$Lgb
zcLiOYf4R$3h^y$~8P-z=e?C;X^D^2|@K|_BOOua4qui|r8!K13nyLg|73lx<s9^v3
zvz!;@UdMXwyu6)h+Ey2blZUP~$h(=BrA$6PZRxgW&$lFPoN%IEU%xNr>rZXr*ju;F
zgx|erIDfsIxhjhHXMvIP?8enx7P6mu>*fc1c=y;ahGSjp;lGuBcQh{SzH#ApT49dK
z`Ang8Y6pT&Jlr#3(Hn0W*>~S9f3}}*)^yfuapkkQmiJL7h52FRWrLWr4F+59@QKX*
z&iiA|j)#}$b~)uf+UVL>vE{JpQwhGc<u`8Kl#sa+s53)ilYsTF7rV~0@BgWj-}_+F
z>;jIHlKqXlCF80s&R_HEmS6Euygc@5k7ASXhVP2g(|73{u6(F=?yx`%zx0!xh0k=>
z@2~H(ejI6YT%e^_^d0ZiKSyPK{bY7bNiOgy*`?Sx*{Rj0zP_&O%zjCcZ5wK1&7b$b
zS-4u+Re)>xxmODx+IoKSah(vkF4bmQOJ?4@n*L71#9h^eYmdsG-&9-ce|Um#?yRl}
zHz)kP-&6SUG5^IIEML~BMqVrRQjA}+dhu305AQAA`6pzU9W{1E>(0+>-l`ogtQT#4
zv{I4dqgB+-Pp<{^Wvq|eKaP}%{%owt&7)o~)wHF}A<4B|UA%w)kz-Te{&=aQJFhvL
zcU`h$Qee7tc-{WP?;gh+O*;8F!nyT<D)aZAC7TcAEpl@>Ed4_zXS=)6n^)GSALu(@
zFj_mOP`4*Na%-LC^ZU2XzIy6y&|qkMNLIl0d(*@(Mjs@LFW7h~w7dO(eCMgX;W}ey
z)$1FVT(;b{_T{serM4|X+iVsv?@3bGd0_hizGsX6s!a`EBIo^}j%A+F$3@YdzmBZj
z*|cUF%e7fvr+yyrOFrYjRQJK&Nt+6#ztwGP_&n*`Q6J-9SNuJG)iEwe+w485%%@SC
z)0^p~ht+}=x9!*b3^nYjoiqK*szo(3n7-R@emEuiR&Q1|0|Nttr>mdKI;Vst04OMA
Ap8x;=

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..c8f9ed8f5cee1c98386d13b17e89f719e83555b2
GIT binary patch
literal 1895
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
OVDNPHb6Mw<&;$VbO<Vi`

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22
GIT binary patch
literal 2665
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

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22
GIT binary patch
literal 2665
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

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..75b2d164a5a98e212cca15ea7bf2ab5de5108680
GIT binary patch
literal 3831
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
U*#tT>FfcH9y85}Sb4q9e0QKHA1^@s6

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
new file mode 100644
index 0000000000000000000000000000000000000000..c4df70d39da7941ef3f6dcb7f06a192d8dcb308d
GIT binary patch
literal 1888
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
O7(8A5T-G@yGywok=Zg*i

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..6a84f41e14e27f4b11f16f9ee39279ac98f8d5ac
GIT binary patch
literal 3294
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

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..d0e1f58536026aebc4f1f70e481f6993c9ff088d
GIT binary patch
literal 3612
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

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json
new file mode 100644
index 0000000..0bedcf2
--- /dev/null
+++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json
@@ -0,0 +1,23 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "LaunchImage.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "LaunchImage@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "LaunchImage@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  }
+}
diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
new file mode 100644
index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838
GIT binary patch
literal 68
zcmeAS@N?(olHy`uVBq!ia0y~yU|<Ac4i*LmhOII@ObiSR+@3CuAr*6yf1PJwU}9%v
Vnk8dc$iTqB;OXk;vd$@?2>@r242}Q*

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
new file mode 100644
index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838
GIT binary patch
literal 68
zcmeAS@N?(olHy`uVBq!ia0y~yU|<Ac4i*LmhOII@ObiSR+@3CuAr*6yf1PJwU}9%v
Vnk8dc$iTqB;OXk;vd$@?2>@r242}Q*

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
new file mode 100644
index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838
GIT binary patch
literal 68
zcmeAS@N?(olHy`uVBq!ia0y~yU|<Ac4i*LmhOII@ObiSR+@3CuAr*6yf1PJwU}9%v
Vnk8dc$iTqB;OXk;vd$@?2>@r242}Q*

literal 0
HcmV?d00001

diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md
new file mode 100644
index 0000000..89c2725
--- /dev/null
+++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md
@@ -0,0 +1,5 @@
+# Launch Screen Assets
+
+You can customize the launch screen with your own desired assets by replacing the image files in this directory.
+
+You 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.
\ No newline at end of file
diff --git a/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard
new file mode 100644
index 0000000..f2e259c
--- /dev/null
+++ b/ios/Runner/Base.lproj/LaunchScreen.storyboard
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<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">
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12089"/>
+    </dependencies>
+    <scenes>
+        <!--View Controller-->
+        <scene sceneID="EHf-IW-A2E">
+            <objects>
+                <viewController id="01J-lp-oVM" sceneMemberID="viewController">
+                    <layoutGuides>
+                        <viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/>
+                        <viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/>
+                    </layoutGuides>
+                    <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <subviews>
+                            <imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
+                            </imageView>
+                        </subviews>
+                        <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
+                        <constraints>
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
+                            <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
+                        </constraints>
+                    </view>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
+            </objects>
+            <point key="canvasLocation" x="53" y="375"/>
+        </scene>
+    </scenes>
+    <resources>
+        <image name="LaunchImage" width="168" height="185"/>
+    </resources>
+</document>
diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard
new file mode 100644
index 0000000..f3c2851
--- /dev/null
+++ b/ios/Runner/Base.lproj/Main.storyboard
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<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">
+    <dependencies>
+        <deployment identifier="iOS"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
+    </dependencies>
+    <scenes>
+        <!--Flutter View Controller-->
+        <scene sceneID="tne-QT-ifu">
+            <objects>
+                <viewController id="BYZ-38-t0r" customClass="FlutterViewController" sceneMemberID="viewController">
+                    <layoutGuides>
+                        <viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/>
+                        <viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/>
+                    </layoutGuides>
+                    <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
+                        <rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
+                        <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                        <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
+                    </view>
+                </viewController>
+                <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
+            </objects>
+        </scene>
+    </scenes>
+</document>
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
new file mode 100644
index 0000000..6e85ae4
--- /dev/null
+++ b/ios/Runner/Info.plist
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>minehunter</string>
+	<key>CFBundlePackageType</key>
+	<string>APPL</string>
+	<key>CFBundleShortVersionString</key>
+	<string>$(FLUTTER_BUILD_NAME)</string>
+	<key>CFBundleSignature</key>
+	<string>????</string>
+	<key>CFBundleVersion</key>
+	<string>$(FLUTTER_BUILD_NUMBER)</string>
+	<key>LSRequiresIPhoneOS</key>
+	<true/>
+	<key>UILaunchStoryboardName</key>
+	<string>LaunchScreen</string>
+	<key>UIMainStoryboardFile</key>
+	<string>Main</string>
+	<key>UISupportedInterfaceOrientations</key>
+	<array>
+		<string>UIInterfaceOrientationPortrait</string>
+		<string>UIInterfaceOrientationLandscapeLeft</string>
+		<string>UIInterfaceOrientationLandscapeRight</string>
+	</array>
+	<key>UISupportedInterfaceOrientations~ipad</key>
+	<array>
+		<string>UIInterfaceOrientationPortrait</string>
+		<string>UIInterfaceOrientationPortraitUpsideDown</string>
+		<string>UIInterfaceOrientationLandscapeLeft</string>
+		<string>UIInterfaceOrientationLandscapeRight</string>
+	</array>
+	<key>UIViewControllerBasedStatusBarAppearance</key>
+	<false/>
+</dict>
+</plist>
diff --git a/ios/Runner/main.m b/ios/Runner/main.m
new file mode 100644
index 0000000..dff6597
--- /dev/null
+++ b/ios/Runner/main.m
@@ -0,0 +1,9 @@
+#import <Flutter/Flutter.h>
+#import <UIKit/UIKit.h>
+#import "AppDelegate.h"
+
+int main(int argc, char* argv[]) {
+  @autoreleasepool {
+    return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
+  }
+}
diff --git a/lib/main.dart b/lib/main.dart
new file mode 100644
index 0000000..a317c62
--- /dev/null
+++ b/lib/main.dart
@@ -0,0 +1,29 @@
+import 'package:flutter/material.dart';
+import 'package:provider/provider.dart';
+
+import 'provider/data.dart';
+import 'screens/home.dart';
+
+void main() => runApp(MyApp());
+
+class MyApp extends StatelessWidget {
+  @override
+  Widget build(BuildContext context) {
+    return ChangeNotifierProvider(
+      create: (BuildContext context) => Data(),
+      child: Consumer<Data>(builder: (context, data, child) {
+        return MaterialApp(
+          debugShowCheckedModeBanner: false,
+          theme: ThemeData(
+            primaryColor: Colors.blue,
+            visualDensity: VisualDensity.adaptivePlatformDensity,
+          ),
+          home: Home(),
+          routes: {
+            Home.id: (context) => Home(),
+          },
+        );
+      }),
+    );
+  }
+}
diff --git a/lib/provider/data.dart b/lib/provider/data.dart
new file mode 100644
index 0000000..26ba515
--- /dev/null
+++ b/lib/provider/data.dart
@@ -0,0 +1,5 @@
+import 'package:flutter/foundation.dart';
+
+class Data extends ChangeNotifier {
+
+}
diff --git a/lib/screens/home.dart b/lib/screens/home.dart
new file mode 100644
index 0000000..7c832f2
--- /dev/null
+++ b/lib/screens/home.dart
@@ -0,0 +1,57 @@
+import 'package:flutter/material.dart';
+import 'package:provider/provider.dart';
+
+import '../provider/data.dart';
+
+class Home extends StatelessWidget {
+  static const String id = 'home';
+
+  @override
+  Widget build(BuildContext context) {
+    Data _myProvider = Provider.of<Data>(context);
+
+    return Scaffold(
+      appBar: AppBar(
+        title: Text('Minehunter game'),
+      ),
+      body: Center(
+        child: Column(
+          mainAxisAlignment: MainAxisAlignment.center,
+          children: <Widget>[
+            Container(
+              child: Column(
+                mainAxisSize: MainAxisSize.min,
+                mainAxisAlignment: MainAxisAlignment.center,
+                children: [
+                  Container(
+                    margin: EdgeInsets.all(4),
+                    padding: EdgeInsets.all(4),
+                    decoration: BoxDecoration(
+                      color: Colors.blue,
+                      borderRadius: BorderRadius.circular(4),
+                      border: Border.all(
+                        color: Colors.green,
+                        width: 4,
+                      ),
+                    ),
+                    child: FlatButton(
+                      child: Text(
+                        '💣',
+                        textAlign: TextAlign.center,
+                        style: TextStyle(
+                          fontSize: 50,
+                          fontWeight: FontWeight.w600,
+                          color: Colors.black,
+                        ),
+                      ),
+                    ),
+                  ),
+                ],
+              ),
+            ),
+          ],
+        ),
+      ),
+    );
+  }
+}
diff --git a/pubspec.lock b/pubspec.lock
new file mode 100644
index 0000000..8fe48be
--- /dev/null
+++ b/pubspec.lock
@@ -0,0 +1,161 @@
+# Generated by pub
+# See https://dart.dev/tools/pub/glossary#lockfile
+packages:
+  async:
+    dependency: transitive
+    description:
+      name: async
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.6.1"
+  boolean_selector:
+    dependency: transitive
+    description:
+      name: boolean_selector
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.1.0"
+  characters:
+    dependency: transitive
+    description:
+      name: characters
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.1.0"
+  charcode:
+    dependency: transitive
+    description:
+      name: charcode
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.2.0"
+  clock:
+    dependency: transitive
+    description:
+      name: clock
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.1.0"
+  collection:
+    dependency: transitive
+    description:
+      name: collection
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.15.0"
+  fake_async:
+    dependency: transitive
+    description:
+      name: fake_async
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.2.0"
+  flutter:
+    dependency: "direct main"
+    description: flutter
+    source: sdk
+    version: "0.0.0"
+  flutter_test:
+    dependency: "direct dev"
+    description: flutter
+    source: sdk
+    version: "0.0.0"
+  matcher:
+    dependency: transitive
+    description:
+      name: matcher
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.12.10"
+  meta:
+    dependency: transitive
+    description:
+      name: meta
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.3.0"
+  nested:
+    dependency: transitive
+    description:
+      name: nested
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.0.0"
+  path:
+    dependency: transitive
+    description:
+      name: path
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.8.0"
+  provider:
+    dependency: "direct main"
+    description:
+      name: provider
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "5.0.0"
+  sky_engine:
+    dependency: transitive
+    description: flutter
+    source: sdk
+    version: "0.0.99"
+  source_span:
+    dependency: transitive
+    description:
+      name: source_span
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.8.1"
+  stack_trace:
+    dependency: transitive
+    description:
+      name: stack_trace
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.10.0"
+  stream_channel:
+    dependency: transitive
+    description:
+      name: stream_channel
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.1.0"
+  string_scanner:
+    dependency: transitive
+    description:
+      name: string_scanner
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.1.0"
+  term_glyph:
+    dependency: transitive
+    description:
+      name: term_glyph
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.2.0"
+  test_api:
+    dependency: transitive
+    description:
+      name: test_api
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.3.0"
+  typed_data:
+    dependency: transitive
+    description:
+      name: typed_data
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "1.3.0"
+  vector_math:
+    dependency: transitive
+    description:
+      name: vector_math
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "2.1.0"
+sdks:
+  dart: ">=2.12.0 <3.0.0"
+  flutter: ">=1.16.0"
diff --git a/pubspec.yaml b/pubspec.yaml
new file mode 100644
index 0000000..cd7aa59
--- /dev/null
+++ b/pubspec.yaml
@@ -0,0 +1,21 @@
+name: minehunter
+description: A minehunter game application.
+publish_to: 'none'
+version: 1.0.0+1
+
+environment:
+  sdk: ">=2.7.0 <3.0.0"
+
+dependencies:
+  flutter:
+    sdk: flutter
+  provider: ^5.0.0
+
+dev_dependencies:
+  flutter_test:
+    sdk: flutter
+
+flutter:
+  uses-material-design: true
+  assets:
+    - assets/files/
diff --git a/test/widget_test.dart b/test/widget_test.dart
new file mode 100644
index 0000000..4ae14e6
--- /dev/null
+++ b/test/widget_test.dart
@@ -0,0 +1,14 @@
+// This is a basic Flutter widget test.
+//
+// To perform an interaction with a widget in your test, use the WidgetTester
+// utility that Flutter provides. For example, you can send tap and scroll
+// gestures. You can also use WidgetTester to find child widgets in the widget
+// tree, read text, and verify that the values of widget properties are correct.
+
+import 'package:flutter/material.dart';
+import 'package:flutter_test/flutter_test.dart';
+
+import 'package:minehunter/main.dart';
+
+void main() {
+}
-- 
GitLab