rhodes 7.1.17 → 7.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1157) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +1 -1
  3. data/Gemfile +3 -0
  4. data/LICENSE +1 -1
  5. data/README.html +2 -2
  6. data/README.md +26 -23
  7. data/Rakefile +169 -89
  8. data/appveyor.yml +74 -47
  9. data/bin/rhodes-setup +4 -4
  10. data/doc/application.txt +21 -0
  11. data/doc/oss/DeveloperNotes.md +1 -1
  12. data/doc/oss/WM_CE_Installation_And_Build_Guidelines.md +1 -1
  13. data/ext/extconf.rb +16 -3
  14. data/extensions/instrumentation/ext/platform/iphone/Instrumentation.xcodeproj/project.pbxproj +4 -4
  15. data/extensions/rhoconnect-push/ext/build.bat +1 -1
  16. data/extensions/rhoelementsext/ext/rhoelementsext/platform/android/rhoelements_temp/src/com/rho/rhoelements/graphics/BatteryIndicator.java +14 -1
  17. data/lib/build/buildgem.rb +26 -0
  18. data/lib/build/jake.rb +7 -5
  19. data/lib/commonAPI/ConnectionChecking/ext/build.bat +1 -1
  20. data/lib/commonAPI/RubyServer/ext/build.bat +1 -1
  21. data/lib/commonAPI/RubyServer/ext/platform/iphone/Rakefile +9 -62
  22. data/lib/commonAPI/RubyServer/ext/platform/iphone/RubyServer.xcodeproj/project.pbxproj +4 -4
  23. data/lib/commonAPI/audiocapture/ext/build.bat +1 -1
  24. data/lib/commonAPI/audiocapture/ext/platform/android/src/com/rho/audiocapture/AudioCapture.java +4 -1
  25. data/lib/commonAPI/audiocapture/ext/platform/iphone/Audiocapture.xcodeproj/project.pbxproj +4 -4
  26. data/lib/commonAPI/audiocapture/ext/platform/iphone/Rakefile +9 -63
  27. data/lib/commonAPI/barcode/ext/barcode.xml +2 -6
  28. data/lib/commonAPI/barcode/ext/build +5 -0
  29. data/lib/commonAPI/barcode/ext/build.bat +1 -1
  30. data/lib/commonAPI/barcode/ext/platform/android/AndroidManifest.xml +13 -0
  31. data/lib/commonAPI/barcode/ext/platform/android/Rakefile +229 -0
  32. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_arrow_back.png +0 -0
  33. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_done.png +0 -0
  34. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_flash_off.png +0 -0
  35. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_flash_on.png +0 -0
  36. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable/barcode_replay.png +0 -0
  37. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/drawable-hdpi/icon.png +0 -0
  38. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/layout/barcode_capture.xml +98 -0
  39. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values/barcode_strings.xml +12 -0
  40. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values/barcode_styles.xml +8 -0
  41. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values/dimens.xml +5 -0
  42. data/lib/commonAPI/barcode/ext/platform/android/additional_files/res/values-w820dp/dimens.xml +6 -0
  43. data/lib/commonAPI/barcode/ext/platform/android/ext_java.files +11 -0
  44. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeCaptureActivity.java +669 -0
  45. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeFormats.java +64 -0
  46. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeGraphic.java +94 -0
  47. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeGraphicTracker.java +165 -0
  48. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/BarcodeTrackerFactory.java +47 -0
  49. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/ui/camera/CameraSource.java +1166 -0
  50. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/ui/camera/CameraSourcePreview.java +189 -0
  51. data/lib/commonAPI/barcode/ext/platform/android/src/com/google/barcodereader/ui/camera/GraphicOverlay.java +309 -0
  52. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeCommon.java +199 -0
  53. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeFactory.java +66 -49
  54. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeFactoryRhoListener.java +9 -1
  55. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeRhoExtension.java +9 -1
  56. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/BarcodeSingleton.java +75 -23
  57. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/InternalAndroidBarcodeScanner.java +184 -0
  58. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/ZXingScanner.java +48 -180
  59. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/emdk3/EMDK3Scanner.java +8 -1
  60. data/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode/emdk3/EMDK3ScannerSettings.java +4 -3
  61. data/lib/commonAPI/barcode/ext/platform/iphone/Barcode.xcodeproj/project.pbxproj +4 -4
  62. data/lib/commonAPI/barcode/ext/platform/iphone/Rakefile +9 -64
  63. data/lib/commonAPI/barcode/ext/platform/iphone/ZXingObjC/ZXingObjC/client/result/ZXResultParser.m +1 -1
  64. data/lib/commonAPI/barcode/ext/platform/iphone/ZXingObjC/ZXingObjC/datamatrix/decoder/ZXDataMatrixDecodedBitStreamParser.m +4 -4
  65. data/lib/commonAPI/barcode/ext/platform/iphone/ZXingObjC/ZXingObjC.xcodeproj/project.pbxproj +6 -6
  66. data/lib/commonAPI/barcode/ext/platform/qt/Barcode.pro +41 -37
  67. data/lib/commonAPI/barcode/ext/platform/qt/src/BarcodeDialogBuilder.h +2 -0
  68. data/lib/commonAPI/barcode/ext/platform/qt/src/BarcodeDialogView.cpp +6 -3
  69. data/lib/commonAPI/barcode/ext/platform/qt/src/BarcodeDialogView.h +1 -1
  70. data/lib/commonAPI/barcode/ext/platform/qt/src/qzxing/zxing/zxing/ZXing.h +5 -5
  71. data/lib/commonAPI/barcode/ext.yml +10 -1
  72. data/lib/commonAPI/bluetooth/ext/build.bat +1 -1
  73. data/lib/commonAPI/bluetooth/ext/platform/android/src/com/rhomobile/rhodes/bluetooth/RhoBluetoothManagerNew.java +2 -0
  74. data/lib/commonAPI/bluetooth/ext/platform/iphone/Bluetooth.xcodeproj/project.pbxproj +6 -16
  75. data/lib/commonAPI/bluetooth/ext/platform/iphone/Rakefile +9 -62
  76. data/lib/commonAPI/bluetooth/ext/platform/qt/Bluetooth.pro +8 -11
  77. data/lib/commonAPI/bluetooth/ext/platform/qt/src/bluetooth/bluetoothserver.h +1 -1
  78. data/lib/commonAPI/clipboard/ext/build.bat +1 -1
  79. data/lib/commonAPI/clipboard/ext/platform/iphone/Clipboard.xcodeproj/project.pbxproj +4 -4
  80. data/lib/commonAPI/clipboard/ext/platform/iphone/Rakefile +9 -62
  81. data/lib/commonAPI/coreapi/RhoNativeTabbarApi.rb +1 -1
  82. data/lib/commonAPI/coreapi/RhoNotificationApi.rb +1 -1
  83. data/lib/commonAPI/coreapi/ext/Application.xml +2 -1
  84. data/lib/commonAPI/coreapi/ext/Timer.xml +21 -13
  85. data/lib/commonAPI/coreapi/ext/build +5 -0
  86. data/lib/commonAPI/coreapi/ext/build.bat +1 -1
  87. data/lib/commonAPI/coreapi/ext/platform/android/ApplicationManifestAdds.erb +0 -1
  88. data/lib/commonAPI/coreapi/ext/platform/android/src/com/rho/intent/IntentSingleton.java +21 -7
  89. data/lib/commonAPI/coreapi/ext/platform/iphone/Coreapi.xcodeproj/project.pbxproj +6 -4
  90. data/lib/commonAPI/coreapi/ext/platform/iphone/cpp_based_impl/SystemImpl.mm +4 -2
  91. data/lib/commonAPI/coreapi/ext/platform/iphone/impl/IntentSingleton.m +2 -2
  92. data/lib/commonAPI/coreapi/ext/platform/iphone/impl/NotificationSingleton.m +2 -2
  93. data/lib/commonAPI/coreapi/ext/platform/qt/coreapi.pro +16 -17
  94. data/lib/commonAPI/coreapi/ext/platform/qt/src/CNativeToolbarImpl.cpp +1 -1
  95. data/lib/commonAPI/coreapi/ext/platform/wm/src/NetworkDetect.h +2 -2
  96. data/lib/commonAPI/coreapi/ext/platform/wm/src/NotificationImpl.cpp +7 -0
  97. data/lib/commonAPI/coreapi/ext/platform/wm/src/SystemImpl.cpp +1 -3
  98. data/lib/commonAPI/coreapi/ext/push.xml +5 -3
  99. data/lib/commonAPI/coreapi/ext/shared/ApplicationImpl.cpp +2 -2
  100. data/lib/commonAPI/coreapi/ext/shared/InitExtension.cpp +8 -8
  101. data/lib/commonAPI/coreapi/ext/shared/NetworkDetectBase.cpp +1 -1
  102. data/lib/commonAPI/coreapi/ext/shared/SystemImplBase.cpp +2 -0
  103. data/lib/commonAPI/coreapi/ext/system.xml +3 -0
  104. data/lib/commonAPI/devicesecurity/ext/DeviceSecurity.xml +2 -2
  105. data/lib/commonAPI/devicesecurity/ext/build.bat +1 -1
  106. data/lib/commonAPI/devicesecurity/ext/platform/iphone/DeviceSecurity.xcodeproj/project.pbxproj +4 -4
  107. data/lib/commonAPI/devicesecurity/ext/platform/iphone/Rakefile +9 -62
  108. data/lib/commonAPI/eventsource/ext/platform/iphone/Eventsource.xcodeproj/project.pbxproj +4 -4
  109. data/lib/commonAPI/eventsource/ext/platform/iphone/Rakefile +9 -64
  110. data/lib/commonAPI/hardwarekeys/ext/platform/android/src/com/rho/keycapture/KeyCaptureRhoListener.java +11 -1
  111. data/lib/commonAPI/hardwarekeys/ext/platform/android/src/com/rho/keycapture/KeyCaptureSingleton.java +14 -1
  112. data/lib/commonAPI/hardwarekeys/ext/platform/iphone/HardwareKeys.xcodeproj/project.pbxproj +4 -4
  113. data/lib/commonAPI/hardwarekeys/ext/platform/iphone/Rakefile +9 -62
  114. data/lib/commonAPI/indicators/ext/platform/iphone/Indicators.xcodeproj/project.pbxproj +4 -4
  115. data/lib/commonAPI/indicators/ext/platform/iphone/Rakefile +9 -62
  116. data/lib/commonAPI/javascriptvm/ext/platform/iphone/Javascriptvm.xcodeproj/project.pbxproj +4 -4
  117. data/lib/commonAPI/javascriptvm/ext/platform/iphone/Rakefile +9 -63
  118. data/lib/commonAPI/logCapture/ext/build.bat +1 -1
  119. data/lib/commonAPI/logCapture/ext/platform/iphone/LogCapture.xcodeproj/project.pbxproj +4 -4
  120. data/lib/commonAPI/logCapture/ext/platform/iphone/Rakefile +9 -62
  121. data/lib/commonAPI/mediacapture/ext/build +5 -0
  122. data/lib/commonAPI/mediacapture/ext/build.bat +1 -1
  123. data/lib/commonAPI/mediacapture/ext/platform/android/AndroidManifest_rhomobile.xml +1 -0
  124. data/lib/commonAPI/mediacapture/ext/platform/android/ApplicationFileProvider.erb +9 -0
  125. data/lib/commonAPI/mediacapture/ext/platform/android/adds/res/xml/image_fileprovider_paths.xml +4 -0
  126. data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraObject.java +60 -3
  127. data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/camera/CameraRhoListener.java +50 -8
  128. data/lib/commonAPI/mediacapture/ext/platform/android/src/com/rho/videocapture/Videocapture.java +3 -1
  129. data/lib/commonAPI/mediacapture/ext/platform/iphone/Mediacapture.xcodeproj/project.pbxproj +4 -4
  130. data/lib/commonAPI/mediacapture/ext/platform/iphone/Rakefile +9 -62
  131. data/lib/commonAPI/mediacapture/ext/platform/qt/{MediaCapture.pro → Mediacapture.pro} +19 -33
  132. data/lib/commonAPI/mediacapture/ext/platform/qt/src/Camera_impl.cpp +1 -1
  133. data/lib/commonAPI/mediacapture/ext.yml +4 -1
  134. data/lib/commonAPI/mediaplayer/ext/platform/iphone/Mediaplayer.xcodeproj/project.pbxproj +4 -4
  135. data/lib/commonAPI/mediaplayer/ext/platform/iphone/Rakefile +9 -62
  136. data/lib/commonAPI/printing/ext/platform/iphone/Printing.xcodeproj/project.pbxproj +4 -4
  137. data/lib/commonAPI/printing/ext/platform/iphone/Rakefile +9 -62
  138. data/lib/commonAPI/printing_epson/ext/platform/iphone/PrintingEpson.xcodeproj/project.pbxproj +4 -4
  139. data/lib/commonAPI/printing_epson/ext/platform/iphone/Rakefile +9 -62
  140. data/lib/commonAPI/printing_zebra/ext/platform/iphone/PrintingZebra.xcodeproj/project.pbxproj +4 -4
  141. data/lib/commonAPI/printing_zebra/ext/platform/iphone/Rakefile +9 -62
  142. data/lib/commonAPI/screenorientation/ext/platform/android/src/com/rho/screenorientation/ScreenOrientationRhoListener.java +2 -1
  143. data/lib/commonAPI/screenorientation/ext/platform/android/src/com/rho/screenorientation/ScreenOrientationSingleton.java +19 -6
  144. data/lib/commonAPI/screenorientation/ext/platform/iphone/Rakefile +9 -63
  145. data/lib/commonAPI/screenorientation/ext/platform/iphone/Screenorientation.xcodeproj/project.pbxproj +4 -4
  146. data/lib/commonAPI/sensor/ext/platform/iphone/Rakefile +9 -62
  147. data/lib/commonAPI/sensor/ext/platform/iphone/Sensor.xcodeproj/project.pbxproj +4 -4
  148. data/lib/commonAPI/signature/ext/build.bat +8 -0
  149. data/lib/commonAPI/signature/ext/platform/iphone/Rakefile +9 -62
  150. data/lib/commonAPI/signature/ext/platform/iphone/signature.xcodeproj/project.pbxproj +4 -4
  151. data/lib/commonAPI/signature/ext/platform/qt/Signature.pro +26 -12
  152. data/lib/commonAPI/signature/ext.yml +0 -1
  153. data/lib/commonAPI/smartcradle/ext/build.bat +1 -1
  154. data/lib/commonAPI/websocket/ext/platform/iphone/Rakefile +9 -62
  155. data/lib/commonAPI/websocket/ext/platform/iphone/Websocket.xcodeproj/project.pbxproj +4 -4
  156. data/lib/extensions/Development/ext/build.bat +1 -1
  157. data/lib/extensions/Development/ext/platform/iphone/Development.xcodeproj/project.pbxproj +4 -4
  158. data/lib/extensions/Development/ext/platform/iphone/Rakefile +9 -62
  159. data/lib/extensions/applePush/ext/platform/iphone/ApplePush.xcodeproj/project.pbxproj +4 -4
  160. data/lib/extensions/applePush/ext/platform/iphone/Rakefile +9 -62
  161. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Audiocapture.xcodeproj/project.pbxproj +4 -4
  162. data/lib/extensions/audiocapture/ext/audiocapture/platform/iphone/Rakefile +9 -62
  163. data/lib/extensions/bigdecimal/ext/Rakefile +2 -2
  164. data/lib/extensions/bigdecimal/ext/bigdecimal.pro +9 -0
  165. data/lib/extensions/bigdecimal/ext/build +4 -0
  166. data/lib/extensions/bigdecimal/ext/build.bat +1 -1
  167. data/lib/extensions/bigdecimal/ext/iphone/Bigdecimal.xcodeproj/project.pbxproj +4 -4
  168. data/lib/extensions/bigdecimal/ext/iphone/Rakefile +9 -62
  169. data/lib/extensions/debugger/debugger.rb +331 -180
  170. data/lib/extensions/decrypt/ext/build.bat +1 -1
  171. data/lib/extensions/decrypt/ext/platform/iphone/Decrypt.xcodeproj/project.pbxproj +4 -4
  172. data/lib/extensions/decrypt/ext/platform/iphone/Rakefile +9 -62
  173. data/lib/extensions/decryptstub/ext/build.bat +1 -1
  174. data/lib/extensions/decryptstub/ext/platform/iphone/Decryptstub.xcodeproj/project.pbxproj +6 -4
  175. data/lib/extensions/decryptstub/ext/platform/iphone/Rakefile +9 -62
  176. data/lib/extensions/digest/ext/Rakefile +2 -2
  177. data/lib/extensions/digest/ext/build +4 -0
  178. data/lib/extensions/digest/ext/build.bat +1 -1
  179. data/lib/extensions/digest/ext/digest.pro +9 -0
  180. data/lib/extensions/digest/ext/iphone/Digest.xcodeproj/project.pbxproj +4 -4
  181. data/lib/extensions/digest/ext/iphone/Rakefile +9 -62
  182. data/lib/extensions/digest-md5/ext/Rakefile +2 -2
  183. data/lib/extensions/digest-md5/ext/build +4 -0
  184. data/lib/extensions/digest-md5/ext/build.bat +1 -1
  185. data/lib/extensions/digest-md5/ext/digest-md5.pro +9 -0
  186. data/lib/extensions/digest-md5/ext/iphone/Dmd5.xcodeproj/project.pbxproj +4 -4
  187. data/lib/extensions/digest-md5/ext/iphone/Rakefile +9 -62
  188. data/lib/extensions/digest-sha1/ext/Rakefile +2 -2
  189. data/lib/extensions/digest-sha1/ext/build +4 -0
  190. data/lib/extensions/digest-sha1/ext/build.bat +1 -1
  191. data/lib/extensions/digest-sha1/ext/digest-sha1.pro +9 -0
  192. data/lib/extensions/digest-sha1/ext/iphone/Dsha1.xcodeproj/project.pbxproj +4 -4
  193. data/lib/extensions/digest-sha1/ext/iphone/Rakefile +9 -62
  194. data/lib/extensions/digest-sha2/ext/Rakefile +2 -2
  195. data/lib/extensions/digest-sha2/ext/build +4 -0
  196. data/lib/extensions/digest-sha2/ext/build.bat +1 -1
  197. data/lib/extensions/digest-sha2/ext/digest-sha2.pro +9 -0
  198. data/lib/extensions/digest-sha2/ext/iphone/Dsha2.xcodeproj/project.pbxproj +4 -4
  199. data/lib/extensions/digest-sha2/ext/iphone/Rakefile +9 -62
  200. data/lib/extensions/esri/ext/esri/platform/iphone/ESRI.xcodeproj/project.pbxproj +4 -4
  201. data/lib/extensions/esri/ext/esri/platform/iphone/Rakefile +9 -65
  202. data/lib/extensions/fcm-push/ext/iphone/Podfile +11 -0
  203. data/lib/extensions/fcm-push/ext/iphone/Rakefile +13 -66
  204. data/lib/extensions/fcm-push/ext/iphone/fcm-push.xcodeproj/project.pbxproj +99 -48
  205. data/lib/extensions/fcm-push/ext/iphone/impl/PushNotificationsReceiver.h +3 -1
  206. data/lib/extensions/fcm-push/ext/iphone/impl/PushNotificationsReceiver.mm +11 -4
  207. data/lib/extensions/fcm-push/ext/iphone/resources.txt +1 -0
  208. data/lib/extensions/fcm-push/ext.yml +5 -1
  209. data/lib/extensions/fcntl/ext/Rakefile +2 -2
  210. data/lib/extensions/fcntl/ext/build +4 -0
  211. data/lib/extensions/fcntl/ext/build.bat +1 -1
  212. data/lib/extensions/fcntl/ext/fcntl.pro +9 -0
  213. data/lib/extensions/fcntl/ext/iphone/Fcntl.xcodeproj/project.pbxproj +4 -4
  214. data/lib/extensions/fcntl/ext/iphone/Rakefile +9 -62
  215. data/lib/extensions/keyboard/ext/build.bat +1 -1
  216. data/lib/extensions/keyboard/ext/platform/iphone/Keyboard.xcodeproj/project.pbxproj +4 -4
  217. data/lib/extensions/keyboard/ext/platform/iphone/Rakefile +9 -62
  218. data/lib/extensions/openssl/ext/Rakefile +2 -2
  219. data/lib/extensions/openssl/ext/build +4 -0
  220. data/lib/extensions/openssl/ext/build.bat +1 -1
  221. data/lib/extensions/openssl/ext/iphone/Rakefile +9 -62
  222. data/lib/extensions/openssl/ext/iphone/openssl.xcodeproj/project.pbxproj +4 -4
  223. data/lib/extensions/openssl/ext/linux/extconf.h +65 -0
  224. data/lib/extensions/openssl/ext/openssl.pro +10 -0
  225. data/lib/extensions/openssl/ext/openssl_missing.c +4 -2
  226. data/lib/extensions/openssl/ext/ossl.h +3 -0
  227. data/lib/extensions/openssl/ext/ossl_x509cert.c +1 -1
  228. data/lib/extensions/openssl.so/ext/Rakefile +1 -1
  229. data/lib/extensions/openssl.so/ext/android/aarch64/libopenssl.so.a +0 -0
  230. data/lib/extensions/openssl.so/ext/android/armeabi/libopenssl.so.a +0 -0
  231. data/lib/extensions/openssl.so/ext/android/x86/libopenssl.so.a +0 -0
  232. data/lib/extensions/openssl.so/ext/build +4 -0
  233. data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/libcrypto.a +0 -0
  234. data/lib/extensions/{fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/FirebaseAnalytics → openssl.so/ext/iphone/OpenSSl.SDK/libcrypto_sim.a} +0 -0
  235. data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/libssl.a +0 -0
  236. data/lib/extensions/openssl.so/ext/iphone/OpenSSl.SDK/libssl_sim.a +0 -0
  237. data/lib/extensions/openssl.so/ext/iphone/Rakefile +30 -54
  238. data/lib/extensions/openssl.so/ext/iphone/Release-iphoneos/libopenssl.so.a +0 -0
  239. data/lib/extensions/openssl.so/ext/iphone/Release-iphonesimulator/libopenssl.so.a +0 -0
  240. data/lib/extensions/openssl.so/ext/iphone/openssl.xcodeproj/project.pbxproj +116 -10
  241. data/lib/extensions/openssl.so/ext/sources/include/openssl/__DECC_INCLUDE_EPILOGUE.H +9 -3
  242. data/lib/extensions/openssl.so/ext/sources/include/openssl/__DECC_INCLUDE_PROLOGUE.H +10 -4
  243. data/lib/extensions/openssl.so/ext/sources/include/openssl/asn1.h +13 -226
  244. data/lib/extensions/openssl.so/ext/sources/include/openssl/asn1err.h +256 -0
  245. data/lib/extensions/openssl.so/ext/sources/include/openssl/asn1t.h +24 -8
  246. data/lib/extensions/openssl.so/ext/sources/include/openssl/async.h +2 -24
  247. data/lib/extensions/openssl.so/ext/sources/include/openssl/asyncerr.h +42 -0
  248. data/lib/extensions/openssl.so/ext/sources/include/openssl/bio.h +89 -139
  249. data/lib/extensions/openssl.so/ext/sources/include/openssl/bioerr.h +124 -0
  250. data/lib/extensions/openssl.so/ext/sources/include/openssl/bn.h +75 -111
  251. data/lib/extensions/openssl.so/ext/sources/include/openssl/bnerr.h +100 -0
  252. data/lib/extensions/openssl.so/ext/sources/include/openssl/buffer.h +2 -17
  253. data/lib/extensions/openssl.so/ext/sources/include/openssl/buffererr.h +34 -0
  254. data/lib/extensions/openssl.so/ext/sources/include/openssl/cms.h +6 -179
  255. data/lib/extensions/openssl.so/ext/sources/include/openssl/cmserr.h +202 -0
  256. data/lib/extensions/openssl.so/ext/sources/include/openssl/comp.h +2 -21
  257. data/lib/extensions/openssl.so/ext/sources/include/openssl/comperr.h +44 -0
  258. data/lib/extensions/openssl.so/ext/sources/include/openssl/conf.h +2 -51
  259. data/lib/extensions/openssl.so/ext/sources/include/openssl/conferr.h +76 -0
  260. data/lib/extensions/openssl.so/ext/sources/include/openssl/crypto.h +27 -49
  261. data/lib/extensions/openssl.so/ext/sources/include/openssl/cryptoerr.h +57 -0
  262. data/lib/extensions/openssl.so/ext/sources/include/openssl/ct.h +2 -61
  263. data/lib/extensions/openssl.so/ext/sources/include/openssl/cterr.h +80 -0
  264. data/lib/extensions/openssl.so/ext/sources/include/openssl/dh.h +33 -54
  265. data/lib/extensions/openssl.so/ext/sources/include/openssl/dherr.h +88 -0
  266. data/lib/extensions/openssl.so/ext/sources/include/openssl/dsa.h +21 -60
  267. data/lib/extensions/openssl.so/ext/sources/include/openssl/dsaerr.h +72 -0
  268. data/lib/extensions/openssl.so/ext/sources/include/openssl/dtls1.h +7 -8
  269. data/lib/extensions/openssl.so/ext/sources/include/openssl/e_os2.h +21 -19
  270. data/lib/extensions/openssl.so/ext/sources/include/openssl/ec.h +187 -284
  271. data/lib/extensions/openssl.so/ext/sources/include/openssl/ecerr.h +275 -0
  272. data/lib/extensions/openssl.so/ext/sources/include/openssl/engine.h +5 -94
  273. data/lib/extensions/openssl.so/ext/sources/include/openssl/engineerr.h +111 -0
  274. data/lib/extensions/openssl.so/ext/sources/include/openssl/err.h +19 -5
  275. data/lib/extensions/openssl.so/ext/sources/include/openssl/evp.h +250 -180
  276. data/lib/extensions/openssl.so/ext/sources/include/openssl/evperr.h +205 -0
  277. data/lib/extensions/openssl.so/ext/sources/include/openssl/hmac.h +4 -2
  278. data/lib/extensions/openssl.so/ext/sources/include/openssl/kdf.h +51 -29
  279. data/lib/extensions/openssl.so/ext/sources/include/openssl/kdferr.h +55 -0
  280. data/lib/extensions/openssl.so/ext/sources/include/openssl/lhash.h +43 -19
  281. data/lib/extensions/openssl.so/ext/sources/include/openssl/modes.h +11 -6
  282. data/lib/extensions/openssl.so/ext/sources/include/openssl/obj_mac.h +632 -11
  283. data/lib/extensions/openssl.so/ext/sources/include/openssl/objects.h +3 -925
  284. data/lib/extensions/openssl.so/ext/sources/include/openssl/objectserr.h +42 -0
  285. data/lib/extensions/openssl.so/ext/sources/include/openssl/ocsp.h +21 -65
  286. data/lib/extensions/openssl.so/ext/sources/include/openssl/ocsperr.h +78 -0
  287. data/lib/extensions/openssl.so/ext/sources/include/openssl/opensslconf.h +36 -10
  288. data/lib/extensions/openssl.so/ext/sources/include/openssl/opensslv.h +3 -7
  289. data/lib/extensions/openssl.so/ext/sources/include/openssl/ossl_typ.h +8 -1
  290. data/lib/extensions/openssl.so/ext/sources/include/openssl/pem.h +13 -136
  291. data/lib/extensions/openssl.so/ext/sources/include/openssl/pem2.h +4 -11
  292. data/lib/extensions/openssl.so/ext/sources/include/openssl/pemerr.h +103 -0
  293. data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs12.h +1 -60
  294. data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs12err.h +81 -0
  295. data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs7.h +1 -86
  296. data/lib/extensions/openssl.so/ext/sources/include/openssl/pkcs7err.h +103 -0
  297. data/lib/extensions/openssl.so/ext/sources/include/openssl/rand.h +22 -34
  298. data/lib/extensions/openssl.so/ext/sources/include/openssl/rand_drbg.h +130 -0
  299. data/lib/extensions/openssl.so/ext/sources/include/openssl/randerr.h +94 -0
  300. data/lib/extensions/openssl.so/ext/sources/include/openssl/rsa.h +96 -173
  301. data/lib/extensions/openssl.so/ext/sources/include/openssl/rsaerr.h +167 -0
  302. data/lib/extensions/openssl.so/ext/sources/include/openssl/safestack.h +66 -23
  303. data/lib/extensions/openssl.so/ext/sources/include/openssl/srp.h +5 -1
  304. data/lib/extensions/openssl.so/ext/sources/include/openssl/ssl.h +706 -828
  305. data/lib/extensions/openssl.so/ext/sources/include/openssl/ssl3.h +49 -20
  306. data/lib/extensions/openssl.so/ext/sources/include/openssl/sslerr.h +773 -0
  307. data/lib/extensions/openssl.so/ext/sources/include/openssl/stack.h +8 -3
  308. data/lib/extensions/openssl.so/ext/sources/include/openssl/store.h +266 -1
  309. data/lib/extensions/openssl.so/ext/sources/include/openssl/storeerr.h +91 -0
  310. data/lib/extensions/openssl.so/ext/sources/include/openssl/symhacks.h +1 -16
  311. data/lib/extensions/openssl.so/ext/sources/include/openssl/tls1.h +350 -85
  312. data/lib/extensions/openssl.so/ext/sources/include/openssl/ts.h +25 -109
  313. data/lib/extensions/openssl.so/ext/sources/include/openssl/tserr.h +132 -0
  314. data/lib/extensions/openssl.so/ext/sources/include/openssl/txt_db.h +2 -2
  315. data/lib/extensions/openssl.so/ext/sources/include/openssl/ui.h +56 -66
  316. data/lib/extensions/openssl.so/ext/sources/include/openssl/uierr.h +65 -0
  317. data/lib/extensions/openssl.so/ext/sources/include/openssl/x509.h +36 -112
  318. data/lib/extensions/openssl.so/ext/sources/include/openssl/x509_vfy.h +85 -1
  319. data/lib/extensions/openssl.so/ext/sources/include/openssl/x509err.h +130 -0
  320. data/lib/extensions/openssl.so/ext/sources/include/openssl/x509v3.h +72 -141
  321. data/lib/extensions/openssl.so/ext/sources/include/openssl/x509v3err.h +162 -0
  322. data/lib/extensions/openssl.so.src/ext/build +4 -0
  323. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rakefile +9 -62
  324. data/lib/extensions/rawsensors/ext/rawsensors/platform/iphone/Rawsensors.xcodeproj/project.pbxproj +4 -4
  325. data/lib/extensions/serialport/ext/build.bat +1 -1
  326. data/lib/extensions/serialport/ext/serialport.pro +11 -11
  327. data/lib/extensions/videocapture/ext/videocapture/platform/iphone/Rakefile +9 -62
  328. data/lib/extensions/videocapture/ext/videocapture/platform/iphone/Videocapture.xcodeproj/project.pbxproj +4 -4
  329. data/lib/extensions/zlib/ext/Rakefile +2 -2
  330. data/lib/extensions/zlib/ext/build +4 -0
  331. data/lib/extensions/zlib/ext/build.bat +1 -1
  332. data/lib/extensions/zlib/ext/gzlib.c +1 -1
  333. data/lib/extensions/zlib/ext/gzread.c +2 -2
  334. data/lib/extensions/zlib/ext/gzwrite.c +3 -3
  335. data/lib/extensions/zlib/ext/iphone/Rakefile +9 -62
  336. data/lib/extensions/zlib/ext/iphone/zlib.xcodeproj/project.pbxproj +4 -4
  337. data/lib/extensions/zlib/ext/zlib.pro +24 -16
  338. data/lib/framework/autocomplete/Rho.rb +6 -2
  339. data/lib/framework/autocomplete/Rhodes.rb +1 -1
  340. data/lib/framework/rho/rho.rb +9 -0
  341. data/lib/framework/rho/rhoapplication.rb +4 -0
  342. data/lib/framework/rhodes.rb +2 -2
  343. data/lib/framework/version.rb +1 -1
  344. data/lib/rhodes.rb +2 -2
  345. data/platform/android/Rhodes/AndroidManifest.xml.erb +3 -2
  346. data/platform/android/Rhodes/jni/include/rhodes/RhoClassFactory.h +4 -3
  347. data/platform/android/Rhodes/jni/include/rhodes/sslimpl.h +94 -6
  348. data/platform/android/Rhodes/jni/src/JNIRhoRuby.cpp +1 -1
  349. data/platform/android/Rhodes/jni/src/JNIRhoRubyCppWrapper.cpp +104 -2
  350. data/platform/android/Rhodes/jni/src/RhoClassFactory.cpp +29 -1
  351. data/platform/android/Rhodes/jni/src/fileapi.cpp +2 -1
  352. data/platform/android/Rhodes/jni/src/rhodes.cpp +1 -0
  353. data/platform/android/Rhodes/jni/src/rhodesapp.cpp +18 -0
  354. data/platform/android/Rhodes/jni/src/sslimpl.cpp +317 -3
  355. data/platform/android/Rhodes/src/com/rhomobile/rhodes/BaseActivity.java +15 -1
  356. data/platform/android/Rhodes/src/com/rhomobile/rhodes/LocalFileProvider.java +17 -0
  357. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhoRubySingleton.java +33 -0
  358. data/platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java +241 -165
  359. data/platform/android/Rhodes/src/com/rhomobile/rhodes/geolocation/GeoLocationImpl.java +7 -1
  360. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality.java +7 -1
  361. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality01.java +13 -0
  362. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality11.java +9 -0
  363. data/platform/android/Rhodes/src/com/rhomobile/rhodes/osfunctionality/AndroidFunctionality26.java +61 -13
  364. data/platform/android/Rhodes/src/com/rhomobile/rhodes/socket/RhoSocketImpl.java +10 -2
  365. data/platform/android/Rhodes/src/com/rhomobile/rhodes/socket/SSLImpl.java +268 -16
  366. data/platform/android/Rhodes/src/com/rhomobile/rhodes/uri/LocalFileHandler.java +21 -18
  367. data/platform/android/Rhodes/src/com/rhomobile/rhodes/webview/RhoWebViewClient.java +47 -1
  368. data/platform/android/build/CMakeLists.txt.erb +3 -33
  369. data/platform/android/build/CMakeListsExts.txt.erb +26 -0
  370. data/platform/android/build/aab_builder.rb +234 -0
  371. data/platform/android/build/android.rake +512 -381
  372. data/platform/android/build/android_studio_project_generator.rb +82 -0
  373. data/platform/android/build/android_tools.rb +111 -26
  374. data/platform/android/build/androidcommon.rb +4 -23
  375. data/platform/android/build/apk_builder.rb +42 -0
  376. data/platform/android/build/libcurl_build.files +1 -1
  377. data/platform/android/build/librhodes_build.files +1 -1
  378. data/platform/android/build/maven_deps_extractor.rb +39 -5
  379. data/platform/android/build/ndkwrapper.rb +9 -11
  380. data/platform/android/proguard/proguard-base-rules.pro +27 -4
  381. data/platform/iphone/Classes/AppManager/AppManager.m +174 -159
  382. data/platform/iphone/Classes/Camera/PickImageDelegate.m +63 -0
  383. data/platform/iphone/Classes/RhoAlert.m +2 -2
  384. data/platform/iphone/Classes/RhoUIWebView.h +1 -1
  385. data/platform/iphone/Classes/RhoUIWebView.m +1 -1
  386. data/platform/iphone/Classes/RhoWKWebView.h +6 -3
  387. data/platform/iphone/Classes/RhoWKWebView.mm +86 -23
  388. data/platform/iphone/Classes/RhoWebView.h +6 -6
  389. data/platform/iphone/Classes/RhoWebViewFabrique.h +1 -1
  390. data/platform/iphone/Classes/RhoWebViewFabrique.m +4 -4
  391. data/platform/iphone/Classes/Rhodes.m +60 -12
  392. data/platform/iphone/Classes/SimpleMainView.m +2 -2
  393. data/platform/iphone/Classes/URLProtocol/CRhoURLProtocol.m +3 -3
  394. data/platform/iphone/Classes/URLProtocol/CRhoWKURLProtocol.m +1 -1
  395. data/platform/iphone/Classes/rho/net/IPhoneNetRequest.mm +1 -1
  396. data/platform/iphone/Default-568h@2x.png +0 -0
  397. data/platform/iphone/Default-667h@2x.png +0 -0
  398. data/platform/iphone/Default-736h@3x.png +0 -0
  399. data/platform/iphone/Default-812h@3x.png +0 -0
  400. data/platform/iphone/Default-896h@2x.png +0 -0
  401. data/platform/iphone/Default-896h@3x.png +0 -0
  402. data/platform/iphone/Default-Landscape-736h@3x.png +0 -0
  403. data/platform/iphone/Default-Landscape-812h@3x.png +0 -0
  404. data/platform/iphone/Default-Landscape-896h@2x.png +0 -0
  405. data/platform/iphone/Default-Landscape-896h@3x.png +0 -0
  406. data/platform/iphone/Default-Landscape.png +0 -0
  407. data/platform/iphone/Default-Landscape@2x.png +0 -0
  408. data/platform/iphone/Default-LandscapeLeft.png +0 -0
  409. data/platform/iphone/Default-LandscapeLeft@2x.png +0 -0
  410. data/platform/iphone/Default-LandscapeRight.png +0 -0
  411. data/platform/iphone/Default-LandscapeRight@2x.png +0 -0
  412. data/platform/iphone/Default-Portrait.png +0 -0
  413. data/platform/iphone/Default-Portrait@2x.png +0 -0
  414. data/platform/iphone/Default-PortraitUpsideDown.png +0 -0
  415. data/platform/iphone/Default-PortraitUpsideDown@2x.png +0 -0
  416. data/platform/iphone/Default.png +0 -0
  417. data/platform/iphone/Default@2x.png +0 -0
  418. data/platform/iphone/Framework/RhoApplication/RhoApplication.xcodeproj/project.pbxproj +9 -7
  419. data/platform/iphone/Framework/Rhodes/Rhodes.xcodeproj/project.pbxproj +14 -6
  420. data/platform/iphone/RhoAppBaseLib/RhoAppBaseLib.xcodeproj/project.pbxproj +7 -7
  421. data/platform/iphone/RhoLib/RhoLib.xcodeproj/project.pbxproj +4 -4
  422. data/platform/iphone/Rhodes.xcodeproj/project.pbxproj +4 -4
  423. data/platform/iphone/curl/curl.xcodeproj/project.pbxproj +11 -7
  424. data/platform/iphone/rbuild/buildextension.rb +115 -0
  425. data/platform/iphone/rbuild/iphone.rake +401 -115
  426. data/platform/iphone/rhoextlib/rhoextlib.xcodeproj/project.pbxproj +5 -4
  427. data/platform/iphone/rhorubylib/rhorubylib.xcodeproj/project.pbxproj +4 -4
  428. data/platform/iphone/rhorunner.xcodeproj/project.pbxproj +3 -3
  429. data/platform/iphone/rhosynclib/rhosynclib.xcodeproj/project.pbxproj +8 -7
  430. data/platform/linux/tasks/control.erb +8 -0
  431. data/platform/linux/tasks/getting sudo instruction.txt +8 -0
  432. data/platform/linux/tasks/install_dev_depes_alt.sh +9 -0
  433. data/platform/linux/tasks/install_dev_depes_astra.sh +7 -0
  434. data/platform/linux/tasks/install_dev_depes_redos.sh +10 -0
  435. data/platform/linux/tasks/install_dev_depes_rosa_r7.sh +15 -0
  436. data/platform/linux/tasks/install_dev_depes_rosa_x4.sh +21 -0
  437. data/platform/linux/tasks/install_dev_depes_ubuntu.sh +18 -0
  438. data/platform/linux/tasks/installation.txt +2 -0
  439. data/platform/linux/tasks/linter_exceptions.erb +2 -0
  440. data/platform/linux/tasks/linux.rake +498 -61
  441. data/platform/linux/tasks/rpm_spec.erb +33 -0
  442. data/platform/osx/bin/RhoSimulator/RhoSimulator.app.zip +0 -0
  443. data/platform/sailfish/build/coreapi.pro.erb +11 -12
  444. data/platform/sailfish/build/curl.pro.erb +12 -14
  445. data/platform/sailfish/build/harbour-SailfishRhodes.pro.erb +2 -2
  446. data/platform/sailfish/build/rho_build.cmd.erb +1 -0
  447. data/platform/sailfish/build/rho_clean.cmd.erb +1 -0
  448. data/platform/sailfish/build/rho_deploy.cmd.erb +1 -0
  449. data/platform/sailfish/build/rho_rpm.cmd.erb +1 -0
  450. data/platform/sailfish/build/rho_rpmvalidation.cmd.erb +1 -0
  451. data/platform/sailfish/build/rhodes.pro.erb +43 -38
  452. data/platform/sailfish/build/rholib.pro.erb +21 -57
  453. data/platform/sailfish/build/rubylib.pro.erb +25 -30
  454. data/platform/sailfish/build/sailfish.rake +56 -9
  455. data/platform/sailfish/build/sqlite3.pro.erb +9 -9
  456. data/platform/sailfish/build/syncengine.pro.erb +9 -16
  457. data/platform/sailfish/build/unzip.pro.erb +66 -0
  458. data/platform/sailfish/build/zlib.pro.erb +72 -0
  459. data/platform/shared/api_generator/Api.h +5 -0
  460. data/platform/shared/common/CMakeLists.txt.erb +2 -52
  461. data/platform/shared/common/IRhoClassFactory.h +54 -2
  462. data/platform/shared/common/RhoDefs.h +0 -1
  463. data/platform/shared/common/RhoFile.h +2 -0
  464. data/platform/shared/common/RhoMutexLock.h +1 -1
  465. data/platform/shared/common/RhodesApp.cpp +50 -7
  466. data/platform/shared/common/RhodesApp.h +5 -1
  467. data/platform/shared/common/iphone/RhoClassfactory.h +1 -1
  468. data/platform/shared/curl/CMakeLists.txt.erb +1 -94
  469. data/platform/shared/curl/lib/asyn-thread.c +2 -1
  470. data/platform/shared/curl/lib/curl_addrinfo.h +39 -0
  471. data/platform/shared/curl/lib/curl_config.h +9 -10
  472. data/platform/shared/curl/lib/curl_setup.h +4 -0
  473. data/platform/shared/curl/lib/multi.c +0 -1
  474. data/platform/shared/curl/lib/transfer.c +21 -2
  475. data/platform/shared/curl/lib/vtls/vtls.h +3 -0
  476. data/platform/shared/db/CMakeLists.txt.erb +1 -6
  477. data/platform/shared/db/DBAdapter.cpp +10 -4
  478. data/platform/shared/json/RJSONTokener.c +1 -8
  479. data/platform/shared/json/json_object.c +2 -2
  480. data/platform/shared/json/json_tokener.c +1 -1
  481. data/platform/shared/json.new/CMakeLists.txt.erb +1 -15
  482. data/platform/shared/json.new/RJSONTokener.c +0 -7
  483. data/platform/shared/json.new/json_object.c +5 -5
  484. data/platform/shared/json.new/json_pointer.c +2 -2
  485. data/platform/shared/json.new/json_tokener.c +1 -1
  486. data/platform/shared/logging/CMakeLists.txt.erb +1 -5
  487. data/platform/shared/logging/RhoLogConf.cpp +82 -3
  488. data/platform/shared/net/CURLNetRequest.cpp +6 -7
  489. data/platform/shared/net/HttpServer.cpp +234 -4
  490. data/platform/shared/net/HttpServer.h +22 -2
  491. data/platform/shared/net/INetRequest.cpp +2 -2
  492. data/platform/shared/net/INetRequest.h +6 -0
  493. data/platform/shared/net/linux/SSLImpl.cpp +2 -1
  494. data/platform/shared/net/ssl.h +26 -0
  495. data/platform/shared/qt/RhoSimulator.pro +24 -12
  496. data/platform/shared/qt/RhoSimulator_dev.pro +30 -15
  497. data/platform/shared/qt/curl/curl.pro +27 -16
  498. data/platform/shared/qt/rhodes/iexecutable.h +1 -1
  499. data/platform/shared/qt/rhodes/impl/RhoClassFactoryImpl.h +1 -1
  500. data/platform/shared/qt/rhodes/impl/RhoThreadImpl.cpp +1 -1
  501. data/platform/shared/qt/rhodes/newVersion/QtMainWindow.cpp +25 -10
  502. data/platform/shared/qt/rhodes/newVersion/QtMainWindow.h +1 -1
  503. data/platform/shared/qt/rhodes/newVersion/{qtwebenginepage.cpp → QtWebEnginePage.cpp} +1 -1
  504. data/platform/shared/qt/rhodes/newVersion/{qtwebenginepage.h → QtWebEnginePage.h} +0 -0
  505. data/platform/shared/qt/rhodes/newVersion/{qtwebengineview.cpp → QtWebEngineView.cpp} +1 -1
  506. data/platform/shared/qt/rhodes/newVersion/{qtwebengineview.h → QtWebEngineView.h} +0 -0
  507. data/platform/shared/qt/rhodes/newVersion/WebUrlRequestInterceptor.cpp +2 -2
  508. data/platform/shared/qt/rhodes/newVersion/main.cpp +5 -6
  509. data/platform/shared/qt/rhodes/resources/rho.png +0 -0
  510. data/platform/shared/qt/rhodes/rhodes.pro +88 -72
  511. data/platform/shared/qt/rholib/rholib.pro +33 -25
  512. data/platform/shared/qt/rhoruby_win32_build.bat +1 -1
  513. data/platform/shared/qt/rhoruby_win32_build_debug.bat +1 -1
  514. data/platform/shared/qt/rhosimulator_win32_build.bat +1 -1
  515. data/platform/shared/qt/rhosimulator_win32_build_debug.bat +1 -1
  516. data/platform/shared/qt/rubylib/rubylib.pro +37 -34
  517. data/platform/shared/qt/sailfish/SailfishRhodes.pro +1 -1
  518. data/platform/shared/qt/sailfish/icons/172x172/harbour-sailfishrhodes.png +0 -0
  519. data/platform/shared/qt/sailfish/qml/pages/BarcodePage.qml +18 -48
  520. data/platform/shared/qt/sqlite3/sqlite3.pro +16 -10
  521. data/platform/shared/qt/syncengine/syncengine.pro +18 -15
  522. data/platform/shared/qt/unzip/unzip.pro +133 -0
  523. data/platform/shared/rhoruby/impl/RhoRubyImpl.cpp +24 -19
  524. data/platform/shared/rhoruby/impl/RhoRubyImpl.h +5 -0
  525. data/platform/shared/ruby/CMakeLists.txt.erb +1 -129
  526. data/platform/shared/ruby/dln_find.c +1 -1
  527. data/platform/shared/ruby/error.c +1 -1
  528. data/platform/shared/ruby/ext/rho/rhoruby.c +35 -14
  529. data/platform/shared/ruby/ext/rho/rhoruby.h +1 -0
  530. data/platform/shared/ruby/ext/socket/addrinfo.h +2 -1
  531. data/platform/shared/ruby/ext/socket/ipsocket.c +3 -3
  532. data/platform/shared/ruby/file.c +3 -3
  533. data/platform/shared/ruby/io.c +46 -46
  534. data/platform/shared/ruby/linux/ruby/config.h +94 -34
  535. data/platform/shared/ruby/linux/ruby/config_linux.h +403 -0
  536. data/platform/shared/ruby/missing/langinfo.c +1 -1
  537. data/platform/shared/ruby/missing/memmove.c +4 -0
  538. data/platform/shared/ruby/posixnames.h +2 -8
  539. data/platform/shared/ruby/process.c +7 -7
  540. data/platform/shared/ruby/ruby.c +10 -10
  541. data/platform/shared/ruby/sailfish/ruby/config.h +1 -1
  542. data/platform/shared/ruby/thread_pthread.c +1 -1
  543. data/platform/shared/ruby/time.c +2 -2
  544. data/platform/shared/ruby/uwp/win32/win32.c +12 -12
  545. data/platform/shared/ruby/win32/ruby/config.h +1 -1
  546. data/platform/shared/sqlite/CMakeLists.txt.erb +1 -1
  547. data/platform/shared/sqlite/sqlite3.c +23 -0
  548. data/platform/shared/sync/CMakeLists.txt.erb +1 -1
  549. data/platform/shared/unzip/gzlib.cpp +1 -1
  550. data/platform/shared/unzip/gzwrite.cpp +3 -3
  551. data/platform/shared/unzip/unzip.cpp +3 -10
  552. data/platform/shared/unzip/zip.cpp +3 -8
  553. data/platform/uwp/rhodes/App.xaml.cs +9 -9
  554. data/platform/uwp/rhoruntime/common/RhoClassFactory.h +1 -1
  555. data/platform/win32/RhoSimulator/Qt5Core.dll +0 -0
  556. data/platform/win32/RhoSimulator/Qt5Gui.dll +0 -0
  557. data/platform/win32/RhoSimulator/Qt5Multimedia.dll +0 -0
  558. data/platform/win32/RhoSimulator/Qt5Network.dll +0 -0
  559. data/platform/win32/RhoSimulator/Qt5Positioning.dll +0 -0
  560. data/platform/win32/RhoSimulator/Qt5PrintSupport.dll +0 -0
  561. data/platform/win32/RhoSimulator/Qt5Qml.dll +0 -0
  562. data/platform/win32/RhoSimulator/Qt5Quick.dll +0 -0
  563. data/platform/win32/RhoSimulator/Qt5QuickWidgets.dll +0 -0
  564. data/platform/win32/RhoSimulator/Qt5SerialPort.dll +0 -0
  565. data/platform/win32/RhoSimulator/Qt5Svg.dll +0 -0
  566. data/platform/win32/RhoSimulator/Qt5WebChannel.dll +0 -0
  567. data/platform/win32/RhoSimulator/Qt5WebEngine.dll +0 -0
  568. data/platform/win32/RhoSimulator/Qt5WebEngineCore.dll +0 -0
  569. data/platform/win32/RhoSimulator/Qt5WebEngineWidgets.dll +0 -0
  570. data/platform/win32/RhoSimulator/Qt5Widgets.dll +0 -0
  571. data/platform/win32/RhoSimulator/QtWebEngineProcess.exe +0 -0
  572. data/platform/win32/RhoSimulator/RhoSimulator.exe +0 -0
  573. data/platform/win32/RhoSimulator/audio/qtaudio_wasapi.dll +0 -0
  574. data/platform/win32/RhoSimulator/audio/qtaudio_windows.dll +0 -0
  575. data/platform/win32/RhoSimulator/bearer/qgenericbearer.dll +0 -0
  576. data/platform/win32/RhoSimulator/concrt140.dll +0 -0
  577. data/platform/win32/RhoSimulator/iconengines/qsvgicon.dll +0 -0
  578. data/platform/win32/RhoSimulator/imageformats/qgif.dll +0 -0
  579. data/platform/win32/RhoSimulator/imageformats/qicns.dll +0 -0
  580. data/platform/win32/RhoSimulator/imageformats/qico.dll +0 -0
  581. data/platform/win32/RhoSimulator/imageformats/qjpeg.dll +0 -0
  582. data/platform/win32/RhoSimulator/imageformats/qsvg.dll +0 -0
  583. data/platform/win32/RhoSimulator/imageformats/qtga.dll +0 -0
  584. data/platform/win32/RhoSimulator/imageformats/qtiff.dll +0 -0
  585. data/platform/win32/RhoSimulator/imageformats/qwbmp.dll +0 -0
  586. data/platform/win32/RhoSimulator/imageformats/qwebp.dll +0 -0
  587. data/platform/win32/RhoSimulator/libEGL.dll +0 -0
  588. data/platform/win32/RhoSimulator/libGLESV2.dll +0 -0
  589. data/platform/win32/RhoSimulator/mediaservice/dsengine.dll +0 -0
  590. data/platform/win32/RhoSimulator/mediaservice/qtmedia_audioengine.dll +0 -0
  591. data/platform/win32/RhoSimulator/mediaservice/wmfengine.dll +0 -0
  592. data/platform/win32/RhoSimulator/mfc140.dll +0 -0
  593. data/platform/win32/RhoSimulator/mfc140chs.dll +0 -0
  594. data/platform/win32/RhoSimulator/mfc140cht.dll +0 -0
  595. data/platform/win32/RhoSimulator/mfc140deu.dll +0 -0
  596. data/platform/win32/RhoSimulator/mfc140enu.dll +0 -0
  597. data/platform/win32/RhoSimulator/mfc140esn.dll +0 -0
  598. data/platform/win32/RhoSimulator/mfc140fra.dll +0 -0
  599. data/platform/win32/RhoSimulator/mfc140ita.dll +0 -0
  600. data/platform/win32/RhoSimulator/mfc140jpn.dll +0 -0
  601. data/platform/win32/RhoSimulator/mfc140kor.dll +0 -0
  602. data/platform/win32/RhoSimulator/mfc140rus.dll +0 -0
  603. data/platform/win32/RhoSimulator/mfc140u.dll +0 -0
  604. data/platform/win32/RhoSimulator/mfcm140.dll +0 -0
  605. data/platform/win32/RhoSimulator/mfcm140u.dll +0 -0
  606. data/platform/win32/RhoSimulator/msvcp140.dll +0 -0
  607. data/platform/win32/RhoSimulator/msvcp140_1.dll +0 -0
  608. data/platform/win32/RhoSimulator/msvcp140_2.dll +0 -0
  609. data/platform/win32/RhoSimulator/platforms/qwindows.dll +0 -0
  610. data/platform/win32/RhoSimulator/playlistformats/qtmultimedia_m3u.dll +0 -0
  611. data/platform/win32/RhoSimulator/position/qtposition_positionpoll.dll +0 -0
  612. data/platform/win32/RhoSimulator/position/qtposition_serialnmea.dll +0 -0
  613. data/platform/win32/RhoSimulator/position/qtposition_winrt.dll +0 -0
  614. data/platform/win32/RhoSimulator/printsupport/windowsprintersupport.dll +0 -0
  615. data/platform/win32/RhoSimulator/resources/icudtl.dat +0 -0
  616. data/platform/win32/RhoSimulator/resources/qtwebengine_devtools_resources.pak +0 -0
  617. data/platform/win32/RhoSimulator/resources/qtwebengine_resources.pak +0 -0
  618. data/platform/win32/RhoSimulator/resources/qtwebengine_resources_100p.pak +0 -0
  619. data/platform/win32/RhoSimulator/resources/qtwebengine_resources_200p.pak +0 -0
  620. data/platform/win32/RhoSimulator/styles/qwindowsvistastyle.dll +0 -0
  621. data/platform/win32/RhoSimulator/translations/qt_ca.qm +0 -0
  622. data/platform/win32/RhoSimulator/translations/qt_da.qm +0 -0
  623. data/platform/win32/RhoSimulator/translations/qt_de.qm +0 -0
  624. data/platform/win32/RhoSimulator/translations/qt_fi.qm +0 -0
  625. data/platform/win32/RhoSimulator/translations/qt_ru.qm +0 -0
  626. data/platform/win32/RhoSimulator/translations/qt_zh_TW.qm +0 -0
  627. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/am.pak +0 -0
  628. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ar.pak +0 -0
  629. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/bg.pak +0 -0
  630. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/bn.pak +0 -0
  631. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ca.pak +0 -0
  632. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/cs.pak +0 -0
  633. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/da.pak +0 -0
  634. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/de.pak +0 -0
  635. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/el.pak +0 -0
  636. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/en-GB.pak +0 -0
  637. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/en-US.pak +0 -0
  638. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/es-419.pak +0 -0
  639. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/es.pak +0 -0
  640. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/et.pak +0 -0
  641. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fa.pak +0 -0
  642. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fi.pak +0 -0
  643. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fil.pak +0 -0
  644. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/fr.pak +0 -0
  645. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/gu.pak +0 -0
  646. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/he.pak +0 -0
  647. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/hi.pak +0 -0
  648. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/hr.pak +0 -0
  649. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/hu.pak +0 -0
  650. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/id.pak +0 -0
  651. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/it.pak +0 -0
  652. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ja.pak +0 -0
  653. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/kn.pak +0 -0
  654. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ko.pak +0 -0
  655. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/lt.pak +0 -0
  656. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/lv.pak +0 -0
  657. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ml.pak +0 -0
  658. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/mr.pak +0 -0
  659. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ms.pak +0 -0
  660. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/nb.pak +0 -0
  661. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/nl.pak +0 -0
  662. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/pl.pak +0 -0
  663. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/pt-BR.pak +0 -0
  664. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/pt-PT.pak +0 -0
  665. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ro.pak +0 -0
  666. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ru.pak +0 -0
  667. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sk.pak +0 -0
  668. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sl.pak +0 -0
  669. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sr.pak +0 -0
  670. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sv.pak +0 -0
  671. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/sw.pak +0 -0
  672. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/ta.pak +0 -0
  673. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/te.pak +0 -0
  674. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/th.pak +0 -0
  675. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/tr.pak +0 -0
  676. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/uk.pak +0 -0
  677. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/vi.pak +0 -0
  678. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/zh-CN.pak +0 -0
  679. data/platform/win32/RhoSimulator/translations/qtwebengine_locales/zh-TW.pak +0 -0
  680. data/platform/win32/RhoSimulator/vcamp140.dll +0 -0
  681. data/platform/win32/RhoSimulator/vccorlib140.dll +0 -0
  682. data/platform/win32/RhoSimulator/vcomp140.dll +0 -0
  683. data/platform/win32/RhoSimulator/vcruntime140.dll +0 -0
  684. data/platform/win32/build/rhodes.nsi +184 -0
  685. data/platform/win32/build/win32.rake +876 -0
  686. data/platform/wm/build/wm.rake +12 -1067
  687. data/platform/wm/rhodes/rho/common/RhoClassFactory.h +2 -2
  688. data/platform/wm/syncengine/syncengine.vcproj +24 -16
  689. data/platform/wp8/rhoruntime/common/RhoClassFactory.h +1 -1
  690. data/rakefile.rb +169 -89
  691. data/res/build-tools/aapt2/linux/aapt2 +0 -0
  692. data/res/build-tools/aapt2/osx/aapt2 +0 -0
  693. data/res/build-tools/aapt2/windows/aapt2.exe +0 -0
  694. data/res/build-tools/bundletool.jar +0 -0
  695. data/res/build-tools/helpers/ext/android/build_common.rb +160 -0
  696. data/res/build-tools/iphonesim/build/Release/iphonesim_8 +6 -4
  697. data/res/generators/rhogen.rb +13 -3
  698. data/res/generators/templates/api/platform/iphone/generated/stub_impl/MontanaSetup.m +2 -2
  699. data/res/generators/templates/application/AndroidManifest.erb +4 -3
  700. data/res/generators/templates/application/Podfile.example +43 -0
  701. data/res/generators/templates/application/app/Settings/index.erb +52 -55
  702. data/res/generators/templates/application/app/Settings/javascript_index.html +51 -46
  703. data/res/generators/templates/application/app/Settings/javascript_login.html +24 -17
  704. data/res/generators/templates/application/app/Settings/login.erb +5 -12
  705. data/res/generators/templates/application/app/Settings/reset.erb +10 -14
  706. data/res/generators/templates/application/app/index.erb +26 -30
  707. data/res/generators/templates/application/app/javascript_index.html +36 -30
  708. data/res/generators/templates/application/app/javascript_index.js +13 -4
  709. data/res/generators/templates/application/app/layout.erb +18 -4
  710. data/res/generators/templates/application/app/loading.png +0 -0
  711. data/res/generators/templates/application/build.yml +22 -2
  712. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.css +3899 -0
  713. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.css.map +1 -0
  714. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.min.css +7 -0
  715. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-grid.min.css.map +1 -0
  716. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.css +327 -0
  717. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.css.map +1 -0
  718. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.min.css +8 -0
  719. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap-reboot.min.css.map +1 -0
  720. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.css +10224 -0
  721. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.css.map +1 -0
  722. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.min.css +7 -0
  723. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/css/bootstrap.min.css.map +1 -0
  724. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.js +7134 -0
  725. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.js.map +1 -0
  726. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.min.js +7 -0
  727. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.bundle.min.js.map +1 -0
  728. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.js +4521 -0
  729. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.js.map +1 -0
  730. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.min.js +7 -0
  731. data/res/generators/templates/application/public/libs/bootstrap-4.4.1-dist/js/bootstrap.min.js.map +1 -0
  732. data/res/generators/templates/application/public/libs/feather/js/feather.js +2413 -0
  733. data/res/generators/templates/application/public/libs/feather/js/feather.min.js +13 -0
  734. data/res/generators/templates/application/public/libs/feather/svg/activity.svg +1 -0
  735. data/res/generators/templates/application/public/libs/feather/svg/airplay.svg +1 -0
  736. data/res/generators/templates/application/public/libs/feather/svg/alert-circle.svg +1 -0
  737. data/res/generators/templates/application/public/libs/feather/svg/alert-octagon.svg +1 -0
  738. data/res/generators/templates/application/public/libs/feather/svg/alert-triangle.svg +1 -0
  739. data/res/generators/templates/application/public/libs/feather/svg/align-center.svg +1 -0
  740. data/res/generators/templates/application/public/libs/feather/svg/align-justify.svg +1 -0
  741. data/res/generators/templates/application/public/libs/feather/svg/align-left.svg +1 -0
  742. data/res/generators/templates/application/public/libs/feather/svg/align-right.svg +1 -0
  743. data/res/generators/templates/application/public/libs/feather/svg/anchor.svg +1 -0
  744. data/res/generators/templates/application/public/libs/feather/svg/aperture.svg +1 -0
  745. data/res/generators/templates/application/public/libs/feather/svg/archive.svg +1 -0
  746. data/res/generators/templates/application/public/libs/feather/svg/arrow-down-circle.svg +1 -0
  747. data/res/generators/templates/application/public/libs/feather/svg/arrow-down-left.svg +1 -0
  748. data/res/generators/templates/application/public/libs/feather/svg/arrow-down-right.svg +1 -0
  749. data/res/generators/templates/application/public/libs/feather/svg/arrow-down.svg +1 -0
  750. data/res/generators/templates/application/public/libs/feather/svg/arrow-left-circle.svg +1 -0
  751. data/res/generators/templates/application/public/libs/feather/svg/arrow-left.svg +1 -0
  752. data/res/generators/templates/application/public/libs/feather/svg/arrow-right-circle.svg +1 -0
  753. data/res/generators/templates/application/public/libs/feather/svg/arrow-right.svg +1 -0
  754. data/res/generators/templates/application/public/libs/feather/svg/arrow-up-circle.svg +1 -0
  755. data/res/generators/templates/application/public/libs/feather/svg/arrow-up-left.svg +1 -0
  756. data/res/generators/templates/application/public/libs/feather/svg/arrow-up-right.svg +1 -0
  757. data/res/generators/templates/application/public/libs/feather/svg/arrow-up.svg +1 -0
  758. data/res/generators/templates/application/public/libs/feather/svg/at-sign.svg +1 -0
  759. data/res/generators/templates/application/public/libs/feather/svg/award.svg +1 -0
  760. data/res/generators/templates/application/public/libs/feather/svg/bar-chart-2.svg +1 -0
  761. data/res/generators/templates/application/public/libs/feather/svg/bar-chart.svg +1 -0
  762. data/res/generators/templates/application/public/libs/feather/svg/battery-charging.svg +1 -0
  763. data/res/generators/templates/application/public/libs/feather/svg/battery.svg +1 -0
  764. data/res/generators/templates/application/public/libs/feather/svg/bell-off.svg +1 -0
  765. data/res/generators/templates/application/public/libs/feather/svg/bell.svg +1 -0
  766. data/res/generators/templates/application/public/libs/feather/svg/bluetooth.svg +1 -0
  767. data/res/generators/templates/application/public/libs/feather/svg/bold.svg +1 -0
  768. data/res/generators/templates/application/public/libs/feather/svg/book-open.svg +1 -0
  769. data/res/generators/templates/application/public/libs/feather/svg/book.svg +1 -0
  770. data/res/generators/templates/application/public/libs/feather/svg/bookmark.svg +1 -0
  771. data/res/generators/templates/application/public/libs/feather/svg/box.svg +1 -0
  772. data/res/generators/templates/application/public/libs/feather/svg/briefcase.svg +1 -0
  773. data/res/generators/templates/application/public/libs/feather/svg/calendar.svg +1 -0
  774. data/res/generators/templates/application/public/libs/feather/svg/camera-off.svg +1 -0
  775. data/res/generators/templates/application/public/libs/feather/svg/camera.svg +1 -0
  776. data/res/generators/templates/application/public/libs/feather/svg/cast.svg +1 -0
  777. data/res/generators/templates/application/public/libs/feather/svg/check-circle.svg +1 -0
  778. data/res/generators/templates/application/public/libs/feather/svg/check-square.svg +1 -0
  779. data/res/generators/templates/application/public/libs/feather/svg/check.svg +1 -0
  780. data/res/generators/templates/application/public/libs/feather/svg/chevron-down.svg +1 -0
  781. data/res/generators/templates/application/public/libs/feather/svg/chevron-left.svg +1 -0
  782. data/res/generators/templates/application/public/libs/feather/svg/chevron-right.svg +1 -0
  783. data/res/generators/templates/application/public/libs/feather/svg/chevron-up.svg +1 -0
  784. data/res/generators/templates/application/public/libs/feather/svg/chevrons-down.svg +1 -0
  785. data/res/generators/templates/application/public/libs/feather/svg/chevrons-left.svg +1 -0
  786. data/res/generators/templates/application/public/libs/feather/svg/chevrons-right.svg +1 -0
  787. data/res/generators/templates/application/public/libs/feather/svg/chevrons-up.svg +1 -0
  788. data/res/generators/templates/application/public/libs/feather/svg/chrome.svg +1 -0
  789. data/res/generators/templates/application/public/libs/feather/svg/circle.svg +1 -0
  790. data/res/generators/templates/application/public/libs/feather/svg/clipboard.svg +1 -0
  791. data/res/generators/templates/application/public/libs/feather/svg/clock.svg +1 -0
  792. data/res/generators/templates/application/public/libs/feather/svg/cloud-drizzle.svg +1 -0
  793. data/res/generators/templates/application/public/libs/feather/svg/cloud-lightning.svg +1 -0
  794. data/res/generators/templates/application/public/libs/feather/svg/cloud-off.svg +1 -0
  795. data/res/generators/templates/application/public/libs/feather/svg/cloud-rain.svg +1 -0
  796. data/res/generators/templates/application/public/libs/feather/svg/cloud-snow.svg +1 -0
  797. data/res/generators/templates/application/public/libs/feather/svg/cloud.svg +1 -0
  798. data/res/generators/templates/application/public/libs/feather/svg/code.svg +1 -0
  799. data/res/generators/templates/application/public/libs/feather/svg/codepen.svg +1 -0
  800. data/res/generators/templates/application/public/libs/feather/svg/codesandbox.svg +1 -0
  801. data/res/generators/templates/application/public/libs/feather/svg/coffee.svg +1 -0
  802. data/res/generators/templates/application/public/libs/feather/svg/columns.svg +1 -0
  803. data/res/generators/templates/application/public/libs/feather/svg/command.svg +1 -0
  804. data/res/generators/templates/application/public/libs/feather/svg/compass.svg +1 -0
  805. data/res/generators/templates/application/public/libs/feather/svg/copy.svg +1 -0
  806. data/res/generators/templates/application/public/libs/feather/svg/corner-down-left.svg +1 -0
  807. data/res/generators/templates/application/public/libs/feather/svg/corner-down-right.svg +1 -0
  808. data/res/generators/templates/application/public/libs/feather/svg/corner-left-down.svg +1 -0
  809. data/res/generators/templates/application/public/libs/feather/svg/corner-left-up.svg +1 -0
  810. data/res/generators/templates/application/public/libs/feather/svg/corner-right-down.svg +1 -0
  811. data/res/generators/templates/application/public/libs/feather/svg/corner-right-up.svg +1 -0
  812. data/res/generators/templates/application/public/libs/feather/svg/corner-up-left.svg +1 -0
  813. data/res/generators/templates/application/public/libs/feather/svg/corner-up-right.svg +1 -0
  814. data/res/generators/templates/application/public/libs/feather/svg/cpu.svg +1 -0
  815. data/res/generators/templates/application/public/libs/feather/svg/credit-card.svg +1 -0
  816. data/res/generators/templates/application/public/libs/feather/svg/crop.svg +1 -0
  817. data/res/generators/templates/application/public/libs/feather/svg/crosshair.svg +1 -0
  818. data/res/generators/templates/application/public/libs/feather/svg/database.svg +1 -0
  819. data/res/generators/templates/application/public/libs/feather/svg/delete.svg +1 -0
  820. data/res/generators/templates/application/public/libs/feather/svg/disc.svg +1 -0
  821. data/res/generators/templates/application/public/libs/feather/svg/dollar-sign.svg +1 -0
  822. data/res/generators/templates/application/public/libs/feather/svg/download-cloud.svg +1 -0
  823. data/res/generators/templates/application/public/libs/feather/svg/download.svg +1 -0
  824. data/res/generators/templates/application/public/libs/feather/svg/droplet.svg +1 -0
  825. data/res/generators/templates/application/public/libs/feather/svg/edit-2.svg +1 -0
  826. data/res/generators/templates/application/public/libs/feather/svg/edit-3.svg +1 -0
  827. data/res/generators/templates/application/public/libs/feather/svg/edit.svg +1 -0
  828. data/res/generators/templates/application/public/libs/feather/svg/external-link.svg +1 -0
  829. data/res/generators/templates/application/public/libs/feather/svg/eye-off.svg +1 -0
  830. data/res/generators/templates/application/public/libs/feather/svg/eye.svg +1 -0
  831. data/res/generators/templates/application/public/libs/feather/svg/facebook.svg +1 -0
  832. data/res/generators/templates/application/public/libs/feather/svg/fast-forward.svg +1 -0
  833. data/res/generators/templates/application/public/libs/feather/svg/feather.svg +1 -0
  834. data/res/generators/templates/application/public/libs/feather/svg/figma.svg +1 -0
  835. data/res/generators/templates/application/public/libs/feather/svg/file-minus.svg +1 -0
  836. data/res/generators/templates/application/public/libs/feather/svg/file-plus.svg +1 -0
  837. data/res/generators/templates/application/public/libs/feather/svg/file-text.svg +1 -0
  838. data/res/generators/templates/application/public/libs/feather/svg/file.svg +1 -0
  839. data/res/generators/templates/application/public/libs/feather/svg/film.svg +1 -0
  840. data/res/generators/templates/application/public/libs/feather/svg/filter.svg +1 -0
  841. data/res/generators/templates/application/public/libs/feather/svg/flag.svg +1 -0
  842. data/res/generators/templates/application/public/libs/feather/svg/folder-minus.svg +1 -0
  843. data/res/generators/templates/application/public/libs/feather/svg/folder-plus.svg +1 -0
  844. data/res/generators/templates/application/public/libs/feather/svg/folder.svg +1 -0
  845. data/res/generators/templates/application/public/libs/feather/svg/framer.svg +1 -0
  846. data/res/generators/templates/application/public/libs/feather/svg/frown.svg +1 -0
  847. data/res/generators/templates/application/public/libs/feather/svg/gift.svg +1 -0
  848. data/res/generators/templates/application/public/libs/feather/svg/git-branch.svg +1 -0
  849. data/res/generators/templates/application/public/libs/feather/svg/git-commit.svg +1 -0
  850. data/res/generators/templates/application/public/libs/feather/svg/git-merge.svg +1 -0
  851. data/res/generators/templates/application/public/libs/feather/svg/git-pull-request.svg +1 -0
  852. data/res/generators/templates/application/public/libs/feather/svg/github.svg +1 -0
  853. data/res/generators/templates/application/public/libs/feather/svg/gitlab.svg +1 -0
  854. data/res/generators/templates/application/public/libs/feather/svg/globe.svg +1 -0
  855. data/res/generators/templates/application/public/libs/feather/svg/grid.svg +1 -0
  856. data/res/generators/templates/application/public/libs/feather/svg/hard-drive.svg +1 -0
  857. data/res/generators/templates/application/public/libs/feather/svg/hash.svg +1 -0
  858. data/res/generators/templates/application/public/libs/feather/svg/headphones.svg +1 -0
  859. data/res/generators/templates/application/public/libs/feather/svg/heart.svg +1 -0
  860. data/res/generators/templates/application/public/libs/feather/svg/help-circle.svg +1 -0
  861. data/res/generators/templates/application/public/libs/feather/svg/hexagon.svg +1 -0
  862. data/res/generators/templates/application/public/libs/feather/svg/home.svg +1 -0
  863. data/res/generators/templates/application/public/libs/feather/svg/image.svg +1 -0
  864. data/res/generators/templates/application/public/libs/feather/svg/inbox.svg +1 -0
  865. data/res/generators/templates/application/public/libs/feather/svg/info.svg +1 -0
  866. data/res/generators/templates/application/public/libs/feather/svg/instagram.svg +1 -0
  867. data/res/generators/templates/application/public/libs/feather/svg/italic.svg +1 -0
  868. data/res/generators/templates/application/public/libs/feather/svg/key.svg +1 -0
  869. data/res/generators/templates/application/public/libs/feather/svg/layers.svg +1 -0
  870. data/res/generators/templates/application/public/libs/feather/svg/layout.svg +1 -0
  871. data/res/generators/templates/application/public/libs/feather/svg/life-buoy.svg +1 -0
  872. data/res/generators/templates/application/public/libs/feather/svg/link-2.svg +1 -0
  873. data/res/generators/templates/application/public/libs/feather/svg/link.svg +1 -0
  874. data/res/generators/templates/application/public/libs/feather/svg/linkedin.svg +1 -0
  875. data/res/generators/templates/application/public/libs/feather/svg/list.svg +1 -0
  876. data/res/generators/templates/application/public/libs/feather/svg/loader.svg +1 -0
  877. data/res/generators/templates/application/public/libs/feather/svg/lock.svg +1 -0
  878. data/res/generators/templates/application/public/libs/feather/svg/log-in.svg +1 -0
  879. data/res/generators/templates/application/public/libs/feather/svg/log-out.svg +1 -0
  880. data/res/generators/templates/application/public/libs/feather/svg/mail.svg +1 -0
  881. data/res/generators/templates/application/public/libs/feather/svg/map-pin.svg +1 -0
  882. data/res/generators/templates/application/public/libs/feather/svg/map.svg +1 -0
  883. data/res/generators/templates/application/public/libs/feather/svg/maximize-2.svg +1 -0
  884. data/res/generators/templates/application/public/libs/feather/svg/maximize.svg +1 -0
  885. data/res/generators/templates/application/public/libs/feather/svg/meh.svg +1 -0
  886. data/res/generators/templates/application/public/libs/feather/svg/menu.svg +1 -0
  887. data/res/generators/templates/application/public/libs/feather/svg/message-circle.svg +1 -0
  888. data/res/generators/templates/application/public/libs/feather/svg/message-square.svg +1 -0
  889. data/res/generators/templates/application/public/libs/feather/svg/mic-off.svg +1 -0
  890. data/res/generators/templates/application/public/libs/feather/svg/mic.svg +1 -0
  891. data/res/generators/templates/application/public/libs/feather/svg/minimize-2.svg +1 -0
  892. data/res/generators/templates/application/public/libs/feather/svg/minimize.svg +1 -0
  893. data/res/generators/templates/application/public/libs/feather/svg/minus-circle.svg +1 -0
  894. data/res/generators/templates/application/public/libs/feather/svg/minus-square.svg +1 -0
  895. data/res/generators/templates/application/public/libs/feather/svg/minus.svg +1 -0
  896. data/res/generators/templates/application/public/libs/feather/svg/monitor.svg +1 -0
  897. data/res/generators/templates/application/public/libs/feather/svg/moon.svg +1 -0
  898. data/res/generators/templates/application/public/libs/feather/svg/more-horizontal.svg +1 -0
  899. data/res/generators/templates/application/public/libs/feather/svg/more-vertical.svg +1 -0
  900. data/res/generators/templates/application/public/libs/feather/svg/mouse-pointer.svg +1 -0
  901. data/res/generators/templates/application/public/libs/feather/svg/move.svg +1 -0
  902. data/res/generators/templates/application/public/libs/feather/svg/music.svg +1 -0
  903. data/res/generators/templates/application/public/libs/feather/svg/navigation-2.svg +1 -0
  904. data/res/generators/templates/application/public/libs/feather/svg/navigation.svg +1 -0
  905. data/res/generators/templates/application/public/libs/feather/svg/octagon.svg +1 -0
  906. data/res/generators/templates/application/public/libs/feather/svg/package.svg +1 -0
  907. data/res/generators/templates/application/public/libs/feather/svg/paperclip.svg +1 -0
  908. data/res/generators/templates/application/public/libs/feather/svg/pause-circle.svg +1 -0
  909. data/res/generators/templates/application/public/libs/feather/svg/pause.svg +1 -0
  910. data/res/generators/templates/application/public/libs/feather/svg/pen-tool.svg +1 -0
  911. data/res/generators/templates/application/public/libs/feather/svg/percent.svg +1 -0
  912. data/res/generators/templates/application/public/libs/feather/svg/phone-call.svg +1 -0
  913. data/res/generators/templates/application/public/libs/feather/svg/phone-forwarded.svg +1 -0
  914. data/res/generators/templates/application/public/libs/feather/svg/phone-incoming.svg +1 -0
  915. data/res/generators/templates/application/public/libs/feather/svg/phone-missed.svg +1 -0
  916. data/res/generators/templates/application/public/libs/feather/svg/phone-off.svg +1 -0
  917. data/res/generators/templates/application/public/libs/feather/svg/phone-outgoing.svg +1 -0
  918. data/res/generators/templates/application/public/libs/feather/svg/phone.svg +1 -0
  919. data/res/generators/templates/application/public/libs/feather/svg/pie-chart.svg +1 -0
  920. data/res/generators/templates/application/public/libs/feather/svg/play-circle.svg +1 -0
  921. data/res/generators/templates/application/public/libs/feather/svg/play.svg +1 -0
  922. data/res/generators/templates/application/public/libs/feather/svg/plus-circle.svg +1 -0
  923. data/res/generators/templates/application/public/libs/feather/svg/plus-square.svg +1 -0
  924. data/res/generators/templates/application/public/libs/feather/svg/plus.svg +1 -0
  925. data/res/generators/templates/application/public/libs/feather/svg/pocket.svg +1 -0
  926. data/res/generators/templates/application/public/libs/feather/svg/power.svg +1 -0
  927. data/res/generators/templates/application/public/libs/feather/svg/printer.svg +1 -0
  928. data/res/generators/templates/application/public/libs/feather/svg/radio.svg +1 -0
  929. data/res/generators/templates/application/public/libs/feather/svg/refresh-ccw.svg +1 -0
  930. data/res/generators/templates/application/public/libs/feather/svg/refresh-cw.svg +1 -0
  931. data/res/generators/templates/application/public/libs/feather/svg/repeat.svg +1 -0
  932. data/res/generators/templates/application/public/libs/feather/svg/rewind.svg +1 -0
  933. data/res/generators/templates/application/public/libs/feather/svg/rotate-ccw.svg +1 -0
  934. data/res/generators/templates/application/public/libs/feather/svg/rotate-cw.svg +1 -0
  935. data/res/generators/templates/application/public/libs/feather/svg/rss.svg +1 -0
  936. data/res/generators/templates/application/public/libs/feather/svg/save.svg +1 -0
  937. data/res/generators/templates/application/public/libs/feather/svg/scissors.svg +1 -0
  938. data/res/generators/templates/application/public/libs/feather/svg/search.svg +1 -0
  939. data/res/generators/templates/application/public/libs/feather/svg/send.svg +1 -0
  940. data/res/generators/templates/application/public/libs/feather/svg/server.svg +1 -0
  941. data/res/generators/templates/application/public/libs/feather/svg/settings.svg +1 -0
  942. data/res/generators/templates/application/public/libs/feather/svg/share-2.svg +1 -0
  943. data/res/generators/templates/application/public/libs/feather/svg/share.svg +1 -0
  944. data/res/generators/templates/application/public/libs/feather/svg/shield-off.svg +1 -0
  945. data/res/generators/templates/application/public/libs/feather/svg/shield.svg +1 -0
  946. data/res/generators/templates/application/public/libs/feather/svg/shopping-bag.svg +1 -0
  947. data/res/generators/templates/application/public/libs/feather/svg/shopping-cart.svg +1 -0
  948. data/res/generators/templates/application/public/libs/feather/svg/shuffle.svg +1 -0
  949. data/res/generators/templates/application/public/libs/feather/svg/sidebar.svg +1 -0
  950. data/res/generators/templates/application/public/libs/feather/svg/skip-back.svg +1 -0
  951. data/res/generators/templates/application/public/libs/feather/svg/skip-forward.svg +1 -0
  952. data/res/generators/templates/application/public/libs/feather/svg/slack.svg +1 -0
  953. data/res/generators/templates/application/public/libs/feather/svg/slash.svg +1 -0
  954. data/res/generators/templates/application/public/libs/feather/svg/sliders.svg +1 -0
  955. data/res/generators/templates/application/public/libs/feather/svg/smartphone.svg +1 -0
  956. data/res/generators/templates/application/public/libs/feather/svg/smile.svg +1 -0
  957. data/res/generators/templates/application/public/libs/feather/svg/speaker.svg +1 -0
  958. data/res/generators/templates/application/public/libs/feather/svg/square.svg +1 -0
  959. data/res/generators/templates/application/public/libs/feather/svg/star.svg +1 -0
  960. data/res/generators/templates/application/public/libs/feather/svg/stop-circle.svg +1 -0
  961. data/res/generators/templates/application/public/libs/feather/svg/sun.svg +1 -0
  962. data/res/generators/templates/application/public/libs/feather/svg/sunrise.svg +1 -0
  963. data/res/generators/templates/application/public/libs/feather/svg/sunset.svg +1 -0
  964. data/res/generators/templates/application/public/libs/feather/svg/tablet.svg +1 -0
  965. data/res/generators/templates/application/public/libs/feather/svg/tag.svg +1 -0
  966. data/res/generators/templates/application/public/libs/feather/svg/target.svg +1 -0
  967. data/res/generators/templates/application/public/libs/feather/svg/terminal.svg +1 -0
  968. data/res/generators/templates/application/public/libs/feather/svg/thermometer.svg +1 -0
  969. data/res/generators/templates/application/public/libs/feather/svg/thumbs-down.svg +1 -0
  970. data/res/generators/templates/application/public/libs/feather/svg/thumbs-up.svg +1 -0
  971. data/res/generators/templates/application/public/libs/feather/svg/toggle-left.svg +1 -0
  972. data/res/generators/templates/application/public/libs/feather/svg/toggle-right.svg +1 -0
  973. data/res/generators/templates/application/public/libs/feather/svg/tool.svg +1 -0
  974. data/res/generators/templates/application/public/libs/feather/svg/trash-2.svg +1 -0
  975. data/res/generators/templates/application/public/libs/feather/svg/trash.svg +1 -0
  976. data/res/generators/templates/application/public/libs/feather/svg/trello.svg +1 -0
  977. data/res/generators/templates/application/public/libs/feather/svg/trending-down.svg +1 -0
  978. data/res/generators/templates/application/public/libs/feather/svg/trending-up.svg +1 -0
  979. data/res/generators/templates/application/public/libs/feather/svg/triangle.svg +1 -0
  980. data/res/generators/templates/application/public/libs/feather/svg/truck.svg +1 -0
  981. data/res/generators/templates/application/public/libs/feather/svg/tv.svg +1 -0
  982. data/res/generators/templates/application/public/libs/feather/svg/twitch.svg +1 -0
  983. data/res/generators/templates/application/public/libs/feather/svg/twitter.svg +1 -0
  984. data/res/generators/templates/application/public/libs/feather/svg/type.svg +1 -0
  985. data/res/generators/templates/application/public/libs/feather/svg/umbrella.svg +1 -0
  986. data/res/generators/templates/application/public/libs/feather/svg/underline.svg +1 -0
  987. data/res/generators/templates/application/public/libs/feather/svg/unlock.svg +1 -0
  988. data/res/generators/templates/application/public/libs/feather/svg/upload-cloud.svg +1 -0
  989. data/res/generators/templates/application/public/libs/feather/svg/upload.svg +1 -0
  990. data/res/generators/templates/application/public/libs/feather/svg/user-check.svg +1 -0
  991. data/res/generators/templates/application/public/libs/feather/svg/user-minus.svg +1 -0
  992. data/res/generators/templates/application/public/libs/feather/svg/user-plus.svg +1 -0
  993. data/res/generators/templates/application/public/libs/feather/svg/user-x.svg +1 -0
  994. data/res/generators/templates/application/public/libs/feather/svg/user.svg +1 -0
  995. data/res/generators/templates/application/public/libs/feather/svg/users.svg +1 -0
  996. data/res/generators/templates/application/public/libs/feather/svg/video-off.svg +1 -0
  997. data/res/generators/templates/application/public/libs/feather/svg/video.svg +1 -0
  998. data/res/generators/templates/application/public/libs/feather/svg/voicemail.svg +1 -0
  999. data/res/generators/templates/application/public/libs/feather/svg/volume-1.svg +1 -0
  1000. data/res/generators/templates/application/public/libs/feather/svg/volume-2.svg +1 -0
  1001. data/res/generators/templates/application/public/libs/feather/svg/volume-x.svg +1 -0
  1002. data/res/generators/templates/application/public/libs/feather/svg/volume.svg +1 -0
  1003. data/res/generators/templates/application/public/libs/feather/svg/watch.svg +1 -0
  1004. data/res/generators/templates/application/public/libs/feather/svg/wifi-off.svg +1 -0
  1005. data/res/generators/templates/application/public/libs/feather/svg/wifi.svg +1 -0
  1006. data/res/generators/templates/application/public/libs/feather/svg/wind.svg +1 -0
  1007. data/res/generators/templates/application/public/libs/feather/svg/x-circle.svg +1 -0
  1008. data/res/generators/templates/application/public/libs/feather/svg/x-octagon.svg +1 -0
  1009. data/res/generators/templates/application/public/libs/feather/svg/x-square.svg +1 -0
  1010. data/res/generators/templates/application/public/libs/feather/svg/x.svg +1 -0
  1011. data/res/generators/templates/application/public/libs/feather/svg/youtube.svg +1 -0
  1012. data/res/generators/templates/application/public/libs/feather/svg/zap-off.svg +1 -0
  1013. data/res/generators/templates/application/public/libs/feather/svg/zap.svg +1 -0
  1014. data/res/generators/templates/application/public/libs/feather/svg/zoom-in.svg +1 -0
  1015. data/res/generators/templates/application/public/libs/feather/svg/zoom-out.svg +1 -0
  1016. data/res/generators/templates/application/public/libs/jquery-3.5.1/jquery-3.5.1.js +10872 -0
  1017. data/res/generators/templates/application/public/libs/jquery-3.5.1/jquery-3.5.1.min.js +2 -0
  1018. data/res/generators/templates/application/public/libs/jquery-3.5.1/jquery-3.5.1.min.map +1 -0
  1019. data/res/generators/templates/application/public/libs/popper-2.4.0/popper-2.4.0.js +1802 -0
  1020. data/res/generators/templates/application/public/libs/popper-2.4.0/popper-2.4.0.min.js +6 -0
  1021. data/res/generators/templates/application/resources/android/res/drawable/loading.png +0 -0
  1022. data/res/generators/templates/application/resources/android/res/drawable-hdpi/loading.png +0 -0
  1023. data/res/generators/templates/application/resources/android/res/drawable-ldpi/loading.png +0 -0
  1024. data/res/generators/templates/application/resources/android/res/drawable-mdpi/loading.png +0 -0
  1025. data/res/generators/templates/application/resources/android/res/drawable-xhdpi/loading.png +0 -0
  1026. data/res/generators/templates/application/resources/android/res/drawable-xxhdpi/loading.png +0 -0
  1027. data/res/generators/templates/application/resources/android/res/drawable-xxxhdpi/loading.png +0 -0
  1028. data/res/generators/templates/application/resources/ios/Default-568h@2x.png +0 -0
  1029. data/res/generators/templates/application/resources/ios/Default-667h@2x.png +0 -0
  1030. data/res/generators/templates/application/resources/ios/Default-736h@3x.png +0 -0
  1031. data/res/generators/templates/application/resources/ios/Default-812h@3x.png +0 -0
  1032. data/res/generators/templates/application/resources/ios/Default-896h@2x.png +0 -0
  1033. data/res/generators/templates/application/resources/ios/Default-896h@3x.png +0 -0
  1034. data/res/generators/templates/application/resources/ios/Default-Landscape-736h@3x.png +0 -0
  1035. data/res/generators/templates/application/resources/ios/Default-Landscape-812h@3x.png +0 -0
  1036. data/res/generators/templates/application/resources/ios/Default-Landscape-896h@2x.png +0 -0
  1037. data/res/generators/templates/application/resources/ios/Default-Landscape-896h@3x.png +0 -0
  1038. data/res/generators/templates/application/resources/ios/Default-Landscape.png +0 -0
  1039. data/res/generators/templates/application/resources/ios/Default-Landscape@2x.png +0 -0
  1040. data/res/generators/templates/application/resources/ios/Default-Portrait.png +0 -0
  1041. data/res/generators/templates/application/resources/ios/Default-Portrait@2x.png +0 -0
  1042. data/res/generators/templates/application/resources/ios/Default.png +0 -0
  1043. data/res/generators/templates/application/resources/ios/Default@2x.png +0 -0
  1044. data/res/generators/templates/application/rhoconfig.txt +7 -0
  1045. data/res/generators/templates/extension/extensions/montana/ext/build +5 -0
  1046. data/res/generators/templates/extension/extensions/montana/ext/build.bat +1 -1
  1047. data/res/generators/templates/extension/extensions/montana/ext/platform/android/Rakefile +1 -160
  1048. data/res/generators/templates/extension/extensions/montana/ext/platform/iphone/Montana.xcodeproj/project.pbxproj +4 -4
  1049. data/res/generators/templates/extension/extensions/montana/ext/platform/iphone/Podfile.example +16 -0
  1050. data/res/generators/templates/extension/extensions/montana/ext/platform/iphone/Rakefile +9 -62
  1051. data/res/generators/templates/extension/extensions/montana/ext/platform/qt/Montana.pro +26 -1
  1052. data/res/generators/templates/iphone_project/Bremen8.xcodeproj/project.pbxproj +34 -55
  1053. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-568h@2x.png +0 -0
  1054. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-667h@2x.png +0 -0
  1055. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-736h@3x.png +0 -0
  1056. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-812h@3x.png +0 -0
  1057. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-896h@2x.png +0 -0
  1058. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-896h@3x.png +0 -0
  1059. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-736h@3x.png +0 -0
  1060. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-812h@3x.png +0 -0
  1061. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-896h@2x.png +0 -0
  1062. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape-896h@3x.png +0 -0
  1063. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape.png +0 -0
  1064. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Landscape@2x.png +0 -0
  1065. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Portrait.png +0 -0
  1066. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default-Portrait@2x.png +0 -0
  1067. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default.png +0 -0
  1068. data/res/generators/templates/iphone_project/Media.xcassets/LaunchImage.launchimage/Default@2x.png +0 -0
  1069. data/res/generators/templates/iphone_project/Rhodes/Rhodes.xcodeproj/project.pbxproj +4 -4
  1070. data/res/generators/templates/iphone_project/buildRhoBundle +2 -10
  1071. data/res/generators/templates/iphone_project/root/Info.plist +4 -0
  1072. data/res/generators/templates/model/edit.erb +10 -12
  1073. data/res/generators/templates/model/index.erb +27 -29
  1074. data/res/generators/templates/model/javascript_edit.html +18 -17
  1075. data/res/generators/templates/model/javascript_index.html +22 -21
  1076. data/res/generators/templates/model/javascript_index.js +12 -7
  1077. data/res/generators/templates/model/javascript_new.html +20 -16
  1078. data/res/generators/templates/model/javascript_show.html +30 -32
  1079. data/res/generators/templates/model/new.erb +8 -12
  1080. data/res/generators/templates/model/show.erb +22 -28
  1081. data/res/generators/templates/project/android_studio_project/app/CMakeLists.txt.erb +15 -2
  1082. data/res/generators/templates/project/android_studio_project/app/build.gradle.erb +22 -19
  1083. data/res/generators/templates/project/android_studio_project/build.gradle +3 -1
  1084. data/res/generators/templates/spec/app/SpecRunner/controller.rb +1 -1
  1085. data/res/generators/templates/spec/app/mspec.rb +1 -1
  1086. data/res/generators/templates/spec/app/spec_runner.rb +23 -4
  1087. data/res/prebuild_base_app/rhoconfig.txt +11 -8
  1088. data/rhobuild.yml.example +3 -0
  1089. data/rhodes-core.gemspec +1 -2
  1090. data/rhodes.gemspec +20 -26
  1091. data/rhomobile-debug.gemspec +0 -1
  1092. data/version +1 -1
  1093. metadata +453 -97
  1094. data/extensions/emdk3-manager/ext/platform/android/ext_native.files +0 -0
  1095. data/lib/extensions/fcm-push/ext/iphone/Firebase.h +0 -68
  1096. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h +0 -62
  1097. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalytics.h +0 -115
  1098. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalyticsConfiguration.h +0 -1
  1099. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRAnalyticsSwiftNameSupport.h +0 -13
  1100. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRApp.h +0 -1
  1101. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRConfiguration.h +0 -1
  1102. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIREventNames.h +0 -389
  1103. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIROptions.h +0 -1
  1104. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRParameterNames.h +0 -485
  1105. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h +0 -15
  1106. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h +0 -10
  1107. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseAnalytics.framework/Modules/module.modulemap +0 -10
  1108. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/FirebaseCore +0 -0
  1109. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRAnalyticsConfiguration.h +0 -52
  1110. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRApp.h +0 -130
  1111. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRConfiguration.h +0 -78
  1112. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIRLoggerLevel.h +0 -35
  1113. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FIROptions.h +0 -133
  1114. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Headers/FirebaseCore.h +0 -5
  1115. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCore.framework/Modules/module.modulemap +0 -7
  1116. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics +0 -0
  1117. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseCoreDiagnostics.framework/Modules/module.modulemap +0 -6
  1118. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/FirebaseInstanceID +0 -0
  1119. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/Headers/FIRInstanceID.h +0 -276
  1120. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/Headers/FirebaseInstanceID.h +0 -1
  1121. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseInstanceID.framework/Modules/module.modulemap +0 -7
  1122. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/FirebaseMessaging +0 -0
  1123. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/Headers/FIRMessaging.h +0 -508
  1124. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/Headers/FirebaseMessaging.h +0 -1
  1125. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseMessaging.framework/Modules/module.modulemap +0 -8
  1126. data/lib/extensions/fcm-push/ext/iphone/Frameworks/FirebaseNanoPB.framework/FirebaseNanoPB +0 -0
  1127. data/lib/extensions/fcm-push/ext/iphone/Frameworks/GoogleToolboxForMac.framework/GoogleToolboxForMac +0 -0
  1128. data/lib/extensions/fcm-push/ext/iphone/Frameworks/GoogleToolboxForMac.framework/Modules/module.modulemap +0 -5
  1129. data/lib/extensions/fcm-push/ext/iphone/Frameworks/Protobuf.framework/Modules/module.modulemap +0 -5
  1130. data/lib/extensions/fcm-push/ext/iphone/Frameworks/Protobuf.framework/Protobuf +0 -0
  1131. data/lib/extensions/fcm-push/ext/iphone/Frameworks/nanopb.framework/Modules/module.modulemap +0 -5
  1132. data/lib/extensions/fcm-push/ext/iphone/Frameworks/nanopb.framework/nanopb +0 -0
  1133. data/platform/win32/RhoSimulator/position/qtposition_geoclue.dll +0 -0
  1134. data/platform/win32/build/RhoRuntimeQt5-VS2008.nsi +0 -162
  1135. data/platform/win32/build/RhoRuntimeQt5.5.0.0_VS2012.nsi +0 -178
  1136. data/platform/win32/build/RhoRuntimeQt5.bat +0 -2
  1137. data/platform/win32/build/RhoRuntimeQt5.ico +0 -0
  1138. data/platform/win32/build/RhoRuntimeQt5.nsi +0 -165
  1139. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.css +0 -587
  1140. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.css.map +0 -1
  1141. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.min.css +0 -6
  1142. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap-theme.min.css.map +0 -1
  1143. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.css +0 -6757
  1144. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.css.map +0 -1
  1145. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.min.css +0 -6
  1146. data/res/generators/templates/application/public/bootstrap-3.3.7/css/bootstrap.min.css.map +0 -1
  1147. data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.eot +0 -0
  1148. data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.svg +0 -288
  1149. data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.ttf +0 -0
  1150. data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff +0 -0
  1151. data/res/generators/templates/application/public/bootstrap-3.3.7/fonts/glyphicons-halflings-regular.woff2 +0 -0
  1152. data/res/generators/templates/application/public/bootstrap-3.3.7/js/bootstrap.js +0 -2377
  1153. data/res/generators/templates/application/public/bootstrap-3.3.7/js/bootstrap.min.js +0 -7
  1154. data/res/generators/templates/application/public/bootstrap-3.3.7/js/npm.js +0 -13
  1155. data/res/generators/templates/application/public/jquery/jquery-3.1.1.min.js +0 -4
  1156. data/res/generators/templates/application/public/jquery/jquery-3.1.1.min.map +0 -1
  1157. data/res/generators/templates/application/public/jquery/jquery-3.2.1.min.js +0 -4
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../scss/bootstrap-grid.scss","dist/css/bootstrap-grid.css","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/mixins/_grid-framework.scss","../../scss/utilities/_display.scss","../../scss/utilities/_flex.scss","../../scss/utilities/_spacing.scss"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Bootstrap Grid v4.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n@import \"functions\";\n@import \"variables\";\n\n@import \"mixins/breakpoints\";\n@import \"mixins/grid-framework\";\n@import \"mixins/grid\";\n\n@import \"grid\";\n@import \"utilities/display\";\n@import \"utilities/flex\";\n@import \"utilities/spacing\";\n","/*!\n * Bootstrap Grid v4.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid, .container-sm, .container-md, .container-lg, .container-xl {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container, .container-sm {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container, .container-sm, .container-md {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container, .container-sm, .container-md, .container-lg {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container, .container-sm, .container-md, .container-lg, .container-xl {\n max-width: 1140px;\n }\n}\n\n.row {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.row-cols-1 > * {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.row-cols-2 > * {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.row-cols-3 > * {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.row-cols-4 > * {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.row-cols-5 > * {\n -ms-flex: 0 0 20%;\n flex: 0 0 20%;\n max-width: 20%;\n}\n\n.row-cols-6 > * {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n}\n\n.col-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n -ms-flex-order: -1;\n order: -1;\n}\n\n.order-last {\n -ms-flex-order: 13;\n order: 13;\n}\n\n.order-0 {\n -ms-flex-order: 0;\n order: 0;\n}\n\n.order-1 {\n -ms-flex-order: 1;\n order: 1;\n}\n\n.order-2 {\n -ms-flex-order: 2;\n order: 2;\n}\n\n.order-3 {\n -ms-flex-order: 3;\n order: 3;\n}\n\n.order-4 {\n -ms-flex-order: 4;\n order: 4;\n}\n\n.order-5 {\n -ms-flex-order: 5;\n order: 5;\n}\n\n.order-6 {\n -ms-flex-order: 6;\n order: 6;\n}\n\n.order-7 {\n -ms-flex-order: 7;\n order: 7;\n}\n\n.order-8 {\n -ms-flex-order: 8;\n order: 8;\n}\n\n.order-9 {\n -ms-flex-order: 9;\n order: 9;\n}\n\n.order-10 {\n -ms-flex-order: 10;\n order: 10;\n}\n\n.order-11 {\n -ms-flex-order: 11;\n order: 11;\n}\n\n.order-12 {\n -ms-flex-order: 12;\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .row-cols-sm-1 > * {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .row-cols-sm-2 > * {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .row-cols-sm-3 > * {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .row-cols-sm-4 > * {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .row-cols-sm-5 > * {\n -ms-flex: 0 0 20%;\n flex: 0 0 20%;\n max-width: 20%;\n }\n .row-cols-sm-6 > * {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-sm-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-sm-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-sm-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-sm-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-sm-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-sm-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-sm-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-sm-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-sm-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-sm-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-sm-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-sm-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-sm-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-sm-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-sm-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .row-cols-md-1 > * {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .row-cols-md-2 > * {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .row-cols-md-3 > * {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .row-cols-md-4 > * {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .row-cols-md-5 > * {\n -ms-flex: 0 0 20%;\n flex: 0 0 20%;\n max-width: 20%;\n }\n .row-cols-md-6 > * {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-md-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-md-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-md-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-md-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-md-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-md-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-md-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-md-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-md-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-md-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-md-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-md-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-md-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-md-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-md-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .row-cols-lg-1 > * {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .row-cols-lg-2 > * {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .row-cols-lg-3 > * {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .row-cols-lg-4 > * {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .row-cols-lg-5 > * {\n -ms-flex: 0 0 20%;\n flex: 0 0 20%;\n max-width: 20%;\n }\n .row-cols-lg-6 > * {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-lg-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-lg-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-lg-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-lg-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-lg-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-lg-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-lg-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-lg-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-lg-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-lg-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-lg-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-lg-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-lg-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-lg-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-lg-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .row-cols-xl-1 > * {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .row-cols-xl-2 > * {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .row-cols-xl-3 > * {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .row-cols-xl-4 > * {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .row-cols-xl-5 > * {\n -ms-flex: 0 0 20%;\n flex: 0 0 20%;\n max-width: 20%;\n }\n .row-cols-xl-6 > * {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-xl-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-xl-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-xl-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-xl-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-xl-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-xl-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-xl-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-xl-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-xl-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-xl-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-xl-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-xl-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-xl-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-xl-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-xl-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n}\n\n.d-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n.flex-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n\n.flex-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n\n.justify-content-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n\n.align-items-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n\n.align-items-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n\n.align-items-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n\n.align-items-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-md-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-n1 {\n margin: -0.25rem !important;\n}\n\n.mt-n1,\n.my-n1 {\n margin-top: -0.25rem !important;\n}\n\n.mr-n1,\n.mx-n1 {\n margin-right: -0.25rem !important;\n}\n\n.mb-n1,\n.my-n1 {\n margin-bottom: -0.25rem !important;\n}\n\n.ml-n1,\n.mx-n1 {\n margin-left: -0.25rem !important;\n}\n\n.m-n2 {\n margin: -0.5rem !important;\n}\n\n.mt-n2,\n.my-n2 {\n margin-top: -0.5rem !important;\n}\n\n.mr-n2,\n.mx-n2 {\n margin-right: -0.5rem !important;\n}\n\n.mb-n2,\n.my-n2 {\n margin-bottom: -0.5rem !important;\n}\n\n.ml-n2,\n.mx-n2 {\n margin-left: -0.5rem !important;\n}\n\n.m-n3 {\n margin: -1rem !important;\n}\n\n.mt-n3,\n.my-n3 {\n margin-top: -1rem !important;\n}\n\n.mr-n3,\n.mx-n3 {\n margin-right: -1rem !important;\n}\n\n.mb-n3,\n.my-n3 {\n margin-bottom: -1rem !important;\n}\n\n.ml-n3,\n.mx-n3 {\n margin-left: -1rem !important;\n}\n\n.m-n4 {\n margin: -1.5rem !important;\n}\n\n.mt-n4,\n.my-n4 {\n margin-top: -1.5rem !important;\n}\n\n.mr-n4,\n.mx-n4 {\n margin-right: -1.5rem !important;\n}\n\n.mb-n4,\n.my-n4 {\n margin-bottom: -1.5rem !important;\n}\n\n.ml-n4,\n.mx-n4 {\n margin-left: -1.5rem !important;\n}\n\n.m-n5 {\n margin: -3rem !important;\n}\n\n.mt-n5,\n.my-n5 {\n margin-top: -3rem !important;\n}\n\n.mr-n5,\n.mx-n5 {\n margin-right: -3rem !important;\n}\n\n.mb-n5,\n.my-n5 {\n margin-bottom: -3rem !important;\n}\n\n.ml-n5,\n.mx-n5 {\n margin-left: -3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n\n@media (min-width: 576px) {\n .m-sm-0 {\n margin: 0 !important;\n }\n .mt-sm-0,\n .my-sm-0 {\n margin-top: 0 !important;\n }\n .mr-sm-0,\n .mx-sm-0 {\n margin-right: 0 !important;\n }\n .mb-sm-0,\n .my-sm-0 {\n margin-bottom: 0 !important;\n }\n .ml-sm-0,\n .mx-sm-0 {\n margin-left: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .mt-sm-1,\n .my-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mr-sm-1,\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n }\n .mb-sm-1,\n .my-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-sm-1,\n .mx-sm-1 {\n margin-left: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .mt-sm-2,\n .my-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mr-sm-2,\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n }\n .mb-sm-2,\n .my-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-sm-2,\n .mx-sm-2 {\n margin-left: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .mt-sm-3,\n .my-sm-3 {\n margin-top: 1rem !important;\n }\n .mr-sm-3,\n .mx-sm-3 {\n margin-right: 1rem !important;\n }\n .mb-sm-3,\n .my-sm-3 {\n margin-bottom: 1rem !important;\n }\n .ml-sm-3,\n .mx-sm-3 {\n margin-left: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .mt-sm-4,\n .my-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mr-sm-4,\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n }\n .mb-sm-4,\n .my-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-sm-4,\n .mx-sm-4 {\n margin-left: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .mt-sm-5,\n .my-sm-5 {\n margin-top: 3rem !important;\n }\n .mr-sm-5,\n .mx-sm-5 {\n margin-right: 3rem !important;\n }\n .mb-sm-5,\n .my-sm-5 {\n margin-bottom: 3rem !important;\n }\n .ml-sm-5,\n .mx-sm-5 {\n margin-left: 3rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .pt-sm-0,\n .py-sm-0 {\n padding-top: 0 !important;\n }\n .pr-sm-0,\n .px-sm-0 {\n padding-right: 0 !important;\n }\n .pb-sm-0,\n .py-sm-0 {\n padding-bottom: 0 !important;\n }\n .pl-sm-0,\n .px-sm-0 {\n padding-left: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .pt-sm-1,\n .py-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pr-sm-1,\n .px-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pb-sm-1,\n .py-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-sm-1,\n .px-sm-1 {\n padding-left: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .pt-sm-2,\n .py-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pr-sm-2,\n .px-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pb-sm-2,\n .py-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-sm-2,\n .px-sm-2 {\n padding-left: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .pt-sm-3,\n .py-sm-3 {\n padding-top: 1rem !important;\n }\n .pr-sm-3,\n .px-sm-3 {\n padding-right: 1rem !important;\n }\n .pb-sm-3,\n .py-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pl-sm-3,\n .px-sm-3 {\n padding-left: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .pt-sm-4,\n .py-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pr-sm-4,\n .px-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pb-sm-4,\n .py-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-sm-4,\n .px-sm-4 {\n padding-left: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .pt-sm-5,\n .py-sm-5 {\n padding-top: 3rem !important;\n }\n .pr-sm-5,\n .px-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-5,\n .py-sm-5 {\n padding-bottom: 3rem !important;\n }\n .pl-sm-5,\n .px-sm-5 {\n padding-left: 3rem !important;\n }\n .m-sm-n1 {\n margin: -0.25rem !important;\n }\n .mt-sm-n1,\n .my-sm-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-sm-n1,\n .mx-sm-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-sm-n1,\n .my-sm-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-sm-n1,\n .mx-sm-n1 {\n margin-left: -0.25rem !important;\n }\n .m-sm-n2 {\n margin: -0.5rem !important;\n }\n .mt-sm-n2,\n .my-sm-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-sm-n2,\n .mx-sm-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-sm-n2,\n .my-sm-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-sm-n2,\n .mx-sm-n2 {\n margin-left: -0.5rem !important;\n }\n .m-sm-n3 {\n margin: -1rem !important;\n }\n .mt-sm-n3,\n .my-sm-n3 {\n margin-top: -1rem !important;\n }\n .mr-sm-n3,\n .mx-sm-n3 {\n margin-right: -1rem !important;\n }\n .mb-sm-n3,\n .my-sm-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-sm-n3,\n .mx-sm-n3 {\n margin-left: -1rem !important;\n }\n .m-sm-n4 {\n margin: -1.5rem !important;\n }\n .mt-sm-n4,\n .my-sm-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-sm-n4,\n .mx-sm-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-sm-n4,\n .my-sm-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-sm-n4,\n .mx-sm-n4 {\n margin-left: -1.5rem !important;\n }\n .m-sm-n5 {\n margin: -3rem !important;\n }\n .mt-sm-n5,\n .my-sm-n5 {\n margin-top: -3rem !important;\n }\n .mr-sm-n5,\n .mx-sm-n5 {\n margin-right: -3rem !important;\n }\n .mb-sm-n5,\n .my-sm-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-sm-n5,\n .mx-sm-n5 {\n margin-left: -3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mt-sm-auto,\n .my-sm-auto {\n margin-top: auto !important;\n }\n .mr-sm-auto,\n .mx-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-auto,\n .my-sm-auto {\n margin-bottom: auto !important;\n }\n .ml-sm-auto,\n .mx-sm-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 768px) {\n .m-md-0 {\n margin: 0 !important;\n }\n .mt-md-0,\n .my-md-0 {\n margin-top: 0 !important;\n }\n .mr-md-0,\n .mx-md-0 {\n margin-right: 0 !important;\n }\n .mb-md-0,\n .my-md-0 {\n margin-bottom: 0 !important;\n }\n .ml-md-0,\n .mx-md-0 {\n margin-left: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .mt-md-1,\n .my-md-1 {\n margin-top: 0.25rem !important;\n }\n .mr-md-1,\n .mx-md-1 {\n margin-right: 0.25rem !important;\n }\n .mb-md-1,\n .my-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-md-1,\n .mx-md-1 {\n margin-left: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .mt-md-2,\n .my-md-2 {\n margin-top: 0.5rem !important;\n }\n .mr-md-2,\n .mx-md-2 {\n margin-right: 0.5rem !important;\n }\n .mb-md-2,\n .my-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-md-2,\n .mx-md-2 {\n margin-left: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .mt-md-3,\n .my-md-3 {\n margin-top: 1rem !important;\n }\n .mr-md-3,\n .mx-md-3 {\n margin-right: 1rem !important;\n }\n .mb-md-3,\n .my-md-3 {\n margin-bottom: 1rem !important;\n }\n .ml-md-3,\n .mx-md-3 {\n margin-left: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .mt-md-4,\n .my-md-4 {\n margin-top: 1.5rem !important;\n }\n .mr-md-4,\n .mx-md-4 {\n margin-right: 1.5rem !important;\n }\n .mb-md-4,\n .my-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-md-4,\n .mx-md-4 {\n margin-left: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .mt-md-5,\n .my-md-5 {\n margin-top: 3rem !important;\n }\n .mr-md-5,\n .mx-md-5 {\n margin-right: 3rem !important;\n }\n .mb-md-5,\n .my-md-5 {\n margin-bottom: 3rem !important;\n }\n .ml-md-5,\n .mx-md-5 {\n margin-left: 3rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .pt-md-0,\n .py-md-0 {\n padding-top: 0 !important;\n }\n .pr-md-0,\n .px-md-0 {\n padding-right: 0 !important;\n }\n .pb-md-0,\n .py-md-0 {\n padding-bottom: 0 !important;\n }\n .pl-md-0,\n .px-md-0 {\n padding-left: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .pt-md-1,\n .py-md-1 {\n padding-top: 0.25rem !important;\n }\n .pr-md-1,\n .px-md-1 {\n padding-right: 0.25rem !important;\n }\n .pb-md-1,\n .py-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-md-1,\n .px-md-1 {\n padding-left: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .pt-md-2,\n .py-md-2 {\n padding-top: 0.5rem !important;\n }\n .pr-md-2,\n .px-md-2 {\n padding-right: 0.5rem !important;\n }\n .pb-md-2,\n .py-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-md-2,\n .px-md-2 {\n padding-left: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .pt-md-3,\n .py-md-3 {\n padding-top: 1rem !important;\n }\n .pr-md-3,\n .px-md-3 {\n padding-right: 1rem !important;\n }\n .pb-md-3,\n .py-md-3 {\n padding-bottom: 1rem !important;\n }\n .pl-md-3,\n .px-md-3 {\n padding-left: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .pt-md-4,\n .py-md-4 {\n padding-top: 1.5rem !important;\n }\n .pr-md-4,\n .px-md-4 {\n padding-right: 1.5rem !important;\n }\n .pb-md-4,\n .py-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-md-4,\n .px-md-4 {\n padding-left: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .pt-md-5,\n .py-md-5 {\n padding-top: 3rem !important;\n }\n .pr-md-5,\n .px-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-5,\n .py-md-5 {\n padding-bottom: 3rem !important;\n }\n .pl-md-5,\n .px-md-5 {\n padding-left: 3rem !important;\n }\n .m-md-n1 {\n margin: -0.25rem !important;\n }\n .mt-md-n1,\n .my-md-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-md-n1,\n .mx-md-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-md-n1,\n .my-md-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-md-n1,\n .mx-md-n1 {\n margin-left: -0.25rem !important;\n }\n .m-md-n2 {\n margin: -0.5rem !important;\n }\n .mt-md-n2,\n .my-md-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-md-n2,\n .mx-md-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-md-n2,\n .my-md-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-md-n2,\n .mx-md-n2 {\n margin-left: -0.5rem !important;\n }\n .m-md-n3 {\n margin: -1rem !important;\n }\n .mt-md-n3,\n .my-md-n3 {\n margin-top: -1rem !important;\n }\n .mr-md-n3,\n .mx-md-n3 {\n margin-right: -1rem !important;\n }\n .mb-md-n3,\n .my-md-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-md-n3,\n .mx-md-n3 {\n margin-left: -1rem !important;\n }\n .m-md-n4 {\n margin: -1.5rem !important;\n }\n .mt-md-n4,\n .my-md-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-md-n4,\n .mx-md-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-md-n4,\n .my-md-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-md-n4,\n .mx-md-n4 {\n margin-left: -1.5rem !important;\n }\n .m-md-n5 {\n margin: -3rem !important;\n }\n .mt-md-n5,\n .my-md-n5 {\n margin-top: -3rem !important;\n }\n .mr-md-n5,\n .mx-md-n5 {\n margin-right: -3rem !important;\n }\n .mb-md-n5,\n .my-md-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-md-n5,\n .mx-md-n5 {\n margin-left: -3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mt-md-auto,\n .my-md-auto {\n margin-top: auto !important;\n }\n .mr-md-auto,\n .mx-md-auto {\n margin-right: auto !important;\n }\n .mb-md-auto,\n .my-md-auto {\n margin-bottom: auto !important;\n }\n .ml-md-auto,\n .mx-md-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 992px) {\n .m-lg-0 {\n margin: 0 !important;\n }\n .mt-lg-0,\n .my-lg-0 {\n margin-top: 0 !important;\n }\n .mr-lg-0,\n .mx-lg-0 {\n margin-right: 0 !important;\n }\n .mb-lg-0,\n .my-lg-0 {\n margin-bottom: 0 !important;\n }\n .ml-lg-0,\n .mx-lg-0 {\n margin-left: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .mt-lg-1,\n .my-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mr-lg-1,\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n }\n .mb-lg-1,\n .my-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-lg-1,\n .mx-lg-1 {\n margin-left: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .mt-lg-2,\n .my-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mr-lg-2,\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n }\n .mb-lg-2,\n .my-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-lg-2,\n .mx-lg-2 {\n margin-left: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .mt-lg-3,\n .my-lg-3 {\n margin-top: 1rem !important;\n }\n .mr-lg-3,\n .mx-lg-3 {\n margin-right: 1rem !important;\n }\n .mb-lg-3,\n .my-lg-3 {\n margin-bottom: 1rem !important;\n }\n .ml-lg-3,\n .mx-lg-3 {\n margin-left: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .mt-lg-4,\n .my-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mr-lg-4,\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n }\n .mb-lg-4,\n .my-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-lg-4,\n .mx-lg-4 {\n margin-left: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .mt-lg-5,\n .my-lg-5 {\n margin-top: 3rem !important;\n }\n .mr-lg-5,\n .mx-lg-5 {\n margin-right: 3rem !important;\n }\n .mb-lg-5,\n .my-lg-5 {\n margin-bottom: 3rem !important;\n }\n .ml-lg-5,\n .mx-lg-5 {\n margin-left: 3rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .pt-lg-0,\n .py-lg-0 {\n padding-top: 0 !important;\n }\n .pr-lg-0,\n .px-lg-0 {\n padding-right: 0 !important;\n }\n .pb-lg-0,\n .py-lg-0 {\n padding-bottom: 0 !important;\n }\n .pl-lg-0,\n .px-lg-0 {\n padding-left: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .pt-lg-1,\n .py-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pr-lg-1,\n .px-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pb-lg-1,\n .py-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-lg-1,\n .px-lg-1 {\n padding-left: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .pt-lg-2,\n .py-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pr-lg-2,\n .px-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pb-lg-2,\n .py-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-lg-2,\n .px-lg-2 {\n padding-left: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .pt-lg-3,\n .py-lg-3 {\n padding-top: 1rem !important;\n }\n .pr-lg-3,\n .px-lg-3 {\n padding-right: 1rem !important;\n }\n .pb-lg-3,\n .py-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pl-lg-3,\n .px-lg-3 {\n padding-left: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .pt-lg-4,\n .py-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pr-lg-4,\n .px-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pb-lg-4,\n .py-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-lg-4,\n .px-lg-4 {\n padding-left: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .pt-lg-5,\n .py-lg-5 {\n padding-top: 3rem !important;\n }\n .pr-lg-5,\n .px-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-5,\n .py-lg-5 {\n padding-bottom: 3rem !important;\n }\n .pl-lg-5,\n .px-lg-5 {\n padding-left: 3rem !important;\n }\n .m-lg-n1 {\n margin: -0.25rem !important;\n }\n .mt-lg-n1,\n .my-lg-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-lg-n1,\n .mx-lg-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-lg-n1,\n .my-lg-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-lg-n1,\n .mx-lg-n1 {\n margin-left: -0.25rem !important;\n }\n .m-lg-n2 {\n margin: -0.5rem !important;\n }\n .mt-lg-n2,\n .my-lg-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-lg-n2,\n .mx-lg-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-lg-n2,\n .my-lg-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-lg-n2,\n .mx-lg-n2 {\n margin-left: -0.5rem !important;\n }\n .m-lg-n3 {\n margin: -1rem !important;\n }\n .mt-lg-n3,\n .my-lg-n3 {\n margin-top: -1rem !important;\n }\n .mr-lg-n3,\n .mx-lg-n3 {\n margin-right: -1rem !important;\n }\n .mb-lg-n3,\n .my-lg-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-lg-n3,\n .mx-lg-n3 {\n margin-left: -1rem !important;\n }\n .m-lg-n4 {\n margin: -1.5rem !important;\n }\n .mt-lg-n4,\n .my-lg-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-lg-n4,\n .mx-lg-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-lg-n4,\n .my-lg-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-lg-n4,\n .mx-lg-n4 {\n margin-left: -1.5rem !important;\n }\n .m-lg-n5 {\n margin: -3rem !important;\n }\n .mt-lg-n5,\n .my-lg-n5 {\n margin-top: -3rem !important;\n }\n .mr-lg-n5,\n .mx-lg-n5 {\n margin-right: -3rem !important;\n }\n .mb-lg-n5,\n .my-lg-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-lg-n5,\n .mx-lg-n5 {\n margin-left: -3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mt-lg-auto,\n .my-lg-auto {\n margin-top: auto !important;\n }\n .mr-lg-auto,\n .mx-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-auto,\n .my-lg-auto {\n margin-bottom: auto !important;\n }\n .ml-lg-auto,\n .mx-lg-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 1200px) {\n .m-xl-0 {\n margin: 0 !important;\n }\n .mt-xl-0,\n .my-xl-0 {\n margin-top: 0 !important;\n }\n .mr-xl-0,\n .mx-xl-0 {\n margin-right: 0 !important;\n }\n .mb-xl-0,\n .my-xl-0 {\n margin-bottom: 0 !important;\n }\n .ml-xl-0,\n .mx-xl-0 {\n margin-left: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .mt-xl-1,\n .my-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mr-xl-1,\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n }\n .mb-xl-1,\n .my-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-xl-1,\n .mx-xl-1 {\n margin-left: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .mt-xl-2,\n .my-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mr-xl-2,\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n }\n .mb-xl-2,\n .my-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-xl-2,\n .mx-xl-2 {\n margin-left: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .mt-xl-3,\n .my-xl-3 {\n margin-top: 1rem !important;\n }\n .mr-xl-3,\n .mx-xl-3 {\n margin-right: 1rem !important;\n }\n .mb-xl-3,\n .my-xl-3 {\n margin-bottom: 1rem !important;\n }\n .ml-xl-3,\n .mx-xl-3 {\n margin-left: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .mt-xl-4,\n .my-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mr-xl-4,\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n }\n .mb-xl-4,\n .my-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-xl-4,\n .mx-xl-4 {\n margin-left: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .mt-xl-5,\n .my-xl-5 {\n margin-top: 3rem !important;\n }\n .mr-xl-5,\n .mx-xl-5 {\n margin-right: 3rem !important;\n }\n .mb-xl-5,\n .my-xl-5 {\n margin-bottom: 3rem !important;\n }\n .ml-xl-5,\n .mx-xl-5 {\n margin-left: 3rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .pt-xl-0,\n .py-xl-0 {\n padding-top: 0 !important;\n }\n .pr-xl-0,\n .px-xl-0 {\n padding-right: 0 !important;\n }\n .pb-xl-0,\n .py-xl-0 {\n padding-bottom: 0 !important;\n }\n .pl-xl-0,\n .px-xl-0 {\n padding-left: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .pt-xl-1,\n .py-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pr-xl-1,\n .px-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pb-xl-1,\n .py-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-xl-1,\n .px-xl-1 {\n padding-left: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .pt-xl-2,\n .py-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pr-xl-2,\n .px-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pb-xl-2,\n .py-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-xl-2,\n .px-xl-2 {\n padding-left: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .pt-xl-3,\n .py-xl-3 {\n padding-top: 1rem !important;\n }\n .pr-xl-3,\n .px-xl-3 {\n padding-right: 1rem !important;\n }\n .pb-xl-3,\n .py-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pl-xl-3,\n .px-xl-3 {\n padding-left: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .pt-xl-4,\n .py-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pr-xl-4,\n .px-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pb-xl-4,\n .py-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-xl-4,\n .px-xl-4 {\n padding-left: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .pt-xl-5,\n .py-xl-5 {\n padding-top: 3rem !important;\n }\n .pr-xl-5,\n .px-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-5,\n .py-xl-5 {\n padding-bottom: 3rem !important;\n }\n .pl-xl-5,\n .px-xl-5 {\n padding-left: 3rem !important;\n }\n .m-xl-n1 {\n margin: -0.25rem !important;\n }\n .mt-xl-n1,\n .my-xl-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-xl-n1,\n .mx-xl-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-xl-n1,\n .my-xl-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-xl-n1,\n .mx-xl-n1 {\n margin-left: -0.25rem !important;\n }\n .m-xl-n2 {\n margin: -0.5rem !important;\n }\n .mt-xl-n2,\n .my-xl-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-xl-n2,\n .mx-xl-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-xl-n2,\n .my-xl-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-xl-n2,\n .mx-xl-n2 {\n margin-left: -0.5rem !important;\n }\n .m-xl-n3 {\n margin: -1rem !important;\n }\n .mt-xl-n3,\n .my-xl-n3 {\n margin-top: -1rem !important;\n }\n .mr-xl-n3,\n .mx-xl-n3 {\n margin-right: -1rem !important;\n }\n .mb-xl-n3,\n .my-xl-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-xl-n3,\n .mx-xl-n3 {\n margin-left: -1rem !important;\n }\n .m-xl-n4 {\n margin: -1.5rem !important;\n }\n .mt-xl-n4,\n .my-xl-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-xl-n4,\n .mx-xl-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-xl-n4,\n .my-xl-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-xl-n4,\n .mx-xl-n4 {\n margin-left: -1.5rem !important;\n }\n .m-xl-n5 {\n margin: -3rem !important;\n }\n .mt-xl-n5,\n .my-xl-n5 {\n margin-top: -3rem !important;\n }\n .mr-xl-n5,\n .mx-xl-n5 {\n margin-right: -3rem !important;\n }\n .mb-xl-n5,\n .my-xl-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-xl-n5,\n .mx-xl-n5 {\n margin-left: -3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mt-xl-auto,\n .my-xl-auto {\n margin-top: auto !important;\n }\n .mr-xl-auto,\n .mx-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-auto,\n .my-xl-auto {\n margin-bottom: auto !important;\n }\n .ml-xl-auto,\n .mx-xl-auto {\n margin-left: auto !important;\n }\n}\n/*# sourceMappingURL=bootstrap-grid.css.map */","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n // Single container class with breakpoint max-widths\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n\n // 100% wide container at all breakpoints\n .container-fluid {\n @include make-container();\n }\n\n // Responsive containers that are 100% wide until a breakpoint\n @each $breakpoint, $container-max-width in $container-max-widths {\n .container-#{$breakpoint} {\n @extend .container-fluid;\n }\n\n @include media-breakpoint-up($breakpoint, $grid-breakpoints) {\n %responsive-container-#{$breakpoint} {\n max-width: $container-max-width;\n }\n\n @each $name, $width in $grid-breakpoints {\n @if ($container-max-width > $width or $breakpoint == $name) {\n .container#{breakpoint-infix($name, $grid-breakpoints)} {\n @extend %responsive-container-#{$breakpoint};\n }\n }\n }\n }\n }\n}\n\n\n// Row\n//\n// Rows contain your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container($gutter: $grid-gutter-width) {\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row($gutter: $grid-gutter-width) {\n display: flex;\n flex-wrap: wrap;\n margin-right: -$gutter / 2;\n margin-left: -$gutter / 2;\n}\n\n@mixin make-col-ready($gutter: $grid-gutter-width) {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-auto() {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%; // Reset earlier grid tiers\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n\n// Row columns\n//\n// Specify on a parent element(e.g., .row) to force immediate children into NN\n// numberof columns. Supports wrapping to new lines, but does not do a Masonry\n// style grid.\n@mixin row-cols($count) {\n & > * {\n flex: 0 0 100% / $count;\n max-width: 100% / $count;\n }\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n != null and $n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n\n @for $i from 1 through $grid-row-columns {\n .row-cols#{$infix}-#{$i} {\n @include row-cols($i);\n }\n }\n\n .col#{$infix}-auto {\n @include make-col-auto();\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","// stylelint-disable declaration-no-important\n\n//\n// Utilities for common `display` values\n//\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n @each $value in $displays {\n .d#{$infix}-#{$value} { display: $value !important; }\n }\n }\n}\n\n\n//\n// Utilities for toggling `display` in print\n//\n\n@media print {\n @each $value in $displays {\n .d-print-#{$value} { display: $value !important; }\n }\n}\n","// stylelint-disable declaration-no-important\n\n// Flex variation\n//\n// Custom styles for additional flex alignment options.\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .flex#{$infix}-row { flex-direction: row !important; }\n .flex#{$infix}-column { flex-direction: column !important; }\n .flex#{$infix}-row-reverse { flex-direction: row-reverse !important; }\n .flex#{$infix}-column-reverse { flex-direction: column-reverse !important; }\n\n .flex#{$infix}-wrap { flex-wrap: wrap !important; }\n .flex#{$infix}-nowrap { flex-wrap: nowrap !important; }\n .flex#{$infix}-wrap-reverse { flex-wrap: wrap-reverse !important; }\n .flex#{$infix}-fill { flex: 1 1 auto !important; }\n .flex#{$infix}-grow-0 { flex-grow: 0 !important; }\n .flex#{$infix}-grow-1 { flex-grow: 1 !important; }\n .flex#{$infix}-shrink-0 { flex-shrink: 0 !important; }\n .flex#{$infix}-shrink-1 { flex-shrink: 1 !important; }\n\n .justify-content#{$infix}-start { justify-content: flex-start !important; }\n .justify-content#{$infix}-end { justify-content: flex-end !important; }\n .justify-content#{$infix}-center { justify-content: center !important; }\n .justify-content#{$infix}-between { justify-content: space-between !important; }\n .justify-content#{$infix}-around { justify-content: space-around !important; }\n\n .align-items#{$infix}-start { align-items: flex-start !important; }\n .align-items#{$infix}-end { align-items: flex-end !important; }\n .align-items#{$infix}-center { align-items: center !important; }\n .align-items#{$infix}-baseline { align-items: baseline !important; }\n .align-items#{$infix}-stretch { align-items: stretch !important; }\n\n .align-content#{$infix}-start { align-content: flex-start !important; }\n .align-content#{$infix}-end { align-content: flex-end !important; }\n .align-content#{$infix}-center { align-content: center !important; }\n .align-content#{$infix}-between { align-content: space-between !important; }\n .align-content#{$infix}-around { align-content: space-around !important; }\n .align-content#{$infix}-stretch { align-content: stretch !important; }\n\n .align-self#{$infix}-auto { align-self: auto !important; }\n .align-self#{$infix}-start { align-self: flex-start !important; }\n .align-self#{$infix}-end { align-self: flex-end !important; }\n .align-self#{$infix}-center { align-self: center !important; }\n .align-self#{$infix}-baseline { align-self: baseline !important; }\n .align-self#{$infix}-stretch { align-self: stretch !important; }\n }\n}\n","// stylelint-disable declaration-no-important\n\n// Margin and Padding\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n @each $prop, $abbrev in (margin: m, padding: p) {\n @each $size, $length in $spacers {\n .#{$abbrev}#{$infix}-#{$size} { #{$prop}: $length !important; }\n .#{$abbrev}t#{$infix}-#{$size},\n .#{$abbrev}y#{$infix}-#{$size} {\n #{$prop}-top: $length !important;\n }\n .#{$abbrev}r#{$infix}-#{$size},\n .#{$abbrev}x#{$infix}-#{$size} {\n #{$prop}-right: $length !important;\n }\n .#{$abbrev}b#{$infix}-#{$size},\n .#{$abbrev}y#{$infix}-#{$size} {\n #{$prop}-bottom: $length !important;\n }\n .#{$abbrev}l#{$infix}-#{$size},\n .#{$abbrev}x#{$infix}-#{$size} {\n #{$prop}-left: $length !important;\n }\n }\n }\n\n // Negative margins (e.g., where `.mb-n1` is negative version of `.mb-1`)\n @each $size, $length in $spacers {\n @if $size != 0 {\n .m#{$infix}-n#{$size} { margin: -$length !important; }\n .mt#{$infix}-n#{$size},\n .my#{$infix}-n#{$size} {\n margin-top: -$length !important;\n }\n .mr#{$infix}-n#{$size},\n .mx#{$infix}-n#{$size} {\n margin-right: -$length !important;\n }\n .mb#{$infix}-n#{$size},\n .my#{$infix}-n#{$size} {\n margin-bottom: -$length !important;\n }\n .ml#{$infix}-n#{$size},\n .mx#{$infix}-n#{$size} {\n margin-left: -$length !important;\n }\n }\n }\n\n // Some special margin utils\n .m#{$infix}-auto { margin: auto !important; }\n .mt#{$infix}-auto,\n .my#{$infix}-auto {\n margin-top: auto !important;\n }\n .mr#{$infix}-auto,\n .mx#{$infix}-auto {\n margin-right: auto !important;\n }\n .mb#{$infix}-auto,\n .my#{$infix}-auto {\n margin-bottom: auto !important;\n }\n .ml#{$infix}-auto,\n .mx#{$infix}-auto {\n margin-left: auto !important;\n }\n }\n}\n"]}
@@ -0,0 +1,327 @@
1
+ /*!
2
+ * Bootstrap Reboot v4.4.1 (https://getbootstrap.com/)
3
+ * Copyright 2011-2019 The Bootstrap Authors
4
+ * Copyright 2011-2019 Twitter, Inc.
5
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6
+ * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
7
+ */
8
+ *,
9
+ *::before,
10
+ *::after {
11
+ box-sizing: border-box;
12
+ }
13
+
14
+ html {
15
+ font-family: sans-serif;
16
+ line-height: 1.15;
17
+ -webkit-text-size-adjust: 100%;
18
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
19
+ }
20
+
21
+ article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
22
+ display: block;
23
+ }
24
+
25
+ body {
26
+ margin: 0;
27
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
28
+ font-size: 1rem;
29
+ font-weight: 400;
30
+ line-height: 1.5;
31
+ color: #212529;
32
+ text-align: left;
33
+ background-color: #fff;
34
+ }
35
+
36
+ [tabindex="-1"]:focus:not(:focus-visible) {
37
+ outline: 0 !important;
38
+ }
39
+
40
+ hr {
41
+ box-sizing: content-box;
42
+ height: 0;
43
+ overflow: visible;
44
+ }
45
+
46
+ h1, h2, h3, h4, h5, h6 {
47
+ margin-top: 0;
48
+ margin-bottom: 0.5rem;
49
+ }
50
+
51
+ p {
52
+ margin-top: 0;
53
+ margin-bottom: 1rem;
54
+ }
55
+
56
+ abbr[title],
57
+ abbr[data-original-title] {
58
+ text-decoration: underline;
59
+ -webkit-text-decoration: underline dotted;
60
+ text-decoration: underline dotted;
61
+ cursor: help;
62
+ border-bottom: 0;
63
+ -webkit-text-decoration-skip-ink: none;
64
+ text-decoration-skip-ink: none;
65
+ }
66
+
67
+ address {
68
+ margin-bottom: 1rem;
69
+ font-style: normal;
70
+ line-height: inherit;
71
+ }
72
+
73
+ ol,
74
+ ul,
75
+ dl {
76
+ margin-top: 0;
77
+ margin-bottom: 1rem;
78
+ }
79
+
80
+ ol ol,
81
+ ul ul,
82
+ ol ul,
83
+ ul ol {
84
+ margin-bottom: 0;
85
+ }
86
+
87
+ dt {
88
+ font-weight: 700;
89
+ }
90
+
91
+ dd {
92
+ margin-bottom: .5rem;
93
+ margin-left: 0;
94
+ }
95
+
96
+ blockquote {
97
+ margin: 0 0 1rem;
98
+ }
99
+
100
+ b,
101
+ strong {
102
+ font-weight: bolder;
103
+ }
104
+
105
+ small {
106
+ font-size: 80%;
107
+ }
108
+
109
+ sub,
110
+ sup {
111
+ position: relative;
112
+ font-size: 75%;
113
+ line-height: 0;
114
+ vertical-align: baseline;
115
+ }
116
+
117
+ sub {
118
+ bottom: -.25em;
119
+ }
120
+
121
+ sup {
122
+ top: -.5em;
123
+ }
124
+
125
+ a {
126
+ color: #007bff;
127
+ text-decoration: none;
128
+ background-color: transparent;
129
+ }
130
+
131
+ a:hover {
132
+ color: #0056b3;
133
+ text-decoration: underline;
134
+ }
135
+
136
+ a:not([href]) {
137
+ color: inherit;
138
+ text-decoration: none;
139
+ }
140
+
141
+ a:not([href]):hover {
142
+ color: inherit;
143
+ text-decoration: none;
144
+ }
145
+
146
+ pre,
147
+ code,
148
+ kbd,
149
+ samp {
150
+ font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
151
+ font-size: 1em;
152
+ }
153
+
154
+ pre {
155
+ margin-top: 0;
156
+ margin-bottom: 1rem;
157
+ overflow: auto;
158
+ }
159
+
160
+ figure {
161
+ margin: 0 0 1rem;
162
+ }
163
+
164
+ img {
165
+ vertical-align: middle;
166
+ border-style: none;
167
+ }
168
+
169
+ svg {
170
+ overflow: hidden;
171
+ vertical-align: middle;
172
+ }
173
+
174
+ table {
175
+ border-collapse: collapse;
176
+ }
177
+
178
+ caption {
179
+ padding-top: 0.75rem;
180
+ padding-bottom: 0.75rem;
181
+ color: #6c757d;
182
+ text-align: left;
183
+ caption-side: bottom;
184
+ }
185
+
186
+ th {
187
+ text-align: inherit;
188
+ }
189
+
190
+ label {
191
+ display: inline-block;
192
+ margin-bottom: 0.5rem;
193
+ }
194
+
195
+ button {
196
+ border-radius: 0;
197
+ }
198
+
199
+ button:focus {
200
+ outline: 1px dotted;
201
+ outline: 5px auto -webkit-focus-ring-color;
202
+ }
203
+
204
+ input,
205
+ button,
206
+ select,
207
+ optgroup,
208
+ textarea {
209
+ margin: 0;
210
+ font-family: inherit;
211
+ font-size: inherit;
212
+ line-height: inherit;
213
+ }
214
+
215
+ button,
216
+ input {
217
+ overflow: visible;
218
+ }
219
+
220
+ button,
221
+ select {
222
+ text-transform: none;
223
+ }
224
+
225
+ select {
226
+ word-wrap: normal;
227
+ }
228
+
229
+ button,
230
+ [type="button"],
231
+ [type="reset"],
232
+ [type="submit"] {
233
+ -webkit-appearance: button;
234
+ }
235
+
236
+ button:not(:disabled),
237
+ [type="button"]:not(:disabled),
238
+ [type="reset"]:not(:disabled),
239
+ [type="submit"]:not(:disabled) {
240
+ cursor: pointer;
241
+ }
242
+
243
+ button::-moz-focus-inner,
244
+ [type="button"]::-moz-focus-inner,
245
+ [type="reset"]::-moz-focus-inner,
246
+ [type="submit"]::-moz-focus-inner {
247
+ padding: 0;
248
+ border-style: none;
249
+ }
250
+
251
+ input[type="radio"],
252
+ input[type="checkbox"] {
253
+ box-sizing: border-box;
254
+ padding: 0;
255
+ }
256
+
257
+ input[type="date"],
258
+ input[type="time"],
259
+ input[type="datetime-local"],
260
+ input[type="month"] {
261
+ -webkit-appearance: listbox;
262
+ }
263
+
264
+ textarea {
265
+ overflow: auto;
266
+ resize: vertical;
267
+ }
268
+
269
+ fieldset {
270
+ min-width: 0;
271
+ padding: 0;
272
+ margin: 0;
273
+ border: 0;
274
+ }
275
+
276
+ legend {
277
+ display: block;
278
+ width: 100%;
279
+ max-width: 100%;
280
+ padding: 0;
281
+ margin-bottom: .5rem;
282
+ font-size: 1.5rem;
283
+ line-height: inherit;
284
+ color: inherit;
285
+ white-space: normal;
286
+ }
287
+
288
+ progress {
289
+ vertical-align: baseline;
290
+ }
291
+
292
+ [type="number"]::-webkit-inner-spin-button,
293
+ [type="number"]::-webkit-outer-spin-button {
294
+ height: auto;
295
+ }
296
+
297
+ [type="search"] {
298
+ outline-offset: -2px;
299
+ -webkit-appearance: none;
300
+ }
301
+
302
+ [type="search"]::-webkit-search-decoration {
303
+ -webkit-appearance: none;
304
+ }
305
+
306
+ ::-webkit-file-upload-button {
307
+ font: inherit;
308
+ -webkit-appearance: button;
309
+ }
310
+
311
+ output {
312
+ display: inline-block;
313
+ }
314
+
315
+ summary {
316
+ display: list-item;
317
+ cursor: pointer;
318
+ }
319
+
320
+ template {
321
+ display: none;
322
+ }
323
+
324
+ [hidden] {
325
+ display: none !important;
326
+ }
327
+ /*# sourceMappingURL=bootstrap-reboot.css.map */