From 25dc35c6242d0a5da2ca9be3aba59c1f7f405b54 Mon Sep 17 00:00:00 2001 From: Mic Lo Date: Sat, 2 May 2020 01:11:56 +0200 Subject: [PATCH] Initial commit --- .gitignore | 90 +++ HelperConstants.swift | 39 + Icon/1024px.png | Bin 0 -> 91898 bytes Icon/128px.png | Bin 0 -> 7835 bytes Icon/16px.png | Bin 0 -> 761 bytes Icon/256px.png | Bin 0 -> 17597 bytes Icon/32px.png | Bin 0 -> 1591 bytes Icon/512px.png | Bin 0 -> 39410 bytes Icon/64px.png | Bin 0 -> 3583 bytes Icon/Zeichnung.svg | 113 +++ Icon/Zeichnung2.svg | 240 ++++++ Icon/Zeichnung3.svg | 304 ++++++++ Icon/Zeichnung3_16px.svg | 249 +++++++ Icon/Zeichnung3_32px.svg | 249 +++++++ ImageWriter.xcodeproj/project.pbxproj | 694 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../com.xxmicloxx.ImageWriterHelper.xcscheme | 79 ++ ImageWriter/AppDelegate.swift | 110 +++ ImageWriter/AppProtocol.swift | 16 + .../AppIcon.appiconset/1024px.png | Bin 0 -> 91898 bytes .../AppIcon.appiconset/128px.png | Bin 0 -> 7835 bytes .../AppIcon.appiconset/16px.png | Bin 0 -> 761 bytes .../AppIcon.appiconset/256px-1.png | Bin 0 -> 17597 bytes .../AppIcon.appiconset/256px.png | Bin 0 -> 17597 bytes .../AppIcon.appiconset/32px-1.png | Bin 0 -> 1591 bytes .../AppIcon.appiconset/32px.png | Bin 0 -> 1591 bytes .../AppIcon.appiconset/512px-1.png | Bin 0 -> 39410 bytes .../AppIcon.appiconset/512px.png | Bin 0 -> 39410 bytes .../AppIcon.appiconset/64px.png | Bin 0 -> 3583 bytes .../AppIcon.appiconset/Contents.json | 68 ++ ImageWriter/Assets.xcassets/Contents.json | 6 + ImageWriter/Base.lproj/Main.storyboard | 415 +++++++++++ ImageWriter/DeviceEnumerator.swift | 150 ++++ ImageWriter/DownloadsObserver.swift | 36 + ImageWriter/HelperConnection.swift | 193 +++++ ImageWriter/IOUtil.swift | 25 + ImageWriter/ImageWriter.entitlements | 8 + ImageWriter/Info.plist | 45 ++ ImageWriter/ViewController.swift | 682 +++++++++++++++++ ImageWriterHelper/DiskHelper.swift | 324 ++++++++ ImageWriterHelper/Helper-Info.plist | 22 + ImageWriterHelper/Helper-Launchd.plist | 15 + ImageWriterHelper/Helper.swift | 173 +++++ ImageWriterHelper/HelperProtocol.swift | 26 + ImageWriterHelper/HelperUtil.swift | 53 ++ ImageWriterHelper/IOUtil.swift | 331 +++++++++ ImageWriterHelper/MountHelper.swift | 293 ++++++++ ImageWriterHelper/Writer.swift | 281 +++++++ ...m.xxmicloxx.ImageWriterHelper.entitlements | 8 + ImageWriterHelper/main.swift | 11 + ImageWriterHelper/uefi-ntfs.img | Bin 0 -> 524288 bytes LICENSE | 674 +++++++++++++++++ README.md | 12 + 54 files changed, 6049 insertions(+) create mode 100644 .gitignore create mode 100644 HelperConstants.swift create mode 100644 Icon/1024px.png create mode 100644 Icon/128px.png create mode 100644 Icon/16px.png create mode 100644 Icon/256px.png create mode 100644 Icon/32px.png create mode 100644 Icon/512px.png create mode 100644 Icon/64px.png create mode 100644 Icon/Zeichnung.svg create mode 100644 Icon/Zeichnung2.svg create mode 100644 Icon/Zeichnung3.svg create mode 100644 Icon/Zeichnung3_16px.svg create mode 100644 Icon/Zeichnung3_32px.svg create mode 100644 ImageWriter.xcodeproj/project.pbxproj create mode 100644 ImageWriter.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 ImageWriter.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ImageWriter.xcodeproj/xcshareddata/xcschemes/com.xxmicloxx.ImageWriterHelper.xcscheme create mode 100644 ImageWriter/AppDelegate.swift create mode 100644 ImageWriter/AppProtocol.swift create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/1024px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/128px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/16px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/256px-1.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/256px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/32px-1.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/32px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/512px-1.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/512px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/64px.png create mode 100644 ImageWriter/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ImageWriter/Assets.xcassets/Contents.json create mode 100644 ImageWriter/Base.lproj/Main.storyboard create mode 100644 ImageWriter/DeviceEnumerator.swift create mode 100644 ImageWriter/DownloadsObserver.swift create mode 100644 ImageWriter/HelperConnection.swift create mode 100644 ImageWriter/IOUtil.swift create mode 100644 ImageWriter/ImageWriter.entitlements create mode 100644 ImageWriter/Info.plist create mode 100644 ImageWriter/ViewController.swift create mode 100644 ImageWriterHelper/DiskHelper.swift create mode 100755 ImageWriterHelper/Helper-Info.plist create mode 100755 ImageWriterHelper/Helper-Launchd.plist create mode 100644 ImageWriterHelper/Helper.swift create mode 100644 ImageWriterHelper/HelperProtocol.swift create mode 100644 ImageWriterHelper/HelperUtil.swift create mode 100644 ImageWriterHelper/IOUtil.swift create mode 100644 ImageWriterHelper/MountHelper.swift create mode 100644 ImageWriterHelper/Writer.swift create mode 100644 ImageWriterHelper/com.xxmicloxx.ImageWriterHelper.entitlements create mode 100644 ImageWriterHelper/main.swift create mode 100644 ImageWriterHelper/uefi-ntfs.img create mode 100644 LICENSE create mode 100644 README.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..330d167 --- /dev/null +++ b/.gitignore @@ -0,0 +1,90 @@ +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## User settings +xcuserdata/ + +## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) +*.xcscmblueprint +*.xccheckout + +## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) +build/ +DerivedData/ +*.moved-aside +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 + +## Obj-C/Swift specific +*.hmap + +## App packaging +*.ipa +*.dSYM.zip +*.dSYM + +## Playgrounds +timeline.xctimeline +playground.xcworkspace + +# Swift Package Manager +# +# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. +# Packages/ +# Package.pins +# Package.resolved +# *.xcodeproj +# +# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata +# hence it is not needed unless you have added a package configuration file to your project +# .swiftpm + +.build/ + +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +# Pods/ +# +# Add this line if you want to avoid checking in source code from the Xcode workspace +# *.xcworkspace + +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. +# Carthage/Checkouts + +Carthage/Build/ + +# Accio dependency management +Dependencies/ +.accio/ + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. +# Instead, use fastlane to re-generate the screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/#source-control + +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots/**/*.png +fastlane/test_output + +# Code Injection +# +# After new code Injection tools there's a generated folder /iOSInjectionProject +# https://github.com/johnno1962/injectionforxcode + +iOSInjectionProject/ diff --git a/HelperConstants.swift b/HelperConstants.swift new file mode 100644 index 0000000..506dd40 --- /dev/null +++ b/HelperConstants.swift @@ -0,0 +1,39 @@ +// +// HelperConstants.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +class HelperConstants { + @available(*, unavailable) private init() {} + + static let Identifier = "com.xxmicloxx.ImageWriterHelper" + + static let WritePermission = "com.xxmicloxx.ImageWriterHelper.write" + static let CancelPermission = "com.xxmicloxx.ImageWriterHelper.cancel" + static let SubscribePermission = "com.xxmicloxx.ImageWriterHelper.subscribe" + static let StopPermission = "com.xxmicloxx.ImageWriterHelper.stop" + static let EjectPermission = "com.xxmicloxx.ImageWriterHelper.eject" + + static let AllPermissions = [ + HelperConstants.WritePermission, + HelperConstants.CancelPermission, + HelperConstants.SubscribePermission, + HelperConstants.StopPermission, + HelperConstants.EjectPermission + ] + + static let Version = "1.1.27" +} + +@objc enum HelperError: Int { + case unknownError + case claimError + case cancelledError + case readError + case writeError + case outOfSpaceError +} diff --git a/Icon/1024px.png b/Icon/1024px.png new file mode 100644 index 0000000000000000000000000000000000000000..79f48e3c59695b2946f580e67fdcad113264aa8e GIT binary patch literal 91898 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⋙HAvRxlMx*Qo=H|{A<#|gIQ5d-|P&y#Iiju%WPR# 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 @dqwn2p$sm6 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�+qQR@d5z*YuDh|+Wp2qg}HiQrW zfI^|bD=RB?gNR;ryIoRBVbp%V-$y>5M=qCx)*3#&W5=oMLotvB6_dJiHC_<;xL6RhYei;#(&E{CtFbpg$ zEx|NR6pKY>=2Kx=)`wE5^u~4F{ORc_?(XiMwKIZk+o;uQD3wZm(=ZO&dNteM;Wd4v(<$V*xlU?H#awbSeEsY zh~mj(N=H$25XbS(`T6-wtJR`7jsXCsX<~VKnb+6X`{{K0vt?QDN5}L8%)Azc;ioVR r{V0m=qbRx`3| literal 0 HcmV?d00001 diff --git a/Icon/256px.png b/Icon/256px.png new file mode 100644 index 0000000000000000000000000000000000000000..d1101de9bbc8f968514c5fc1afa5c04929511e76 GIT binary patch literal 17597 zcmb8Xby$?$7d3p(&?TMHAT1yuBGL`g(jbV^AkqypbeAY8T_W|+A}Jst(j_1zB@F`7 zGvDF&Uf=)kJJ*O_0yFo0&e?mfz1G?jt*xm{ginVLK@gFuih?c#!N5OZ5H2?O%gpVg z4fqSsMa9@1f}Y&D{R8{am>&xMlh#Ag$m7`?8xL}C4~&`-TTKulfnG?--F8+_{&+PX^l>Z$oxCrgbNWHi{EVd_Gi zVgpGea9wKi>>PMy>}SZHXIHfhp# z@bql*D>vW1x|mdM)Elh)a`wT0zj-rp5rrK9v+T#^%C(mbBppZ zyWX;?ZMt}+XBs;1oa>3#FMhgxKW-Hu!L7%E2ge4>EEmk|wEb~w=J)XOYP`M}K}ezg z&A(}RP()~?U`QxrjI4l)I5Yn%&jBk|LqN^nT3b|Pl{sLQ`Dtc{vwUjXkMQ&wk2J9} zal<5Mb5@4gWpVR3+oNTH^YZdC;b5*|r;Z7A82K8P2g6N47hi~sg%`3X!Ee=d`DpI9 zRXn&coIS5+Vj{j|Co(*<g?=nKi(WU@LdkZxzpIx zboD@&yZ^fk+zKn{ahJc(J!ndJL_+xAC0LpEf`Z=;b+fHTWqMR81iA}PZM#qT2IsOh zH><#-k}2qX1xHKbNZ|>DoqQiNLxhbNc_Qa`nbe7)-EpyzqW?dFS8&{aMD1^Z!)aNRhzW=c`j5o zEnW(&udjRm@%R$0OTaK#TX0tJF~1~FJMKil=F4tS2Rd%Z#{X4!1d(H|-*%Y+W+gn| znwd9*f|(b&Mw+lQmG;~#10{gC7$hR+P(P=xn++IRJ|JfuE_?hR-(7K<2-sllvY7MF z2PUv0E`0oOIDRer@-n3RSOUC5w_u*V_{p=M<)txW zxYfF4VQR%8;Av7Bp;jF8iRP^@hsFfM^XJbIf$Q%LQ76CLM?7B?=`#zfSz!tKh1s-k zgj1WR2XqrXlF&9V_-7q1m(R2}RDc)2OoGc0)FHiP{_vSL1y+LzgSZIYP?V+OTU4wJ z0)g&Ll)C)We09))=0ZYNib*83@TlCR3}Tt%Y120khcbjW=f8dX#w!?;_rVB$aD1_R zb|pLEp@yG*|Dzs{U4x082;Il2Z9QY$U*MFbhT;%QAvUwU_hq$7aU*er9wbr9IE6{J zd);pD!-o$gP4x8YC30d5Pd)esBQU{1|F%o%{tX_5rKmG%Co<~LFuLWz?J6#wJ^Z@G zYtJO`pzSOOzms^DHHyF(7A3!NFa?QJw_k2oSP!O3I@B0B%fuZ}RUWy~NQR#bb+S-!Z8aEf9)|{Cd#;gg${GH{kDp@EKUNQW|H{ekO5vEu01~WB3_tw8Fg2 zuj{$@!fDZzLmLBYNsxqO)5vD%{NC_oP3t>rw$xzr>PUm~cyaY89nGqyrn8|LbN{`q z(j32S`iKC`zbBS7;I%YW4zn^dV}j6EONjESs(pX8;&CnsZgUn(8f^YF0>(tn`-_(W zO8MF{)id(oS*#1AX> zL?R!gAb8;$AE{j8JCPV*Gf(dgkt-c*G??5c#Kx#Mc`Y}BiwRHD%#pa5pyV}ZO~^wq zL%v23IC$MZZgSDro8({}7cETrQYi~5{c<)}j(nCq#3z1#9oevyFVW_CFGv?Zx^qez ziBr>_+`V#ccXN5Vgg6;f*0MaGwEU{ukB{uiTTY}E?ma|Z9Z2h0SfHci@&)5II3z~8 zw>-MGJiglmMQC$T=upavh$Xn^N+VE)O-n&nOi!LXk)+YZ#458S(1&r6oa{SV_^!Wi zzFk5DZG3M=VKc1H)um;@MU39}-g&c?Jr@Ojx;h69;n9}UN{g>VPAE8;D1^lMawrZd zJ=G|e%#ut#H*(Zy$w~AsIJt#y5}Bk?I^eWNd*(BX2Bt4>zU^G&eJLMm|AqR4CT9&c{`W^ohjQ=f!%i;0^f4g+^EQ#GDhcK4i=tiOk7i z{Jh}oV)oUOikodpEoD{g{3gh!ZE=*f*e8!mOJ=YjQu;^N|{>u&-5k{xQ zR$7M!apz}Z*+~IdCY4l67sK9pV?7>CMHKJV!V3xtbR=i?yb%BTq)|sG+uXo^^bymP zYwPI(7L+n}t!PkA1WX&9W@8;1z6j+IJWh~DAf!KN+Wv5_8{;vmvmv^?y2_u}A~Q+L zRrARqjvq-Aut=a4wox&l3jGSz&C(zHCy5u^e{sM1w}-x*st)qxjEKPWEyet+14}w; zw>(&ETS}Mk{i_A`?&%FVCsViJ)_u!NaFWg^a#5Hm1DKTtyv^`su{$CfAmmo7TK3_J zI&XP2igoc~zX|=Ii!xx$*~H+~{NNMtErt>STmCl6C%c$5xj|;EWY_veDC3860==)p z_jlYKaU9oHPHKKPpaxb@1nCYN^&PGD$S87)Ha0C;T8W%Fu`hIg zf4^e)R5^CRxo@$}A8bLMLHRv>c+ZjYgor_f5v(m}GGl!F&S34KUmHtoH1o7MA$E7s zymQOzn!)usuRo(K#DCchm}e+uRL+@v*OCVr{da4K{Mw}WwI(_{AwPfrlp&3@!-g^& zH0tKh_I8M7X{cK9+etWcm$d6|1@&xk{aUvk4At)i2Ia4E%BLLq_)Y5nD7Be)c+ONk zzq2MA6l`VyDV(2bN#C4IBG6}uCBe^$=6Xh{;X^i|-76{xJmLQ7O4F~$5+Zc*MZ?nL zSH}{GJ5??G&XHN~FyXLK5e8vAJc#SP+D?UWUDcxu^(S8YzaAs$4dKn7Ah|B|ZrzCa z(P=dzu+5;nGTM`r_F!{d{KhA&q^XG-oVHN&>a@vg&R4rK%t+p<&#bGj&{oVBv~25K zgw+`D)vPlfyKiW`fB&B8&BB)k;>Q)3ZaT2AFtm5a)x!T!F;Tn{n|PlV&&cL+eqEig zK=0Mc?otQS!omV5aBnlw^nJmWG@yJ|7}c<@Tn7!j{aF0fmA=*djhU<-s2dWm=jyX| zwzs|BEVee|JpP2~rU4_|xi|oD`_ZI>r|-Gy3Q^~tS7A%blQ-0dP77ZsA@=Mm&NgX{ z32+8kz7HzvJ=N?y4(NYOGboU!#}iLPL}c-wN#&EqH%mDwsWSZB$fQH*)5&Kkx4HGS zXfv_o2nQQ`bYddqZveL{5=bFYn`?CJq3#u)m^|-4*=_vDm^qd}e{B!EqVLbgQfMxK z^dOI=%jqTuCUC|co%#i;zd^itBLGr|uy*|kY2v8UZ0)_tXR7w736Xe^jbHxToux$t ziQ{3ymwlydC>}vk1EIwyE=VE=mc@&$$rm6X@N{MM%jV3Nw_b zhjrxV!vL^)OfD*EBEdK!7^}OR0e%=Y*WhRYPBjPS#1C6f&a5GPB;VG<-CxbeoRpN5 zO}J>9GI+mSq6eEN8z-v&pAmHi z!?g`BSXP$6;&e>U%piDEOAdB+LKmDzw#;or%)WTw0dP_T2@#P7WtKef|F@fdgwo~x zp~t|V##?1Z+R)HI?ELHVkrae&RYTUVbR5=|cUWy)x3OJPQbOHB=1sQi^<>w}-$pHs zP_ya-Z$ki9!;dcga?y83nSf*SA$azg-g!mX``$e6;FFf^% z-{?Q)O*WL$)AKWur+lmueO5w42!Ppx;`mN*te(osS+>7vJDp|#aF`c%R7RC*JvKd! z9bx&mJq<5%)3?69US;|!r3Uf(_3K~U?ZpP^TNQ|e)zSI+yC(4aUW=bySKCod9XETT zkRRr}pMl-5lMbW?%^|Lu5aqYPYvdK4X}i@?bc7Lxlf6AmW8y6rl#k^yrEj<%H?IDO zush5quRvxfR~kJ-EOFS0X*H(Je78OcjvRg=NWt{j%_{rbOJn-IwZ+B7C`PoLogH+z z=zp-%6;2>XLzv%y&OqWKm`OU<22$jsrRu_+J|aM^c4fc}-t+}f=fK{{sdZxYh>$tm z*-W=IZ;}ei_&b3Bg=i_^-Zgv1E0%vkGA@7IQP&sR(@W}SD850tGQHcdeVg@r)(EXx zN-mWvaDrB`t~cU~zboqG1AWa$(vf+0>1MGwK$lCXe@%w`rj5JaE5|ooF~#Y?c4eA*j@Yi^X%kJ8@8G`q>%v&i$S@ktg-RzzrFb; zZ~5P4vfTHfdrO4Kv~R<6)eO2^7DU(Ei{A?w70!Yhum*t zSeZy7J`z>a$C%}JJoE@{p06Dh@$4c%%EQ}Rxy_hGq<&+==7XfaSI_v8$L=4tu+7kn zpb7)tsxR9-c#9HJwUtC5=CsorX{@cSk9~3w-b?L)UMeCKNnLPlX1jkh2Q3HfQ=r%| zd$IPp+P!&`*!)V1g~SN`rha8zXrE*6lapx6^`aGoYY+?%BTVR~Q`@21 zd(n3@S4~ZgDm<6DLN9A5RsZ-#_u)P$m($bJal<#{E4DP)pp%wS47bzs`YJf*S7!r_nB@C9BDKB;qmlroh_P#2dH zjLeZ)g6ZUvnl;()?L?`T?c|jfW^Rc+z#WtvDck}-+{#Ec%A&#y${DTz5Rk&ft3awh zh7IhuUFw$`XnZ-HHqA}kIN#aXiRImbC!yQomJa$77@p)!IS4oI5Rc%51{EzXvzgbn z5hYcqj*-Qh@TKy8(A+cyHDg;Dn;|6Q)2w#S(xZ-xp}zNO#deo8nI&Tr6KrQfp&z6I z=_nMfe_T^1+}I9fVioIhXB@EQ&LJnZ;=VX&=WEk+9L2wph{(tN8rN^b!G}!R>hL?= zzKEr|e~Cvq{Wkpl&#^IBW{I$N#Tbje{CtBWb$}ETNL6$GFUM(UBZ9~5dVYV4C2(%8 zrWu%)uK83@tSOwKo}%{jY197CnnH3Yp3sV7I4l+K6xFogHGjq(Q_v&wxo%Ih}XE0jfvP(3){3Ib+H6qUJzF z3ksfcc+UUtfp1PC?P1D6*rP8goLV5JZLIp3a+plEP4)G|Gcz+QNHPQ13=CFkYik`1 ztIZ{e<)21Om>g~8U=yCAcnvDf84Fr}bau+f&3kRS%R4$dGd}pIHFJe8eDfpgk-$GJ zW4WrSj-`W0aIs@{gg5-V3?Iuuv{*v9Fy@I6d;b9s6DWTXO^i5~e+CLf%Fk$tk;Lyu zhPZ8UeXFt{<12+A`kSnbsmM7s!=@bG|5_W~yz~~M*ID}N(7=BK&|n)x`yYJV9v0?@ zE`FLOMS)UYiJjm3R}phgpd1tN?_x7o9^6&WmDUeLo}lPC&Hb_}L}tl~Tk{K{j2_K= zDgpCrW+Z|+U4;F$fy@^hnA|Z+OX^~+0=yWCDa!5vNG#LSR1QcXSt-={t5K2cf6WNi zYY~lCmnT~vD=Rf-1Fd`V?ddpDR6Ss+=GE1PkMTT*U9C1l9FI(1AP1~cn zIMf@@P#JP|Wa8PHKb;!mGSDE2RvNtOjibeSooP#!Y7H(5QW&OJ02`KS>U@DcPS23e zkCg}IHQ)T3F9(k|R8OKeL+#&_D{ddze(9|RcQuVFCHU)hkN5()S~N5H=R&iO7eQrOWU%?n}!fH>j& zGU=R6dFf}-+UJ0z_+cXqdeK@hE~Q0_(uw@~dcEJ{McAp<%0F;%b$H&-y$L$bvbecg zLZgJCprWtTNq259m7kwqbb4xPf%{tChiy3g=340WusHpllarH9I}sbFt?ItjuMtFd z0U;&tf8UCrh|el`e8GDu+Z8Km_+Z6FjFkua`@?m$H?X+2_U|LWoH0U#x~;l`Q~1mx zr)OOR0>APAuM!m~kv8~{FZ7do((SP=)-9IY;?&`@Ldb^8!P?AoJ*l7(;>X<7d`3vn z)>Y_g56Df31W4unkz=VeFg-e%(5gP4Zfb8}{Q4QX!(9&_&j*n8q|RpOQmvjmh4yNb ztw<;Lu{(#zX&V2rG<|+G%Y0aD7>CveF;aluQoo4Ve_e6OYi%_Ix5aCF`!c&_EoKtr{GR5v?CiAmv)~11WeW=nJ3lV+4QXE`(fgMyo=>kS z6crVXT7A}1NiW8+K{H|Z{Sg@;MW60}*{PZXgv(Gg3orA%qVZnB$LMy@PcJI!OyaJ~ z@#v*9vrw8J2Lz|1xBj6v;XNmYWqO}CG96j@pAK^ZZ2BKMvaS5@e#-$$2x8Esr%hKQ zK<@6BGd*(tb$=~wh4R~Rzz+%gSp|-}nG_ocQ8^nCNr72a-q z=?N4B=v)BPn$J2|wrtzx<5z$Cpv#He;qjf*)0ZZ5TOJ`L_5+(Q>W0Qay8zleTn)5! zifWFk%E*Wyq0LB6{HIT!LOvpd?r}w!SLYs{uO@2sY1byb6G_sW%K!ifw9`@8C@6_M zPzkx|8-Tjl#Cn4w&woXOz1kap_mp3u8Q=E}87-I6t5>U)xcnq)8S6Qp?s8)v6qlEk zHJk6Ur&_0Ypl+QK#uhHuQh{uN2Gc&koE|F4|Kd-9NtuqQhCv_*1tq8&&y5>Ap`w%pk zdOuVypX;Nj4B)&94nEH8INmlk88rArnqTsZzTfsGd`AB*N7%hjc{(i3?A}JGdiA`2 zLz?!?!hPsrL4Hk!629W9S4*L|B;XsJF%R)VgwjrUzUXlwN1dfXPs+yWh+|2^QM6zc z;SNAm$V0U1h}MJ%5D8)*yy~U+(W2aSa29Gk8|9DxS0XVcCPoog6Xz329G=Sdt9$bc zB*zw>;MC0k@ni6triXYo*7KT|^-WEH!Lst0uXd6Z+pn&y{PvFfSrNZ(FCNpJ3q5rv zQIyE;gADa&&g~Z)JeZU+ksSr z2x7m5lyHo7jz!IE2%A?MdeF$|P}d; z=?YN4CH z?^09Ei>Dk;Z@KgTmaR;l+g+pE4g%kN0Zdr@s~^)tQbjp7WX_kyTpNhb6VvP)2kh7rrcNpLt$r;fSke?C6X;%~%|!#THGHu$%t<}3 zSeG8nG`p<8X(9&ta}cvKpC{gY4Z*@&DkaIY_cPLaAqGx^I|(5!Yd11XN?nZt3Hn0T zOpd{ZBLoNYB3ga#lJ}n6iXqQ?qc0xzvfsqn;UmX~S2t{;hkfJCRwlO=J#Z0fQseYELl!a>_5Es ze>HOn2&Alz592%MIp2@W_Mll=)5}kRwc(!n*%I3F6FfQ1~r%#{WMfMADWHX;`i&~a!M443X)$K^qWHJv|IfN7H$ zK{j<4LNzhb)?E~=l9G}iD=GkpB(g>iP;_DDiDte2d7v9Tx>Y)6XH{xJ26(73hAefC z2?fF?Na-~eyD+9U;Pa-O1Zh5f)BOIe6}{zL1bX_<0B=rQ#u{voYrcr z2FO4=@NP*u+bX5t@6}Dg(#Q+JxVzFptw+C_-SI{+*|#zEAnm|)UW*KMop*mETg|K2 zhCi5jpo+4FhlfWcgk8srx3663aZ;`2lY>AL@OH+YzbV+xbW?|-xb=AW$=#$dHbHKJ z7uV-Uo?R9Zh*qPEO7#9>_>2k52R+yj9QhYYT`TOSIOCg0SCh4F6 z$q*@InE0_mAc%1u5M7$Piat47TfMonB^mA+fFrdmLGVOCU9Pu%b*ryVVK;e@Qa-6; zwG!Z6?{vFkSoPrK$+%E18`Y4*gJon5j6_MduC8u^2nh+pdf%6QWOE}pe ztu(oUJvu!-JrOEZ1q=>hf;^E7^@2N{dcA1dw*hbJv$L~-^1$tl!ehJX>Na$bcB(+D zJPXDw95ae%uf>QrfFTh zXdnR_*z3a7`7r`Ea1OmQscbZ>sCA!$_hahfs~8&2L`|+nrz(40-s`pNcr>fZOXkDwxfNszl(3uu-wx3vrpNuBae%-%Kzf&C$hgM$sxs zTs7&IO#%!s=JIdXSV)A460Z*iU~VwOV1h+sp;AR($Mo5buEm9yN`zHwi1hK3+yXNKH8f7|6Ty6drNmsl$HAgH!Xxp zq;J*BJA-KgBle}aNlulB2ga=Hm6etEWg{Y?7*OlV|07xH$?SMHAOUzR7ObQ{R90QC zXwdOnms(&mQz3tP^Yil7v4++GP@?GS>Z)2FGonbqOs>Ms2Yx|y2qIarHKt18(C7jz z$}=;N5t1(xr!q3tIr6cRGK`@%bAk3?+Lwu@N}<2H*%N`h2FknjD(&7QqQsLdVNM6e z^mn>{PPMukzfm-e*@>`C$Rq890ntVkP^_wPe)h)E@u|<5W&VU#`BX&Xe(H{q3FeYT zX#OHXkDU%zf&2Y;Z982b`TlS0c^8Z61Lx9XxH1KkK=IFfq$$lZYmV-LN9k$4S5u^b z1l8^(xzHoQ@++9)zT0D}A7y6glsW08xI=peD8z6A>H?t7|6H;X!sv4?h%wEBgoH35 z2*^@nj_VOD2^32at70dor?No3{d7j1a8;_F5dy@3LC-Aq0rj?+2X^tLfe(^KdjRpO zzcz)J#DJVt($dnhONsWOL~5UdT=c+kxURTlc0slU$UTGfQY|y4GHP+6i#}6^#jz@;VQ^ zy_Zked!gPqgAnPU1Fi?54`gw+#s(e@i601ATS$hX9@fkWfoqA3AEcH0*pxChXV`0E z{GZ@Sw9yoDt3V9&YFYgbDfrQXVr2cDVsd6?FeFFr?M3RCm4h~n&|k0hj3FMrj3wA$ez>S;D_|JYpD41YVSW zf?R$QuO@3(hra|&rb|V-%{);tmTKTM&AR8mUqa%T%dkVn#6HSBb|B28T9b1>>mAta z)f9qYzhN>~zebKFsP3ESk^G;Htl<+&>|2$I;6siIb~-nmDL>K4*Y4+q-vhe>WRs6D z8M#u6SFZ{`g4?A7w>#)N4<3mt@+Y5FC*jLqT3YtlP|S8T4h<&51Y9!s`CI$@*dxaU z8yzmcq&>IwCa0zby0SUmUR15%GhdsxwY7Oc^g?SG%P)vQPB25u0!3)@jqBEUaU3@!G`yU^C@J0rCm|~z6)NL=i=q7) zQ%r)Arq30~+;&b*?{;`%qo*=}JoF#2JU+9qJn~toX0vhXDewF5QNFMqQK5d(zs)Q2 zPK~6uXf(Jh`h=W~dRsaZ{(`1=W_o%ode>UU4 zl`Q81b*Z~P1OfgaAu3#oS_lYvwxHqYN%0VW4sW88 zP;gFHC6z+qM2!0y8W_9;tteTVpt#!&alUSJY}w%YHq^I8}2BPyFh z!*QSpXXWe;F~nLT?RpuWE0EHr@C*Wq!CwC|i42WX=bTexBPl1LC{IiQ=+qAN+4CWGT;Ol=&qA>%SRQyUhO@W@bmMV6Z{45|G@`ACBQc#SDy%Q_R856 zxeqWu{d5wAXe=)UOzLrM>K>Q*Z-$Jnk(=y|vYQsYK>+wcpwfkt^k)%C57___ycCCt zF*)D|V-{`?=E$Th90`SW1(a%JMF2LPBk)beSjvwxjyn6~cF8{1UDG#hp4epPkPqbK z=vY3u<>8e+v=Jo?ix!8kN2JnQVKI~FK|pLy7k!=CQyjz8jEW>NfmS{*>^}url#!4d z8K;5a7D`-vb#*lo$qVTQgZ{qi2O-P#FeoMYH5~(1Z?l6QtBYU>3JSX1f#UO7IzOuN z0Jqq}{Jei-Nr{b4QOb#*Bn7^rfiuP1>MrnOQ0@q|8^mwkD)x!GIceaZXr4Bgl7c<{ z;4cssa6C!~2ifkj(zRtrpbD%6U{ga9lWFgRlA6bbPv2(=SYM$2sLi(3J%8~x-iYc1 zK<7+SJqRxYE%Q>dGl>|2Zh#|zDZ#6DfWnh_td(=(PUrrhOlh}>y55we_W1L zyEh@HIC>?LiLuv(fccda^kNkLvpvuskU3jIG=%T--{R2`%*KnFuYq*}eD25c^1(|L z=?80a3FfzO=F_=_g+O{4Nc9H<4VXfNNEt`Ron)Y)t|x2i^1KIz2k^?O5>cU#W69;Rz_LuGfH`2@#VJ+r@w z1Ef?hzOm@HQ@H>IsJLAdvp>RwF!7gH6Q$cHmzEG!pg_U}$KUaCbAJUic1pm9IKBSw z9KzZZl%4~P3(nHViHPe$a`|USReg0H3h0p$%@U}q|BU%k@kp79bn`!c#06dPfbs@* zZ6}3j^mNCVU0f#CIcVf^;fJhT?yB+V;5AA}a1H0s8PL}AfKWOhdot$GprjAY@{5RQ zblcPcm8tvS%+|B9(2PC#(vXWnyL<|`Sh%>k0l{yq`9@2i(JM3{3lRNpWJj;H#Bh*F zdI8*6(0zyi>3Zu1!mgW@5FL*u>|S2}8fq-?N6s!&$=zKzGb?LsVSy;7AYy%PWW6_4 zAgM;E&lOl?K9-ezT~D(}0Al@zPfRfdqobqDU&<2Z_nb{@UVcl1%rHk2^8lj0mxNEi zOhF8FPK=M&rWnCi1oHKGbj-}+P^gbrF(vPP-V+bjiUpht0!kUEK6$!ja)VjcD0XGi%%Ry<97@5eC&Kz%p3NF45TG-nZy&AW4$1QX~n zBMr@5!~Y28)z?#a`A4;ign4yK+Ar->yKju;>!|k5dl6T)K&X)J!X&1vo?=5fPE7#`56c zV1h^B8)?aM$4n|xBvB+L)KI7U-?f3)q*`>>T**AL+s%eKo37XAu0ZJ|cW9sk9iu-slnV+^H3l@w~?eJsbEY-{4C?>Hx{sm^Rn4#;5=r4S0n&7|TldR1lu( zdpLv{guK;X59s@9Al9IFfafTZHv06~d!HUKvgE+DW+#$4S|yHI_WoJp!=FydA8~=Q z&ebrD!xR9e4c>FzQqtAcWi?@OfzK>N=q?${HXaOnGw2C*J$5KNlBK8AjdX zK+spfj(La*4u*kicMm(H*3}YdfUA|hEabummkh2KTr61fWiidawaMKt1Qix4iVF)@ zCxBG?T)_pEdxA2yg(X=ciIM(i`wIt3Pnv6Mg&h5wCH?;)3%G!}E`$OVplnA3F8b%5 z7yT12_3fA8Q4MkazyNc=Y=DPIwjmtxMTACZ=(6O20@2p=wg}s8OK;kLR z02ErgOifo(rM_>m)UGFg#zOWk+_Qal)QqYr6oEs593XeKr+?p#5taeC2}(DcA5-qg z%rOx1(J_|kj1Yg(3s_Q;o(a@BItL}r?09|vzMC7nHWzDa!PxY78#622k@AuqE}2>! zk5sJ0WOS!Mn)9w?sA;#aBGde*Q1<*Z8=QQ;r3X z)x9KN3VbZUd=14BVEK8)nSIShR@Mk1^DU9oNXMbf zhY0!fS=QZKpnL0;*|G<=HhK4Jq43aAZlK7psL}$kU(qkUe>!7ffzuhC$5%Xgp{$Yy zXU_k+AAk2zPCFlwtjrp)hnOMw=+uKxd886^-cRAx3<5-WxNa$!(^b|r?v=iwJ6OVUyeoI>)X#N$k{g7)F)0O2QTyWr3`HGa&T{L`shru-dH($V z+=fri=B@WHmq9w{S|lVkNaaw=M5XC0RsmZaeL2&?= z`IneB#XSNY!Xg8i3%4RS9c>YCOaSG~I?b@MJ6mUpMxAvqDgJk+<@*cK<5qmUL1T|a zC;=>`XpM<_tz9LD zQtHI%YzDDjhjWMCClCnXXEDzOy>^X2S6S?&yrRM+DRHjCA#4@96h8SRBS@1|Je%L9 ze&yC-HwV6WG0L|g<|NQ^LZt9Vd=fOBouDwIJ^_eL(E<`i9AHZ;OK4U9auXnIlIPZ_ zGjHhozFG+tp9T(4c#C}7^lE7dI*PTpwg9@D)tHt!7sUL78rTaQf$4v6uv-(ioIPcL z{foMgz7b!l_WozR_){x4oSe;99KY%JZn}uer|1TcB8Rdbb^M%}nTaP%xWU^>z#x%7 z8dGNSTyPt_U-!et{ryi>n>tzmTVK#{+z$sh3;4id(oddoAb_l>F_Hez(O|9?%dx=( z^qP?$=929k9j{Jq6(A<)CnT2i`<+Ei{~8a?3LT6Zy4s#9&t>?vA;t=%CWn$qtFr29 z;!~7RI98u4;CHzjpfGKUhfYeoWQ5&52;jg)V^x>Lf-!r*c_{EjL`6%ixj&EDDF9c;q`Q;o{6Hk5-=8%4K2Nqk*Mon4<}!bi^U0SV z1=OkEt*d|2D3$U#CZNRmLAtB|F>9cwmse5(O38Q4b~unX1PMa{z%HqmOl~aH<6*-G zO{nsO#|x0E&;x?%0_-l=c*)=4%!klNAa{N))y)1>RbHNT--|V)ac6H&qd6%xEo~Ll zs~0p%jZkfz-c;o1i2yHe_wHBd4m02TY647@4#IOndv5 z449(0>kZ7#%`$$;{yBVQOvRCc2iP;Mr)#+e<=?{a$X`CDxH#RJsSW~GcT{lROfLIX z(&W}VB7BI%2!7kDnE&@e*4Wy5y@-^P$iV~fg1T_}w7LA0Stq5}ukV8nRnC#LE8M~W zdp3IXH#t7y`Ev#!k&lxdg3WZDwN6u1ef)qSsZqKQxoIEo!{%>Shy`{14iePA>weA531AdPL?b45XTHly!?hF)%$~m+%~C zLZA07-6f3p*f29O5xTLlQLnLdB$3$IC~EfE1qQlSz?(ACS>dgO0GcLFi49=D_e@=FkU9u4dc+yD=K!8>Pw&01f^})160dDTHSg+)7FJ*zmJGlN`f!3Og-SEAQ zy*)ROEg$WACoh7LnDxTjd?8Irfs(@9yt+s5FIuUQ2YR7`=R)6i1nyeW?dEi5n15j`y3W!q)GW{Q-p1Pco`ZwK%bZ7of}@xH zU|*+aXMJJvtEdXfAZBk0h!_dlcOrU8zmriA@Kk_ibFU}3PelM~DK<8?knU)JOrwaB zF1VbTMo<2<@*Pg;ivi+WCOqziSMLAxqrKZGfe@1^hqAPeqx0BxLc35fHg zm_w)_t64LIh?^oTiI}z)li%#~^8VJ=xC3 zW&2Y(m4gV~*uxwNre9E(LqnHyQ|bM||J1#bK8{a1G^C5zlYxBv!ym8?ITipfB}U?P z2$mu=lb+&3QF)jqCMF*^wQ?jzCnrTL%BQGczlneZSy)?3#+Zm>UTr7zJEUmzempp; zWBP$BV%ft9w__oRd!V>+g>=19zJo8Fr~mo@(3I{~I%}WcP}e&d zTiepj2`%Y`rJp~=hOC4Xi6%FE89{J>MjdGUgO598s@}de5>yKW9!#bKz zzaQx(y_QQ60Lt~Kk2KlJQX7bxRp98lDJn1DfroTy8T?!SFe|{G2AG8+OfgK}5Rmy! zZb3Byq^({cE)GQ1tQi;U=7au=LWG^bY@fXH4k!=$`ji~%=}@sQ?a0Gx&>}3E0duo^ zuuL9?Y@J2=4`JJIrv5-Ih_DHh1|sZp{Q-ul5Cvbp%t^Zb?lGoN{1%`E4jhoX!BT}} z-Q%JtE}hr{>;V#VJy6Y3)~c8vs6~i??XpsHMZpYZfe4(7wfaMhi+s?4)KKfd`JfGe z@T4|f#5B!azfrn(mEy7Kw;Plzf?!1cG)<=W}?8-rR(qW3vyAPZeKmc(Q>x5otf{1GY!HzHkkerAkrHpl21H>pF6#+02n(`T^;O;MuUmubqH&!KC72o7aO+9NkMAJ_(`Tg<+^QIip)cf=lxOCcqO^0ZZ zltJ|;04lDo4?xTEm%mS@z3W&4+yEUN-3veoaJ;6RZeBX@2A+hh4&RLoTU2kY6K6!< zX$oPx@4agouX|V;4=EzZ;vGoUA3MXe#RD%-@NWHD-BVLjbxQ8?r4!L$oG-4F;VI{Z zm37i{-yxf$_rH@Do9gP0e*)j&RW306iHEWXbP#kKo~(~Vk|m8$L4xA~G8lO+EiDUg zz&kHqUi#Vm`s_LZV#jO=XhwMj1#rM$I5)K{+Yr=JRvN^9`63Q5aH8N@A-5QqU1dUC zAC)iN?0X|7KxSo>=a8Ol;H>VwO78c@k|DXof;ZS6^NdQfN5!#pKzQW_FH%zIG9|IER^d{*OmyH~M)@4esi zdIIRW@zfZ;_iG`=wICBz9FrB)ctTbxx4dUwiKnkb8i_gpcI>=Xn55QO`<`GdCF+mK>sH*MXoIUz_ z1bw|8P0qM{Op2rB0u%vE5d`gg z*P;FR%tBq3!T9nqdAPEQ+8)3W^rL;Raeg0Y0$HJ4@}WNdZeW1XMeIe>yk*lom}DGx z#n8vSSqL1mA>zJtIts#m_zix0ck#vMn2>~PWw=`>(1;iYFPtl zjAa^frP#(Heo0CJhCwvXzZ0F`vzlm6#GA3t(Kp zCB6{N0t@zRY%mh&a7*Lke+R&9a*ZX(iKQeI0Yb%`yGH|lfWc6_9e?eAq|0nal#~zC z!L)%kA|fKTZ>McH02()YB}h|ov=|^l1pKvKdtQ-uK->bs=InG!rgY-#3qissCzn4{ zIHI}Kzz{o_53Q+0ppJ8wB)#{|o`guYVaR?xd+C#?HN7*~#e`)H>(Tnm$}Eq;5K@O- z)6d8XL6}0fp9^3E*;E=hnm4;yuYz^2t}H9dplu&!Hm-YeeLD;KznR|Kug4c)`ma-v z&@PklpSuV^GPlnuhubF@^#zn^gUKHc@!Of-hPg1w)1xj|dVg?CEH^NTQR zW7b0}#--T&6SLaoL^5Mo9AiGKHtR>+dYZrFB-SrJNCo;00gqBu9|=Whbg?-wXYQs$G}Yj+tImLl-rr!Y%fW8-MlI;6<)>WEGA5Rm zHaGh&fg$xqz$KlEgoNyqU9-z+2_5%`eo3j2-}yAyq^ZO1^e1bbW$)dNpzH4v&l=mNi~ArMv!0WJPY zG>ey#b;q)p%qL;hD6)IZx@mqM$ZGucjg2`=4URKqBhu(!5qWqAeM$eNgr@%!iTL2V z;(k^;T1pB&&>_`jP$qgM2;*Ud0S7*1sM6uH*FqVDpueuZeE_3LIUi_=Knr6HV95`_ zt$fns(P+h@vxYP~SC3A>XgFhJwj7!eQXU7ud{bxiE2RNWx-dLs_s`t~=BYpW(^q8yJ*SmzVQa0qhUnRTxZ1 zzXUTvP#zd_!Oq#_j#nx)Ag*c!lVspiBt#T-TKiUypk?qj^PsT;d;tScNijA@a+yG) zvue*y-&BZF6<`d)>>B2TYuz#ab5F?tnw4h{XVxR+QDBryLJ%N$x`*{~_cpOeBTCLsd~zp-S#W$o~hDS~M8| literal 0 HcmV?d00001 diff --git a/Icon/32px.png b/Icon/32px.png new file mode 100644 index 0000000000000000000000000000000000000000..02d119c6f1168f95d821fccb95ed0cee3bffd16e GIT binary patch literal 1591 zcmV-72FUq|P)g5G z(5#9A?SE+c1L_nhpq(wC4J@EY4HH&q5fT}R9!ao7ilk=d-qVFOG)a*Xtq(W=dG4I^ zo!5O3h6FQ50Q^F0{jt{ieZw%)L=-+)Ybd4GiRfFyFdhPUNJP8C_@yC;&uFc`B%)6m zjfS(gw>R2qwa9TCXsrPNLI_xvg*|cVObX9@wgj{#S}CDRS5ArB5L*Hkw;|xuSTPh ztyC%@*LAyylu}q+TtsI;0FX|n0RWEUpi-%rwr!i^vo9~%HOzsJlA zwrxi?Ha5(D0Tv2{*T(XVIT7K;jT`N@06?qNLa|s3rPJx@)2C1WkC{IpqW=yIfSJ!Q z^TO)t>bu+9+XLHEEEcv4kY(H54LT0>7c=qhsp|y(_FT%2{L;7A>TU(R0TJ42Kb?Ge2!s6oM zp>LDPB(mA;A$_yiM73I_L?ZD3z~_>gBUZM(6tFsQK<7~>xV&Yv27blDFlN-+_`fH z0FF(>hvPU9LWHDmbleQ|!t*@T>vaerFh4(!U@&+rdGE~$0Fs%TLWohvafTxHv9`7b ztu^xbJQ9gS7x^$r2qB=gZc5Mdeh7s^7mquHda=H~j>*YMT)1#y=)QL%91cS%RhC5b zZ8RFaVB7XlkCQ_>BEsC<+|WJmMKl^^!!Z6MOw)XrN~P+(mrlQXpi^dMX28rt-2wgl zrqk)VVHgi3fPchdG0QYfv|8P-rj?Zylu9MIu6v>^Ez3eClflHqM3+7k3LzGYnE?JN ziKyl{&R5gZ)1NIZEwzv1<>h5Oe*73hh+e;Mg%>Yg;P&m?$Ye5Y-K9&H_LWk9GYq3H z0KhcO``K((`{%dT8qc3U2Y{|JGV@yt5n*|Gx$Pqy4kMGvDAP253mm)$h-jUe|1vu} z+dQiGgWd|qiRXE3e{*wl4QBo`5pA>s001fF@8j|K_cJpyuGSjKWb&;@jvByJD&-HZ zck0xs@1>Lv+PwY`B5E=7&vLokce}g0?`o~daU7J( zekG;+kcjr%yuC)u{GR7|3s0XujXZhs#5~ZQD1d{+FgrWz=5o0mDdh)5^j+6_KO<&N zyRQ39wOal0qeqWIwOZ{&6T7SXJzb+IC#?sPK zV3^~YnK3dlf_y&jPEAcI0DqEFKIkm_Pyuu}OgoPAM=9l})oRr(l}e*8U%sTBogMfW zm}#0A8yiC+k>E@wQ%@ukrc&xF(=_k*%lfSX=m_K;0C!#2{YWWw-89W{Aw(Delu`}P p^D2g6{M$6muK|2bMD=0({vXw5QkBKIF^~WN002ovPDHLkV1ksx1}y*p literal 0 HcmV?d00001 diff --git a/Icon/512px.png b/Icon/512px.png new file mode 100644 index 0000000000000000000000000000000000000000..d06ba5e432ceb66aa000bc2aa7e92338ef106407 GIT binary patch literal 39410 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%0DLjMs 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 G^8N!Q?KyA& literal 0 HcmV?d00001 diff --git a/Icon/64px.png b/Icon/64px.png new file mode 100644 index 0000000000000000000000000000000000000000..a9274cec328d31984fa36b703569fb9dcd67356e GIT binary patch literal 3583 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 FV1m4z-QxfN literal 0 HcmV?d00001 diff --git a/Icon/Zeichnung.svg b/Icon/Zeichnung.svg new file mode 100644 index 0000000..201f4fe --- /dev/null +++ b/Icon/Zeichnung.svg @@ -0,0 +1,113 @@ + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/Icon/Zeichnung2.svg b/Icon/Zeichnung2.svg new file mode 100644 index 0000000..6f1f205 --- /dev/null +++ b/Icon/Zeichnung2.svg @@ -0,0 +1,240 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + diff --git a/Icon/Zeichnung3.svg b/Icon/Zeichnung3.svg new file mode 100644 index 0000000..265b3e1 --- /dev/null +++ b/Icon/Zeichnung3.svg @@ -0,0 +1,304 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/Icon/Zeichnung3_16px.svg b/Icon/Zeichnung3_16px.svg new file mode 100644 index 0000000..d687ba4 --- /dev/null +++ b/Icon/Zeichnung3_16px.svg @@ -0,0 +1,249 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/Icon/Zeichnung3_32px.svg b/Icon/Zeichnung3_32px.svg new file mode 100644 index 0000000..c07ee2f --- /dev/null +++ b/Icon/Zeichnung3_32px.svg @@ -0,0 +1,249 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/ImageWriter.xcodeproj/project.pbxproj b/ImageWriter.xcodeproj/project.pbxproj new file mode 100644 index 0000000..e264d44 --- /dev/null +++ b/ImageWriter.xcodeproj/project.pbxproj @@ -0,0 +1,694 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 6D1914D524524465005DFB5E /* DownloadsObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D1914D424524465005DFB5E /* DownloadsObserver.swift */; }; + 6D424C52245112F5008D69A3 /* HelperUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D424C5024510152008D69A3 /* HelperUtil.swift */; }; + 6D424C5424511D1D008D69A3 /* Writer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D424C5324511D1D008D69A3 /* Writer.swift */; }; + 6D45236E2451F25800951E07 /* DiskHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D45236D2451F25800951E07 /* DiskHelper.swift */; }; + 6D4AA7AD244F932B00B35128 /* main.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D4AA7AC244F932B00B35128 /* main.swift */; }; + 6D609DBD245B610500DC1769 /* IOUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D609DBC245B610500DC1769 /* IOUtil.swift */; }; + 6D609DBF245B6D7D00DC1769 /* IOUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D609DBE245B6D7D00DC1769 /* IOUtil.swift */; }; + 6D6271E4244FA082005ED793 /* HelperConnection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6271E3244FA082005ED793 /* HelperConnection.swift */; }; + 6D6271E7244FAA4C005ED793 /* com.xxmicloxx.ImageWriterHelper in CopyFiles */ = {isa = PBXBuildFile; fileRef = 6D4AA7AA244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; + 6D6271EA244FB0FF005ED793 /* ServiceManagement.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D6271E9244FB0FF005ED793 /* ServiceManagement.framework */; }; + 6D6271EC244FBB69005ED793 /* AppProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6271EB244FBB69005ED793 /* AppProtocol.swift */; }; + 6D6271ED244FBB8C005ED793 /* AppProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6271EB244FBB69005ED793 /* AppProtocol.swift */; }; + 6D6271EF244FBBA5005ED793 /* HelperProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6271EE244FBBA5005ED793 /* HelperProtocol.swift */; }; + 6D6271F0244FBBA5005ED793 /* HelperProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6271EE244FBBA5005ED793 /* HelperProtocol.swift */; }; + 6D6271F3244FBDB2005ED793 /* Helper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6271F1244FBDB2005ED793 /* Helper.swift */; }; + 6D6787A62450613E006FC7F5 /* HelperConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6787A52450613E006FC7F5 /* HelperConstants.swift */; }; + 6D6787A72450613E006FC7F5 /* HelperConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D6787A52450613E006FC7F5 /* HelperConstants.swift */; }; + 6D85D4A7244CEDBC00F132D7 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D85D4A6244CEDBC00F132D7 /* IOKit.framework */; }; + 6D915D9C244F6DD2004DEC9D /* SecurityFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D915D9B244F6DD2004DEC9D /* SecurityFoundation.framework */; }; + D9F22D6842C1303D259CBAD7 /* DeviceEnumerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9FA75F664843A6628120E57 /* DeviceEnumerator.swift */; }; + D9F4E6CBCFC8E74FC57EAB50 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D9F1C9D9BA4C2415EB41295F /* Assets.xcassets */; }; + D9F5F2E9C23CDE2BF5FDBDF4 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9FC97E4DC891E3D80F8779F /* ViewController.swift */; }; + D9F72389715BADCD64448256 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9F96F58174DEF7402985629 /* AppDelegate.swift */; }; + D9F980DD6B3C4601DC14185F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D9FE5921033C924097F5437D /* Main.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 6D6271E5244FAA48005ED793 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D9FC0E6EBD69026E19F3DAC8 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 6D4AA7A9244F932B00B35128; + remoteInfo = com.xxmicloxx.ImageWriterHelper; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 6D4AA7A8244F932B00B35128 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + ); + runOnlyForDeploymentPostprocessing = 1; + }; + 6D6271DD244F9773005ED793 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = Contents/Library/LaunchServices; + dstSubfolderSpec = 1; + files = ( + 6D6271E7244FAA4C005ED793 /* com.xxmicloxx.ImageWriterHelper in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6D915DB2244F8D26004DEC9D /* Embed App Extensions */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 13; + files = ( + ); + name = "Embed App Extensions"; + runOnlyForDeploymentPostprocessing = 0; + }; + 6D915DC6244F8DD2004DEC9D /* Embed XPC Services */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = "$(CONTENTS_FOLDER_PATH)/XPCServices"; + dstSubfolderSpec = 16; + files = ( + ); + name = "Embed XPC Services"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 6D153E6D244F92BF00FA8458 /* HelperProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperProtocol.swift; sourceTree = ""; }; + 6D153E6E244F92BF00FA8458 /* Helper-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Helper-Info.plist"; sourceTree = ""; }; + 6D153E6F244F92BF00FA8458 /* HelperAuthorization.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperAuthorization.swift; sourceTree = ""; }; + 6D153E70244F92BF00FA8458 /* HelperConstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperConstants.swift; sourceTree = ""; }; + 6D153E71244F92BF00FA8458 /* HelperAuthorizationRight.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperAuthorizationRight.swift; sourceTree = ""; }; + 6D153E72244F92BF00FA8458 /* Helper-Launchd.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Helper-Launchd.plist"; sourceTree = ""; }; + 6D153E73244F92BF00FA8458 /* Helper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Helper.swift; sourceTree = ""; }; + 6D153E74244F92BF00FA8458 /* main.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = ""; }; + 6D153E76244F92BF00FA8458 /* CodesignCheck.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CodesignCheck.swift; sourceTree = ""; }; + 6D153E78244F92BF00FA8458 /* CodeSignUpdate.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CodeSignUpdate.sh; sourceTree = ""; }; + 6D153E84244F92D100FA8458 /* CodesignCheck.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CodesignCheck.swift; sourceTree = ""; }; + 6D153E86244F92D100FA8458 /* CodeSignUpdate.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = CodeSignUpdate.sh; sourceTree = ""; }; + 6D153E88244F92D100FA8458 /* HelperProtocol.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperProtocol.swift; sourceTree = ""; }; + 6D153E89244F92D100FA8458 /* Helper-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Helper-Info.plist"; sourceTree = ""; }; + 6D153E8A244F92D100FA8458 /* HelperAuthorization.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperAuthorization.swift; sourceTree = ""; }; + 6D153E8B244F92D100FA8458 /* HelperConstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperConstants.swift; sourceTree = ""; }; + 6D153E8C244F92D100FA8458 /* HelperAuthorizationRight.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HelperAuthorizationRight.swift; sourceTree = ""; }; + 6D153E8D244F92D100FA8458 /* Helper-Launchd.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Helper-Launchd.plist"; sourceTree = ""; }; + 6D153E8E244F92D100FA8458 /* Helper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Helper.swift; sourceTree = ""; }; + 6D153E8F244F92D100FA8458 /* main.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = ""; }; + 6D1914D424524465005DFB5E /* DownloadsObserver.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DownloadsObserver.swift; sourceTree = ""; }; + 6D424C5024510152008D69A3 /* HelperUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HelperUtil.swift; sourceTree = ""; }; + 6D424C5324511D1D008D69A3 /* Writer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Writer.swift; sourceTree = ""; }; + 6D45236D2451F25800951E07 /* DiskHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiskHelper.swift; sourceTree = ""; }; + 6D4AA7AA244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = com.xxmicloxx.ImageWriterHelper; sourceTree = BUILT_PRODUCTS_DIR; }; + 6D4AA7AC244F932B00B35128 /* main.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = main.swift; sourceTree = ""; }; + 6D609DBB245B603900DC1769 /* uefi-ntfs.img */ = {isa = PBXFileReference; lastKnownFileType = file; path = "uefi-ntfs.img"; sourceTree = ""; }; + 6D609DBC245B610500DC1769 /* IOUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IOUtil.swift; sourceTree = ""; }; + 6D609DBE245B6D7D00DC1769 /* IOUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IOUtil.swift; sourceTree = ""; }; + 6D6271E1244F9F20005ED793 /* Helper-Launchd.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Helper-Launchd.plist"; sourceTree = ""; }; + 6D6271E2244F9F20005ED793 /* Helper-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Helper-Info.plist"; sourceTree = ""; }; + 6D6271E3244FA082005ED793 /* HelperConnection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HelperConnection.swift; sourceTree = ""; }; + 6D6271E8244FAC05005ED793 /* com.xxmicloxx.ImageWriterHelper.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = com.xxmicloxx.ImageWriterHelper.entitlements; sourceTree = ""; }; + 6D6271E9244FB0FF005ED793 /* ServiceManagement.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ServiceManagement.framework; path = System/Library/Frameworks/ServiceManagement.framework; sourceTree = SDKROOT; }; + 6D6271EB244FBB69005ED793 /* AppProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppProtocol.swift; sourceTree = ""; }; + 6D6271EE244FBBA5005ED793 /* HelperProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HelperProtocol.swift; sourceTree = ""; }; + 6D6271F1244FBDB2005ED793 /* Helper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Helper.swift; sourceTree = ""; }; + 6D6787A52450613E006FC7F5 /* HelperConstants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HelperConstants.swift; sourceTree = ""; }; + 6D85D4A6244CEDBC00F132D7 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; + 6D915D9B244F6DD2004DEC9D /* SecurityFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SecurityFoundation.framework; path = System/Library/Frameworks/SecurityFoundation.framework; sourceTree = SDKROOT; }; + 6D915DA2244F8D26004DEC9D /* AuthenticationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AuthenticationServices.framework; path = System/Library/Frameworks/AuthenticationServices.framework; sourceTree = SDKROOT; }; + D9F1C9D9BA4C2415EB41295F /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + D9F23CADA5B2660F6F95A4A4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.info; path = Info.plist; sourceTree = ""; }; + D9F7A6A9EC7835BBB82AE6A7 /* Tiny Flasher.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Tiny Flasher.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + D9F8EBA9A901D57198A0C393 /* ImageWriter.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ImageWriter.entitlements; sourceTree = ""; }; + D9F96F58174DEF7402985629 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + D9FA75F664843A6628120E57 /* DeviceEnumerator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DeviceEnumerator.swift; sourceTree = ""; }; + D9FAD4A8A0BB67E5970E0176 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + D9FC97E4DC891E3D80F8779F /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 6D4AA7A7244F932B00B35128 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D9FD29F818075BA8F690DA45 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 6D6271EA244FB0FF005ED793 /* ServiceManagement.framework in Frameworks */, + 6D85D4A7244CEDBC00F132D7 /* IOKit.framework in Frameworks */, + 6D915D9C244F6DD2004DEC9D /* SecurityFoundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 6D153E6C244F92BF00FA8458 /* SwiftPrivilegedHelper */ = { + isa = PBXGroup; + children = ( + 6D153E6D244F92BF00FA8458 /* HelperProtocol.swift */, + 6D153E6E244F92BF00FA8458 /* Helper-Info.plist */, + 6D153E6F244F92BF00FA8458 /* HelperAuthorization.swift */, + 6D153E70244F92BF00FA8458 /* HelperConstants.swift */, + 6D153E71244F92BF00FA8458 /* HelperAuthorizationRight.swift */, + 6D153E72244F92BF00FA8458 /* Helper-Launchd.plist */, + 6D153E73244F92BF00FA8458 /* Helper.swift */, + 6D153E74244F92BF00FA8458 /* main.swift */, + ); + name = SwiftPrivilegedHelper; + path = ImageWriter/SwiftPrivilegedHelper; + sourceTree = ""; + }; + 6D153E75244F92BF00FA8458 /* Utility */ = { + isa = PBXGroup; + children = ( + 6D153E76244F92BF00FA8458 /* CodesignCheck.swift */, + ); + name = Utility; + path = ImageWriter/Utility; + sourceTree = ""; + }; + 6D153E77244F92BF00FA8458 /* Scripts */ = { + isa = PBXGroup; + children = ( + 6D153E78244F92BF00FA8458 /* CodeSignUpdate.sh */, + ); + name = Scripts; + path = ImageWriter/Scripts; + sourceTree = ""; + }; + 6D153E83244F92D100FA8458 /* Utility */ = { + isa = PBXGroup; + children = ( + 6D153E84244F92D100FA8458 /* CodesignCheck.swift */, + ); + name = Utility; + path = ImageWriter/Utility; + sourceTree = ""; + }; + 6D153E85244F92D100FA8458 /* Scripts */ = { + isa = PBXGroup; + children = ( + 6D153E86244F92D100FA8458 /* CodeSignUpdate.sh */, + ); + name = Scripts; + path = ImageWriter/Scripts; + sourceTree = ""; + }; + 6D153E87244F92D100FA8458 /* SwiftPrivilegedHelper */ = { + isa = PBXGroup; + children = ( + 6D153E88244F92D100FA8458 /* HelperProtocol.swift */, + 6D153E89244F92D100FA8458 /* Helper-Info.plist */, + 6D153E8A244F92D100FA8458 /* HelperAuthorization.swift */, + 6D153E8B244F92D100FA8458 /* HelperConstants.swift */, + 6D153E8C244F92D100FA8458 /* HelperAuthorizationRight.swift */, + 6D153E8D244F92D100FA8458 /* Helper-Launchd.plist */, + 6D153E8E244F92D100FA8458 /* Helper.swift */, + 6D153E8F244F92D100FA8458 /* main.swift */, + ); + name = SwiftPrivilegedHelper; + path = ImageWriter/SwiftPrivilegedHelper; + sourceTree = ""; + }; + 6D4AA7AB244F932B00B35128 /* ImageWriterHelper */ = { + isa = PBXGroup; + children = ( + 6D609DBB245B603900DC1769 /* uefi-ntfs.img */, + 6D6271E8244FAC05005ED793 /* com.xxmicloxx.ImageWriterHelper.entitlements */, + 6D6271E2244F9F20005ED793 /* Helper-Info.plist */, + 6D6271E1244F9F20005ED793 /* Helper-Launchd.plist */, + 6D4AA7AC244F932B00B35128 /* main.swift */, + 6D6271EE244FBBA5005ED793 /* HelperProtocol.swift */, + 6D6271F1244FBDB2005ED793 /* Helper.swift */, + 6D424C5024510152008D69A3 /* HelperUtil.swift */, + 6D424C5324511D1D008D69A3 /* Writer.swift */, + 6D45236D2451F25800951E07 /* DiskHelper.swift */, + 6D609DBC245B610500DC1769 /* IOUtil.swift */, + ); + path = ImageWriterHelper; + sourceTree = ""; + }; + 6D85D4A5244CEDBC00F132D7 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 6D6271E9244FB0FF005ED793 /* ServiceManagement.framework */, + 6D153E77244F92BF00FA8458 /* Scripts */, + 6D153E6C244F92BF00FA8458 /* SwiftPrivilegedHelper */, + 6D153E85244F92D100FA8458 /* Scripts */, + 6D153E87244F92D100FA8458 /* SwiftPrivilegedHelper */, + 6D153E75244F92BF00FA8458 /* Utility */, + 6D153E83244F92D100FA8458 /* Utility */, + 6D915D9B244F6DD2004DEC9D /* SecurityFoundation.framework */, + 6D85D4A6244CEDBC00F132D7 /* IOKit.framework */, + 6D915DA2244F8D26004DEC9D /* AuthenticationServices.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + D9F2ED3096FFD3A4E1685064 = { + isa = PBXGroup; + children = ( + 6D6787A52450613E006FC7F5 /* HelperConstants.swift */, + 6D4AA7AB244F932B00B35128 /* ImageWriterHelper */, + D9FD1CA5E36FE1283705E5F8 /* Products */, + D9FB96C89852C8473EED9278 /* ImageWriter */, + 6D85D4A5244CEDBC00F132D7 /* Frameworks */, + ); + sourceTree = ""; + }; + D9FB96C89852C8473EED9278 /* ImageWriter */ = { + isa = PBXGroup; + children = ( + D9F23CADA5B2660F6F95A4A4 /* Info.plist */, + D9F1C9D9BA4C2415EB41295F /* Assets.xcassets */, + D9F8EBA9A901D57198A0C393 /* ImageWriter.entitlements */, + D9F96F58174DEF7402985629 /* AppDelegate.swift */, + D9FE5921033C924097F5437D /* Main.storyboard */, + D9FC97E4DC891E3D80F8779F /* ViewController.swift */, + D9FA75F664843A6628120E57 /* DeviceEnumerator.swift */, + 6D6271E3244FA082005ED793 /* HelperConnection.swift */, + 6D6271EB244FBB69005ED793 /* AppProtocol.swift */, + 6D1914D424524465005DFB5E /* DownloadsObserver.swift */, + 6D609DBE245B6D7D00DC1769 /* IOUtil.swift */, + ); + path = ImageWriter; + sourceTree = ""; + }; + D9FD1CA5E36FE1283705E5F8 /* Products */ = { + isa = PBXGroup; + children = ( + D9F7A6A9EC7835BBB82AE6A7 /* Tiny Flasher.app */, + 6D4AA7AA244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 6D4AA7A9244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */ = { + isa = PBXNativeTarget; + buildConfigurationList = 6D4AA7AE244F932B00B35128 /* Build configuration list for PBXNativeTarget "com.xxmicloxx.ImageWriterHelper" */; + buildPhases = ( + 6D4AA7A6244F932B00B35128 /* Sources */, + 6D4AA7A7244F932B00B35128 /* Frameworks */, + 6D4AA7A8244F932B00B35128 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = com.xxmicloxx.ImageWriterHelper; + productName = ImageWriterHelper; + productReference = 6D4AA7AA244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */; + productType = "com.apple.product-type.tool"; + }; + D9F8A930BDA8EDFB1E6C2E23 /* Tiny Flasher */ = { + isa = PBXNativeTarget; + buildConfigurationList = D9FCEC3064D5AC8065C9D796 /* Build configuration list for PBXNativeTarget "Tiny Flasher" */; + buildPhases = ( + D9F52908C0F48F36772F48FB /* Sources */, + D9FD29F818075BA8F690DA45 /* Frameworks */, + D9FA9EE214186D974771BB3C /* Resources */, + 6D915DB2244F8D26004DEC9D /* Embed App Extensions */, + 6D915DC6244F8DD2004DEC9D /* Embed XPC Services */, + 6D6271DD244F9773005ED793 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + 6D6271E6244FAA48005ED793 /* PBXTargetDependency */, + ); + name = "Tiny Flasher"; + productName = ImageWriter; + productReference = D9F7A6A9EC7835BBB82AE6A7 /* Tiny Flasher.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + D9FC0E6EBD69026E19F3DAC8 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1140; + LastUpgradeCheck = 1140; + ORGANIZATIONNAME = xxmicloxx; + TargetAttributes = { + 6D4AA7A9244F932B00B35128 = { + CreatedOnToolsVersion = 11.4.1; + DevelopmentTeam = 69FQB9F8CR; + ProvisioningStyle = Automatic; + }; + D9F8A930BDA8EDFB1E6C2E23 = { + DevelopmentTeam = 69FQB9F8CR; + }; + }; + }; + buildConfigurationList = D9F4712D8B2597ACAE543CCD /* Build configuration list for PBXProject "ImageWriter" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = D9F2ED3096FFD3A4E1685064; + productRefGroup = D9FD1CA5E36FE1283705E5F8 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D9F8A930BDA8EDFB1E6C2E23 /* Tiny Flasher */, + 6D4AA7A9244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + D9FA9EE214186D974771BB3C /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D9F4E6CBCFC8E74FC57EAB50 /* Assets.xcassets in Resources */, + D9F980DD6B3C4601DC14185F /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 6D4AA7A6244F932B00B35128 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 6D424C52245112F5008D69A3 /* HelperUtil.swift in Sources */, + 6D424C5424511D1D008D69A3 /* Writer.swift in Sources */, + 6D6787A72450613E006FC7F5 /* HelperConstants.swift in Sources */, + 6D6271ED244FBB8C005ED793 /* AppProtocol.swift in Sources */, + 6D4AA7AD244F932B00B35128 /* main.swift in Sources */, + 6D6271F0244FBBA5005ED793 /* HelperProtocol.swift in Sources */, + 6D6271F3244FBDB2005ED793 /* Helper.swift in Sources */, + 6D609DBD245B610500DC1769 /* IOUtil.swift in Sources */, + 6D45236E2451F25800951E07 /* DiskHelper.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D9F52908C0F48F36772F48FB /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D9F72389715BADCD64448256 /* AppDelegate.swift in Sources */, + 6D6787A62450613E006FC7F5 /* HelperConstants.swift in Sources */, + 6D6271EC244FBB69005ED793 /* AppProtocol.swift in Sources */, + D9F5F2E9C23CDE2BF5FDBDF4 /* ViewController.swift in Sources */, + D9F22D6842C1303D259CBAD7 /* DeviceEnumerator.swift in Sources */, + 6D1914D524524465005DFB5E /* DownloadsObserver.swift in Sources */, + 6D6271EF244FBBA5005ED793 /* HelperProtocol.swift in Sources */, + 6D609DBF245B6D7D00DC1769 /* IOUtil.swift in Sources */, + 6D6271E4244FA082005ED793 /* HelperConnection.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 6D6271E6244FAA48005ED793 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 6D4AA7A9244F932B00B35128 /* com.xxmicloxx.ImageWriterHelper */; + targetProxy = 6D6271E5244FAA48005ED793 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + D9FE5921033C924097F5437D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + D9FAD4A8A0BB67E5970E0176 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 6D4AA7AF244F932B00B35128 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = ImageWriterHelper/com.xxmicloxx.ImageWriterHelper.entitlements; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 69FQB9F8CR; + ENABLE_HARDENED_RUNTIME = YES; + INFOPLIST_FILE = "ImageWriterHelper/Helper-Info.plist"; + INSTALL_PATH = ""; + OTHER_LDFLAGS = ( + "-sectcreate", + __TEXT, + __info_plist, + "$(SRCROOT)/ImageWriterHelper/Helper-Info.plist", + "-sectcreate", + __TEXT, + __launchd_plist, + "$(SRCROOT)/ImageWriterHelper/Helper-Launchd.plist", + "-sectcreate", + __DATA, + __uefi_ntfs_img, + "$(SRCROOT)/ImageWriterHelper/uefi-ntfs.img", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.xxmicloxx.ImageWriterHelper; + PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 6D4AA7B0244F932B00B35128 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = ImageWriterHelper/com.xxmicloxx.ImageWriterHelper.entitlements; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 69FQB9F8CR; + ENABLE_HARDENED_RUNTIME = YES; + INFOPLIST_FILE = "ImageWriterHelper/Helper-Info.plist"; + INSTALL_PATH = ""; + OTHER_LDFLAGS = ( + "-sectcreate", + __TEXT, + __info_plist, + "$(SRCROOT)/ImageWriterHelper/Helper-Info.plist", + "-sectcreate", + __TEXT, + __launchd_plist, + "$(SRCROOT)/ImageWriterHelper/Helper-Launchd.plist", + "-sectcreate", + __DATA, + __uefi_ntfs_img, + "$(SRCROOT)/ImageWriterHelper/uefi-ntfs.img", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.xxmicloxx.ImageWriterHelper; + PRODUCT_NAME = "$(TARGET_NAME)"; + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + D9F12125821CA8127CFAB9DA /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_ENTITLEMENTS = ImageWriter/ImageWriter.entitlements; + CODE_SIGN_IDENTITY = "Apple Development"; + COMBINE_HIDPI_IMAGES = YES; + DEVELOPMENT_TEAM = 69FQB9F8CR; + ENABLE_HARDENED_RUNTIME = YES; + GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; + INFOPLIST_FILE = ImageWriter/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.xxmicloxx.ImageWriter; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + D9F15AA15A3E307B300826AB /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.15; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + D9F3EAEE089C030FFEAFF1E9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_ENTITLEMENTS = ImageWriter/ImageWriter.entitlements; + CODE_SIGN_IDENTITY = "Apple Development"; + COMBINE_HIDPI_IMAGES = YES; + DEVELOPMENT_TEAM = 69FQB9F8CR; + ENABLE_HARDENED_RUNTIME = YES; + GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; + INFOPLIST_FILE = ImageWriter/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.xxmicloxx.ImageWriter; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + D9F483C9ECC70AFF197EAB64 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.15; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = macosx; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 6D4AA7AE244F932B00B35128 /* Build configuration list for PBXNativeTarget "com.xxmicloxx.ImageWriterHelper" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 6D4AA7AF244F932B00B35128 /* Debug */, + 6D4AA7B0244F932B00B35128 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D9F4712D8B2597ACAE543CCD /* Build configuration list for PBXProject "ImageWriter" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D9F15AA15A3E307B300826AB /* Debug */, + D9F483C9ECC70AFF197EAB64 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D9FCEC3064D5AC8065C9D796 /* Build configuration list for PBXNativeTarget "Tiny Flasher" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D9F3EAEE089C030FFEAFF1E9 /* Debug */, + D9F12125821CA8127CFAB9DA /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = D9FC0E6EBD69026E19F3DAC8 /* Project object */; +} diff --git a/ImageWriter.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ImageWriter.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/ImageWriter.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ImageWriter.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ImageWriter.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ImageWriter.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ImageWriter.xcodeproj/xcshareddata/xcschemes/com.xxmicloxx.ImageWriterHelper.xcscheme b/ImageWriter.xcodeproj/xcshareddata/xcschemes/com.xxmicloxx.ImageWriterHelper.xcscheme new file mode 100644 index 0000000..28a7176 --- /dev/null +++ b/ImageWriter.xcodeproj/xcshareddata/xcschemes/com.xxmicloxx.ImageWriterHelper.xcscheme @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ImageWriter/AppDelegate.swift b/ImageWriter/AppDelegate.swift new file mode 100644 index 0000000..a4bb471 --- /dev/null +++ b/ImageWriter/AppDelegate.swift @@ -0,0 +1,110 @@ +// +// AppDelegate.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Cocoa +import Security.AuthorizationDB +import Security.Authorization + + +@NSApplicationMain +class AppDelegate: NSObject, NSApplicationDelegate { + + var viewController: ViewController? = nil + + private func installRights() { + var authRef: AuthorizationRef? + AuthorizationCreate(nil, nil, [], &authRef) + guard let ref = authRef else { + print("Could not register auth!") + return + } + + for perm in HelperConstants.AllPermissions { + var currentRule: CFDictionary? + var status = AuthorizationRightGet(perm, ¤tRule) + if status == errAuthorizationDenied { + // add rule + + let ruleString = kAuthorizationRuleIsAdmin as CFString + let description = "ImageWriterHelper wants to write an image to a disk or manage its progress" + status = AuthorizationRightSet(ref, perm, ruleString, description as CFString, nil, nil) + print("Set auth rule") + } + + guard status == errAuthorizationSuccess else { + print("Couldn't set auth rule") + continue + } + } + + AuthorizationFree(ref, []) + } + + private func setupHelper(complete: @escaping () -> Void) { + HelperConnection.checkHelperRecent({ recent in + if !recent { + print("Upgrading helper...") + do { + try HelperConnection.blessHelper() + } catch { + print("User denied access", error) + // show error + let error = NSAlert() + error.alertStyle = .critical + error.messageText = "Helper installation error" + error.informativeText = "The helper application could not be installed. It is required for the operation of this app." + error.runModal() + NSApp.terminate(self) + return + } + } else { + print("No need to upgrade :)") + } + + complete() + }) + } + + func applicationDidFinishLaunching(_ aNotification: Notification) { + installRights() + setupHelper { + // launch main app + let storyboard = NSStoryboard(name: "Main", bundle: nil) + let controller = storyboard.instantiateController(withIdentifier: "MainController") as! NSWindowController + controller.showWindow(self) + } + } + + + func applicationWillTerminate(_ aNotification: Notification) { + } + + func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + true + } + + func applicationShouldTerminate(_ sender: NSApplication) -> NSApplication.TerminateReply { + guard let controller = viewController else { + return .terminateNow + } + + if controller.flashing { + NSSound.beep() + return .terminateCancel + } + + return .terminateNow + } + + @IBAction func tryTerminate(_ sender: Any) { + let shouldTerminate = applicationShouldTerminate(NSApp) + + if shouldTerminate == .terminateNow { + NSApp.terminate(sender) + } + } +} diff --git a/ImageWriter/AppProtocol.swift b/ImageWriter/AppProtocol.swift new file mode 100644 index 0000000..0f0d62d --- /dev/null +++ b/ImageWriter/AppProtocol.swift @@ -0,0 +1,16 @@ +// +// AppProtocol.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +@objc(AppProtocol) +protocol AppProtocol { + func updateStatus(status: String) + func updateProgress(percentage: Float) + func writingFinsihed() + func writingError(_ error: HelperError) +} diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/1024px.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/1024px.png new file mode 100644 index 0000000000000000000000000000000000000000..79f48e3c59695b2946f580e67fdcad113264aa8e GIT binary patch literal 91898 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⋙HAvRxlMx*Qo=H|{A<#|gIQ5d-|P&y#Iiju%WPR# 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 @dqwn2p$sm6 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�+qQR@d5z*YuDh|+Wp2qg}HiQrW zfI^|bD=RB?gNR;ryIoRBVbp%V-$y>5M=qCx)*3#&W5=oMLotvB6_dJiHC_<;xL6RhYei;#(&E{CtFbpg$ zEx|NR6pKY>=2Kx=)`wE5^u~4F{ORc_?(XiMwKIZk+o;uQD3wZm(=ZO&dNteM;Wd4v(<$V*xlU?H#awbSeEsY zh~mj(N=H$25XbS(`T6-wtJR`7jsXCsX<~VKnb+6X`{{K0vt?QDN5}L8%)Azc;ioVR r{V0m=qbRx`3| literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/256px-1.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/256px-1.png new file mode 100644 index 0000000000000000000000000000000000000000..d1101de9bbc8f968514c5fc1afa5c04929511e76 GIT binary patch literal 17597 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 literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/256px.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/256px.png new file mode 100644 index 0000000000000000000000000000000000000000..d1101de9bbc8f968514c5fc1afa5c04929511e76 GIT binary patch literal 17597 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 literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/32px-1.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/32px-1.png new file mode 100644 index 0000000000000000000000000000000000000000..02d119c6f1168f95d821fccb95ed0cee3bffd16e GIT binary patch literal 1591 zcmV-72FUq|P)g5G z(5#9A?SE+c1L_nhpq(wC4J@EY4HH&q5fT}R9!ao7ilk=d-qVFOG)a*Xtq(W=dG4I^ zo!5O3h6FQ50Q^F0{jt{ieZw%)L=-+)Ybd4GiRfFyFdhPUNJP8C_@yC;&uFc`B%)6m zjfS(gw>R2qwa9TCXsrPNLI_xvg*|cVObX9@wgj{#S}CDRS5ArB5L*Hkw;|xuSTPh ztyC%@*LAyylu}q+TtsI;0FX|n0RWEUpi-%rwr!i^vo9~%HOzsJlA zwrxi?Ha5(D0Tv2{*T(XVIT7K;jT`N@06?qNLa|s3rPJx@)2C1WkC{IpqW=yIfSJ!Q z^TO)t>bu+9+XLHEEEcv4kY(H54LT0>7c=qhsp|y(_FT%2{L;7A>TU(R0TJ42Kb?Ge2!s6oM zp>LDPB(mA;A$_yiM73I_L?ZD3z~_>gBUZM(6tFsQK<7~>xV&Yv27blDFlN-+_`fH z0FF(>hvPU9LWHDmbleQ|!t*@T>vaerFh4(!U@&+rdGE~$0Fs%TLWohvafTxHv9`7b ztu^xbJQ9gS7x^$r2qB=gZc5Mdeh7s^7mquHda=H~j>*YMT)1#y=)QL%91cS%RhC5b zZ8RFaVB7XlkCQ_>BEsC<+|WJmMKl^^!!Z6MOw)XrN~P+(mrlQXpi^dMX28rt-2wgl zrqk)VVHgi3fPchdG0QYfv|8P-rj?Zylu9MIu6v>^Ez3eClflHqM3+7k3LzGYnE?JN ziKyl{&R5gZ)1NIZEwzv1<>h5Oe*73hh+e;Mg%>Yg;P&m?$Ye5Y-K9&H_LWk9GYq3H z0KhcO``K((`{%dT8qc3U2Y{|JGV@yt5n*|Gx$Pqy4kMGvDAP253mm)$h-jUe|1vu} z+dQiGgWd|qiRXE3e{*wl4QBo`5pA>s001fF@8j|K_cJpyuGSjKWb&;@jvByJD&-HZ zck0xs@1>Lv+PwY`B5E=7&vLokce}g0?`o~daU7J( zekG;+kcjr%yuC)u{GR7|3s0XujXZhs#5~ZQD1d{+FgrWz=5o0mDdh)5^j+6_KO<&N zyRQ39wOal0qeqWIwOZ{&6T7SXJzb+IC#?sPK zV3^~YnK3dlf_y&jPEAcI0DqEFKIkm_Pyuu}OgoPAM=9l})oRr(l}e*8U%sTBogMfW zm}#0A8yiC+k>E@wQ%@ukrc&xF(=_k*%lfSX=m_K;0C!#2{YWWw-89W{Aw(Delu`}P p^D2g6{M$6muK|2bMD=0({vXw5QkBKIF^~WN002ovPDHLkV1ksx1}y*p literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/32px.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/32px.png new file mode 100644 index 0000000000000000000000000000000000000000..02d119c6f1168f95d821fccb95ed0cee3bffd16e GIT binary patch literal 1591 zcmV-72FUq|P)g5G z(5#9A?SE+c1L_nhpq(wC4J@EY4HH&q5fT}R9!ao7ilk=d-qVFOG)a*Xtq(W=dG4I^ zo!5O3h6FQ50Q^F0{jt{ieZw%)L=-+)Ybd4GiRfFyFdhPUNJP8C_@yC;&uFc`B%)6m zjfS(gw>R2qwa9TCXsrPNLI_xvg*|cVObX9@wgj{#S}CDRS5ArB5L*Hkw;|xuSTPh ztyC%@*LAyylu}q+TtsI;0FX|n0RWEUpi-%rwr!i^vo9~%HOzsJlA zwrxi?Ha5(D0Tv2{*T(XVIT7K;jT`N@06?qNLa|s3rPJx@)2C1WkC{IpqW=yIfSJ!Q z^TO)t>bu+9+XLHEEEcv4kY(H54LT0>7c=qhsp|y(_FT%2{L;7A>TU(R0TJ42Kb?Ge2!s6oM zp>LDPB(mA;A$_yiM73I_L?ZD3z~_>gBUZM(6tFsQK<7~>xV&Yv27blDFlN-+_`fH z0FF(>hvPU9LWHDmbleQ|!t*@T>vaerFh4(!U@&+rdGE~$0Fs%TLWohvafTxHv9`7b ztu^xbJQ9gS7x^$r2qB=gZc5Mdeh7s^7mquHda=H~j>*YMT)1#y=)QL%91cS%RhC5b zZ8RFaVB7XlkCQ_>BEsC<+|WJmMKl^^!!Z6MOw)XrN~P+(mrlQXpi^dMX28rt-2wgl zrqk)VVHgi3fPchdG0QYfv|8P-rj?Zylu9MIu6v>^Ez3eClflHqM3+7k3LzGYnE?JN ziKyl{&R5gZ)1NIZEwzv1<>h5Oe*73hh+e;Mg%>Yg;P&m?$Ye5Y-K9&H_LWk9GYq3H z0KhcO``K((`{%dT8qc3U2Y{|JGV@yt5n*|Gx$Pqy4kMGvDAP253mm)$h-jUe|1vu} z+dQiGgWd|qiRXE3e{*wl4QBo`5pA>s001fF@8j|K_cJpyuGSjKWb&;@jvByJD&-HZ zck0xs@1>Lv+PwY`B5E=7&vLokce}g0?`o~daU7J( zekG;+kcjr%yuC)u{GR7|3s0XujXZhs#5~ZQD1d{+FgrWz=5o0mDdh)5^j+6_KO<&N zyRQ39wOal0qeqWIwOZ{&6T7SXJzb+IC#?sPK zV3^~YnK3dlf_y&jPEAcI0DqEFKIkm_Pyuu}OgoPAM=9l})oRr(l}e*8U%sTBogMfW zm}#0A8yiC+k>E@wQ%@ukrc&xF(=_k*%lfSX=m_K;0C!#2{YWWw-89W{Aw(Delu`}P p^D2g6{M$6muK|2bMD=0({vXw5QkBKIF^~WN002ovPDHLkV1ksx1}y*p literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/512px-1.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/512px-1.png new file mode 100644 index 0000000000000000000000000000000000000000..d06ba5e432ceb66aa000bc2aa7e92338ef106407 GIT binary patch literal 39410 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%0DLjMs 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 G^8N!Q?KyA& literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/512px.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/512px.png new file mode 100644 index 0000000000000000000000000000000000000000..d06ba5e432ceb66aa000bc2aa7e92338ef106407 GIT binary patch literal 39410 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%0DLjMs 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 G^8N!Q?KyA& literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/64px.png b/ImageWriter/Assets.xcassets/AppIcon.appiconset/64px.png new file mode 100644 index 0000000000000000000000000000000000000000..a9274cec328d31984fa36b703569fb9dcd67356e GIT binary patch literal 3583 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 FV1m4z-QxfN literal 0 HcmV?d00001 diff --git a/ImageWriter/Assets.xcassets/AppIcon.appiconset/Contents.json b/ImageWriter/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..052b15c --- /dev/null +++ b/ImageWriter/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "filename" : "16px.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "16x16" + }, + { + "filename" : "32px-1.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "16x16" + }, + { + "filename" : "32px.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "32x32" + }, + { + "filename" : "64px.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "32x32" + }, + { + "filename" : "128px.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "128x128" + }, + { + "filename" : "256px-1.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "128x128" + }, + { + "filename" : "256px.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "256x256" + }, + { + "filename" : "512px.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "256x256" + }, + { + "filename" : "512px-1.png", + "idiom" : "mac", + "scale" : "1x", + "size" : "512x512" + }, + { + "filename" : "1024px.png", + "idiom" : "mac", + "scale" : "2x", + "size" : "512x512" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/ImageWriter/Assets.xcassets/Contents.json b/ImageWriter/Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/ImageWriter/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/ImageWriter/Base.lproj/Main.storyboard b/ImageWriter/Base.lproj/Main.storyboard new file mode 100644 index 0000000..8e2f27a --- /dev/null +++ b/ImageWriter/Base.lproj/Main.storyboard @@ -0,0 +1,415 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ImageWriter/DeviceEnumerator.swift b/ImageWriter/DeviceEnumerator.swift new file mode 100644 index 0000000..2f54764 --- /dev/null +++ b/ImageWriter/DeviceEnumerator.swift @@ -0,0 +1,150 @@ +// +// Copyright (c) 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import IOKit.storage +import DiskArbitration +import CoreFoundation.CFRunLoop + +class DeviceEnumerator { + let delegate: DeviceEnumeratorDelegate + + let session: DASession + var removableOnly: Bool = true { + didSet { + reattachCallbacks() + } + } + + private static let rawDiskAppearedCallback: + @convention(c) (DADisk, UnsafeMutableRawPointer?) -> Void = { disk, pointer in + + let mySelf = Unmanaged.fromOpaque(pointer!).takeUnretainedValue() + mySelf.onDiskAppeared(disk) + } + + private static let rawDiskDisappearedCallback: + @convention(c) (DADisk, UnsafeMutableRawPointer?) -> Void = { disk, pointer in + + let mySelf = Unmanaged.fromOpaque(pointer!).takeUnretainedValue() + mySelf.onDiskDisappeared(disk) + } + + init(withDelegate delegate: DeviceEnumeratorDelegate) throws { + self.delegate = delegate + + if let session = DASessionCreate(kCFAllocatorDefault) { + self.session = session + } else { + throw DeviceEnumeratorError.generalError + } + + reattachCallbacks() + + DASessionScheduleWithRunLoop(self.session, CFRunLoopGetCurrent(), CFRunLoopMode.defaultMode.rawValue) + } + + private func reattachCallbacks() { + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + + let diskAppearedPtr = + unsafeBitCast(DeviceEnumerator.rawDiskAppearedCallback, to: UnsafeMutableRawPointer.self) + DAUnregisterCallback(self.session, diskAppearedPtr, rawSelf) + + let diskDisappearedPtr = + unsafeBitCast(DeviceEnumerator.rawDiskDisappearedCallback, to: UnsafeMutableRawPointer.self) + DAUnregisterCallback(self.session, diskDisappearedPtr, rawSelf) + + self.delegate.clearDevices() + + var descriptor = Dictionary() + descriptor[kDADiskDescriptionMediaWholeKey] = kCFBooleanTrue + descriptor[kDADiskDescriptionMediaWritableKey] = kCFBooleanTrue + if (self.removableOnly) { + descriptor[kDADiskDescriptionMediaRemovableKey] = kCFBooleanTrue + } + + let rawDescriptor = descriptor as CFDictionary + + DARegisterDiskAppearedCallback(self.session, rawDescriptor, DeviceEnumerator.rawDiskAppearedCallback, rawSelf) + DARegisterDiskDisappearedCallback(self.session, rawDescriptor, DeviceEnumerator.rawDiskDisappearedCallback, rawSelf) + } + + private func onDiskAppeared(_ disk: DADisk) { + // check if this is APFS + let media = DADiskCopyIOMedia(disk) + defer { IOObjectRelease(media) } + var parent: io_registry_entry_t = media + var result = IORegistryEntryGetParentEntry(parent, kIOServicePlane, &parent) + while result == kIOReturnSuccess { + var hadIOStorage = false + + var classStr: String? = IOObjectCopyClass(parent).takeRetainedValue() as String + repeat { + if classStr == kIOMediaClass { + // block it + let namePtr = DADiskGetBSDName(disk)! + let name = String(cString: namePtr) + print("Blocked device \(name) because it has a root device (APFS?)") + // this is the actual root device + // skip the disk + IOObjectRelease(parent) + return + } else if classStr == kIOStorageClass { + hadIOStorage = true + break + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } while classStr != nil + + if !hadIOStorage { + // no need to iterate further + IOObjectRelease(parent) + break + } + + let oldParent = parent + result = IORegistryEntryGetParentEntry(parent, kIOServicePlane, &parent) + IOObjectRelease(oldParent) + } + + self.delegate.deviceAppeared(Device(fromDisk: disk)) + } + + private func onDiskDisappeared(_ disk: DADisk) { + self.delegate.deviceDisappeared(Device(fromDisk: disk)) + } + + struct Device : Equatable { + init(fromDisk disk: DADisk) { + let props = DADiskCopyDescription(disk) as! Dictionary + name = props[kDADiskDescriptionMediaNameKey] as! String + bsdName = props[kDADiskDescriptionMediaBSDNameKey] as! String + + let cfNum = props[kDADiskDescriptionMediaSizeKey] as! CFNumber + self.size = Int64(truncating: cfNum) + } + + let name: String + let bsdName: String + let size: Int64 + + static func ==(lhs: Device, rhs: Device) -> Bool { + lhs.bsdName == rhs.bsdName + } + } +} + +enum DeviceEnumeratorError: Error { + case generalError +} + +protocol DeviceEnumeratorDelegate { + func deviceAppeared(_ device: DeviceEnumerator.Device) + + func deviceDisappeared(_ device: DeviceEnumerator.Device) + + func clearDevices() +} diff --git a/ImageWriter/DownloadsObserver.swift b/ImageWriter/DownloadsObserver.swift new file mode 100644 index 0000000..f9a373b --- /dev/null +++ b/ImageWriter/DownloadsObserver.swift @@ -0,0 +1,36 @@ +// +// DownloadsObserver.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +class DownloadsObserver : NSObject, NSFilePresenter { + lazy var presentedItemOperationQueue = OperationQueue.main + var presentedItemURL: URL? + + private let delegate: DownloadsObserverDelegate + + init(withDelegate delegate: DownloadsObserverDelegate, downloadsFolder: URL) { + self.presentedItemURL = downloadsFolder + self.delegate = delegate + super.init() + NSFileCoordinator.addFilePresenter(self) + } + + deinit { + NSFileCoordinator.removeFilePresenter(self) + } + + func presentedSubitemDidChange(at url: URL) { + if (["img", "iso"].contains(url.pathExtension)) { + self.delegate.onDownloadsChanged() + } + } +} + +protocol DownloadsObserverDelegate { + func onDownloadsChanged() +} diff --git a/ImageWriter/HelperConnection.swift b/ImageWriter/HelperConnection.swift new file mode 100644 index 0000000..8651d02 --- /dev/null +++ b/ImageWriter/HelperConnection.swift @@ -0,0 +1,193 @@ +// +// HelperHelper.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import SecurityFoundation +import ServiceManagement +import Cocoa + +class HelperConnection { + + static var auth: AuthorizationRef? = nil + var currentConnection: NSXPCConnection? + private var closing: Bool = false + + init(proto: AppProtocol) { + let conn = NSXPCConnection(machServiceName: HelperConstants.Identifier, options: .privileged) + conn.exportedInterface = NSXPCInterface(with: AppProtocol.self) + conn.exportedObject = proto + conn.remoteObjectInterface = NSXPCInterface(with: HelperProtocol.self) + conn.invalidationHandler = { + self.currentConnection?.invalidationHandler = nil + DispatchQueue.main.async { + self.currentConnection = nil + } + } + + self.currentConnection = conn + self.currentConnection?.resume() + } + + func getAPI() -> HelperProtocol? { + return self.currentConnection?.remoteObjectProxyWithErrorHandler({ error in + if self.closing { + print("Error while closing (this is normal): ", error) + return + } + + DispatchQueue.main.async { + print("Fatal error on helper connection", error) + + let dialog = NSAlert(error: error) + dialog.runModal() + } + }) as? HelperProtocol + } + + func close() { + self.closing = true + guard let conn = self.currentConnection else { return } + conn.invalidate() + self.currentConnection = nil + } + + static func checkHelperRecent(_ callback: @escaping (Bool) -> Void) { + let conn = NSXPCConnection(machServiceName: HelperConstants.Identifier, options: .privileged) + conn.remoteObjectInterface = NSXPCInterface(with: HelperProtocol.self) + + var receivedVersion: String? = nil + conn.invalidationHandler = { + print("check version invalidate (this is corrent)") + conn.invalidationHandler = nil + DispatchQueue.main.async { + callback(receivedVersion == HelperConstants.Version) + } + } + conn.resume() + + guard let helper = conn.remoteObjectProxyWithErrorHandler({ err in + if receivedVersion != nil { + return + } + + print("Got error while checking version", err) + conn.invalidate() + }) as? HelperProtocol else { + print("Got nil as protocol while checking version") + conn.invalidationHandler = nil + conn.invalidate() + callback(false) + return + } + + helper.getVersion(completion: { ver in + print("Versiond") + receivedVersion = ver + if ver != HelperConstants.Version { + // quit! + print("Version doesn't match") + let auth = try! HelperConnection.getAuthSerialized() + helper.stop(withAuth: auth) + } + conn.invalidate() + }) + } + + static func getAuthSerialized() throws -> [Int8] { + let auth = getAuthRef() + var authorizationExternalForm = AuthorizationExternalForm() + let result = AuthorizationMakeExternalForm(auth, &authorizationExternalForm) + + if result != errAuthorizationSuccess { + throw HelperConnectionError.unknownError + } + + var tmp = authorizationExternalForm.bytes + return withUnsafeBytes(of: &tmp, { rawPtr in + return [Int8](rawPtr.bindMemory(to: Int8.self)) + }) + } + + static func blessHelper() throws { + let auth = getAuthRef() + try ensurePreauth(withBlessPrivileges: true) + + + var cfError: Unmanaged? + if !SMJobBless(kSMDomainSystemLaunchd, HelperConstants.Identifier as CFString, auth, &cfError) { + if let error = cfError?.takeRetainedValue() { throw error } + } + } + + static func dropAuth() { + guard let ref = self.auth else { + return + } + + self.auth = nil + AuthorizationFree(ref, [.destroyRights]) + } + + private static func ensurePreauth(withBlessPrivileges blessPrivileges: Bool = false) throws { + var privileges = [String](HelperConstants.AllPermissions) + if blessPrivileges { + privileges.append(kSMRightBlessPrivilegedHelper) + } + + try obtainPreauthPerms(privileges) + } + + private static func obtainPreauthPerms(_ permissions: [String]) throws { + let authRef = getAuthRef() + + let permissionArrs = permissions.map({ it in it.utf8CString }) + var authItems = [AuthorizationItem]() + + for perm in permissionArrs { + // kSMRightBlessPrivilegedHelper + let authItem: AuthorizationItem = perm.withUnsafeBufferPointer({ name -> AuthorizationItem in + AuthorizationItem(name: name.baseAddress!, valueLength: 0, value: UnsafeMutableRawPointer(bitPattern: 0), flags: 0) + }) + + authItems.append(authItem) + } + + try authItems.withUnsafeMutableBufferPointer({ authItemsPtr in + var authRights: AuthorizationRights = AuthorizationRights(count: UInt32(authItemsPtr.count), items: authItemsPtr.baseAddress!) + + let result = withUnsafePointer(to: &authRights, { ptr in + AuthorizationCopyRights(authRef, ptr, nil, [.interactionAllowed, .extendRights, .preAuthorize], nil) + }) + + if result != errAuthorizationSuccess { + throw HelperConnectionError.deniedError + } + }) + } + + private static func getAuthRef() -> AuthorizationRef { + if let ref = self.auth { + return ref + } + + let ref = createAuthRef() + self.auth = ref + return ref + } + + private static func createAuthRef() -> AuthorizationRef { + var authRef: AuthorizationRef? + AuthorizationCreate(nil, nil, [], &authRef) + return authRef! + } +} + +enum HelperConnectionError: Error { + case deniedError + case unknownError + case connectionLostError +} diff --git a/ImageWriter/IOUtil.swift b/ImageWriter/IOUtil.swift new file mode 100644 index 0000000..a55c1da --- /dev/null +++ b/ImageWriter/IOUtil.swift @@ -0,0 +1,25 @@ +// +// IOUtil.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +class IOUtil { + @available(*, unavailable) private init() {} + + static func detectMicrosoftImage(_ imageUrl: URL) -> Bool { + let compareStr = "MICROSOFT CORPORATION" + let compareData = compareStr.data(using: .ascii)! + + // load some bytes + let handle = try? FileHandle(forReadingFrom: imageUrl) + defer { try? handle?.close() } + + try? handle?.seek(toOffset: 0x813E) + let result = handle?.readData(ofLength: compareData.count) + return result == compareData + } +} diff --git a/ImageWriter/ImageWriter.entitlements b/ImageWriter/ImageWriter.entitlements new file mode 100644 index 0000000..49ad0bb --- /dev/null +++ b/ImageWriter/ImageWriter.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.automation.apple-events + + + diff --git a/ImageWriter/Info.plist b/ImageWriter/Info.plist new file mode 100644 index 0000000..e2bc8e3 --- /dev/null +++ b/ImageWriter/Info.plist @@ -0,0 +1,45 @@ + + + + + NSAppleEventsUsageDescription + Used to communicate with the helper tool. + SMPrivilegedExecutables + + com.xxmicloxx.ImageWriterHelper + identifier "com.xxmicloxx.ImageWriterHelper" and anchor apple generic and certificate leaf[subject.CN] = "Apple Development: xxmicloxx@googlemail.com (JH7FVZM487)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSApplicationCategoryType + public.app-category.utilities + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + Copyright © 2020 xxmicloxx. All rights reserved. + NSMainStoryboardFile + Main + NSPrincipalClass + NSApplication + NSSupportsAutomaticTermination + + NSSupportsSuddenTermination + + + diff --git a/ImageWriter/ViewController.swift b/ImageWriter/ViewController.swift new file mode 100644 index 0000000..2626660 --- /dev/null +++ b/ImageWriter/ViewController.swift @@ -0,0 +1,682 @@ +// +// ViewController.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Cocoa +import SecurityFoundation + + +class ViewController: NSViewController, DeviceEnumeratorDelegate, AppProtocol, DownloadsObserverDelegate { + + private var downloadsObserver: DownloadsObserver! + private var devEnumerator: DeviceEnumerator! + private(set) var helperConnection: HelperConnection? = nil + + private var currentFile: URL? = nil { + didSet { + resetImageMenu() + updateUIState() + + checkWindowsImage() + } + } + + private(set) var flashing: Bool = false { + didSet { + updateUIState() + } + } + + private var ejecting: Bool = false { + didSet { + updateUIState() + } + } + + @IBOutlet weak var showInternalBox: NSButton! + @IBOutlet weak var driveMenu: NSMenu! + @IBOutlet weak var driveDropDown: NSPopUpButton! + @IBOutlet weak var imageMenu: NSMenu! + @IBOutlet weak var imageDropDown: NSPopUpButton! + @IBOutlet weak var writeButton: NSButton! + @IBOutlet weak var cancelButton: NSButton! + @IBOutlet weak var progressBar: NSProgressIndicator! + @IBOutlet weak var statusLabel: NSTextField! + @IBOutlet weak var driveLabel: NSTextField! + @IBOutlet weak var writeModeDropDown: NSPopUpButton! + @IBOutlet var advancedOptionsConstraint: NSLayoutConstraint! + @IBOutlet weak var advancedOptionsDisclosure: NSButton! + + override func viewDidLoad() { + super.viewDidLoad() + + view.setFrameSize(view.fittingSize) + + if let delegate = NSApp.delegate as? AppDelegate { + delegate.viewController = self + } + + initHelperConnection() + + resetImageMenu() + + guard let downloadsUrl = FileManager.default.urls(for: .downloadsDirectory, in: .userDomainMask).first + else { return } + + downloadsObserver = DownloadsObserver(withDelegate: self, downloadsFolder: downloadsUrl) + } + + override func viewDidAppear() { + super.viewDidAppear() + + initEnumerator() + } + + override func viewWillDisappear() { + if let delegate = NSApp.delegate as? AppDelegate { + delegate.viewController = nil + } + } + + private func initHelperConnection() { + connectToHelper(completed: { + do { + let auth = try HelperConnection.getAuthSerialized() + self.helperConnection?.getAPI()?.subscribe(withAuth: auth, flashing: { flashing in + DispatchQueue.main.async { + self.flashing = flashing + } + }) + } catch { + print("No auth :(") + } + }) + } + + private func checkWindowsImage() { + guard let file = currentFile else { + return + } + + if IOUtil.detectMicrosoftImage(file) { + let alert = NSAlert() + alert.alertStyle = .informational + alert.messageText = "Windows image detected" + alert.informativeText = + """ + The selected image seems to be a windows image. + Do you want to switch to the windows installer creation mode? + """ + alert.addButton(withTitle: "Switch Mode") + alert.addButton(withTitle: "Cancel") + + alert.beginSheetModal(for: view.window!, completionHandler: { resp in + switch (resp) { + case .alertFirstButtonReturn: + self.writeModeDropDown.selectItem(withTag: 1) + + if self.advancedOptionsDisclosure.state != .on { + self.advancedOptionsDisclosure.performClick(self) + } + + self.updateUIState() + + break + + case .alertSecondButtonReturn: + // just close + break + + default: + break + } + }) + } + } + + private func updateUIState() { + let working = flashing || ejecting + + driveDropDown.isEnabled = !working + showInternalBox.isEnabled = !working + imageDropDown.isEnabled = !working + cancelButton.isEnabled = flashing + writeButton.isEnabled = currentFile != nil && !working + progressBar.isHidden = !working + statusLabel.isHidden = !working + driveLabel.isEnabled = !working && writeModeDropDown.selectedItem?.tag == 1 + writeModeDropDown.isEnabled = !working + + if ejecting { + progressBar.isIndeterminate = true + progressBar.startAnimation(self) + statusLabel.stringValue = "Ejecting..." + } + + if working { + view.window?.styleMask.remove(.closable) + } else { + view.window?.styleMask.insert(.closable) + + progressBar.stopAnimation(self) + progressBar.isIndeterminate = false + progressBar.toolTip = nil + progressBar.doubleValue = 0.0 + } + } + + @IBAction func onAdvancedOptionsToggled(_ sender: NSButton) { + // prevent arrow from bugging out + DispatchQueue.main.async { + self.view.layoutSubtreeIfNeeded() + + let oldSize = self.view.fittingSize + self.advancedOptionsConstraint.isActive = sender.state == .off + self.view.layoutSubtreeIfNeeded() + let newSize = self.view.fittingSize + + let delta = newSize.height - oldSize.height + var frame = self.view.window!.frame + frame.size.height += delta + frame.origin.y -= delta + self.view.window!.setFrame(frame, display: true, animate: true) + } + } + + @IBAction func onWriteModeChanged(_ sender: Any) { + updateUIState() + } + + func onDownloadsChanged() { + resetImageMenu() + } + + private func resetImageMenu() { + imageMenu.removeAllItems() + + if let file = currentFile { + addFileItem(file) + } else { + imageMenu.addItem(withTitle: "No image selected", action: nil, keyEquivalent: "") + } + + addDownloadImages() + + imageMenu.addItem(NSMenuItem.separator()) + imageMenu.addItem(withTitle: "Select image file...", + action: #selector(selectImage), keyEquivalent: "") + } + + private func addDownloadImages() { + do { + guard let downloadsUrl = FileManager.default.urls(for: .downloadsDirectory, in: .userDomainMask).first + else { return } + + var files = try FileManager.default.contentsOfDirectory( + at: downloadsUrl, + includingPropertiesForKeys: [.fileSizeKey, .nameKey, .creationDateKey], + options: [ + .skipsSubdirectoryDescendants, + .skipsHiddenFiles + ]) + + try files.sort(by: { (in1, in2) -> Bool in + let in1Props = try in1.resourceValues(forKeys: [.creationDateKey]) + let in2Props = try in2.resourceValues(forKeys: [.creationDateKey]) + return in1Props.creationDate! >= in2Props.creationDate! + }) + + let filteredFiles = files.filter { ["img", "iso"].contains($0.pathExtension.lowercased()) } + + for file in filteredFiles.prefix(5) { + let resources = try file.resourceValues(forKeys: [.fileSizeKey, .nameKey]) + let displayFileSize = ViewController.userFriendlySize(Int64(resources.fileSize!)) + let displayString = "\(resources.name!) (\(displayFileSize))" + let item = NSMenuItem(title: displayString, action: #selector(changeImage), keyEquivalent: "") + item.representedObject = file + imageMenu.addItem(item) + } + } catch { + // fail gracefully + print("Could not get files in downloads dir", error) + } + } + + private func addFileItem(_ file: URL) { + do { + let resources = try file.resourceValues(forKeys: [.fileSizeKey, .nameKey]) + let displayFileSize = ViewController.userFriendlySize(Int64(resources.fileSize!)) + let displayString = "\(resources.name!) (\(displayFileSize))" + imageMenu.addItem(withTitle: displayString, action: nil, keyEquivalent: "") + } catch { + // fuu + DispatchQueue.main.async { + self.currentFile = nil + + let alert = NSAlert(error: error) + alert.beginSheetModal(for: self.view.window!) + } + } + } + + private func initEnumerator() { + do { + devEnumerator = try DeviceEnumerator(withDelegate: self) + driveDropDown.isEnabled = true + } catch { + let alert = NSAlert() + alert.messageText = "Could not load drive enumerator" + alert.informativeText = """ + There was an error starting the drive enumerator. + This could be caused by a permissions problem. + """ + + alert.alertStyle = .critical + alert.addButton(withTitle: "Quit") + alert.addButton(withTitle: "Retry") + + alert.beginSheetModal(for: view.window!, completionHandler: { (resp: NSApplication.ModalResponse) in + switch (resp) { + case .alertFirstButtonReturn: + // quit app + NSApplication.shared.terminate(self) + break; + + case .alertSecondButtonReturn: + // retry + self.initEnumerator() + break; + + default: + break; + } + }) + } + } + + @objc private func changeImage(_ item: NSMenuItem) { + currentFile = (item.representedObject as! URL) + } + + @objc private func selectImage() { + let openPanel = NSOpenPanel() + openPanel.prompt = "Select" + + let allowedTypes = ["img", "iso"] + openPanel.allowedFileTypes = allowedTypes + openPanel.allowsOtherFileTypes = true + openPanel.canDownloadUbiquitousContents = true + + openPanel.beginSheetModal(for: view.window!, completionHandler: { (resp) in + if resp != .OK { + return + } + + // get the file + guard let url = openPanel.url else { + return + } + + self.currentFile = url + }) + } + + private static func userFriendlySize(_ bytes: Int64) -> String { + let formatter = ByteCountFormatter() + formatter.allowedUnits = [.useGB, .useTB, .useMB] + formatter.countStyle = .file + formatter.includesUnit = true + return formatter.string(fromByteCount: bytes) + } + + func deviceAppeared(_ device: DeviceEnumerator.Device) { + let item = NSMenuItem() + let size = ViewController.userFriendlySize(device.size) + item.title = "\(device.name) (\(size), \(device.bsdName))" + item.representedObject = device + driveMenu.addItem(item) + checkDrivesEmpty() + } + + func deviceDisappeared(_ device: DeviceEnumerator.Device) { + guard let idx = driveMenu.items.firstIndex(where: { (item: NSMenuItem) -> Bool in + (item.representedObject as! DeviceEnumerator.Device) == device + }) else { + return + } + + driveMenu.items.remove(at: idx) + checkDrivesEmpty() + } + + func clearDevices() { + driveMenu.removeAllItems() + checkDrivesEmpty() + } + + private func checkDrivesEmpty() { + let items = driveMenu.numberOfItems + if (items == 0) { + let item = NSMenuItem() + item.title = "No drives found" + item.isEnabled = false + item.tag = 1 + driveMenu.addItem(item) + driveDropDown.isEnabled = false + } else if (driveMenu.numberOfItems > 1 && driveMenu.indexOfItem(withTag: 1) != -1) { + driveMenu.removeItem(at: driveMenu.indexOfItem(withTag: 1)) + driveDropDown.isEnabled = true + } + } + + override var representedObject: Any? { + didSet { + // Update the view, if already loaded. + } + } + + private func connectToHelper(completed: @escaping () -> Void) { + if let _ = self.helperConnection { + completed() + return + } + + self.helperConnection = HelperConnection(proto: self) + completed() + } + + @IBAction func onShowInternalChanged(_ sender: Any) { + devEnumerator.removableOnly = showInternalBox.state == .off + } + + private func checkImageSize() -> Bool { + guard let device = driveDropDown.selectedItem?.representedObject as? DeviceEnumerator.Device else { + return false + } + + guard let image = currentFile else { + return false + } + + let resources: URLResourceValues + do { + resources = try image.resourceValues(forKeys: [.fileSizeKey]) + } catch { + // skip size check + return true + } + + if device.size < Int64(resources.fileSize!) { + // disk too small + let alert = NSAlert() + alert.alertStyle = .critical + alert.messageText = "Target drive too small" + alert.informativeText = "The image file is larger than the selected target drive." + alert.beginSheetModal(for: view.window!, completionHandler: nil) + return false + } + + return true + } + + @IBAction func onWriteClicked(_ sender: Any) { + if !checkImageSize() { + return + } + + guard let driveName = driveDropDown.selectedItem?.title else { + return + } + + // show confirm dialog + let alert = NSAlert() + alert.alertStyle = .warning + alert.messageText = "All files will be deleted" + alert.informativeText = + """ + The drive \"\(driveName)\" will be wiped completely. + This operation cannot be undone. Are you sure? + """ + alert.addButton(withTitle: "Wipe") + alert.addButton(withTitle: "Cancel") + alert.addButton(withTitle: "Russian Roulette") + + alert.beginSheetModal(for: view.window!, completionHandler: { response in + switch response { + case .alertFirstButtonReturn: + self.startFlash() + break + case .alertSecondButtonReturn: + // do nothing, the user chickened out + break + case .alertThirdButtonReturn: + let bang = Int.random(in: 0..<6) == 0 + if (bang) { + self.startFlash() + } else { + let alert = NSAlert() + alert.messageText = "Click." + alert.addButton(withTitle: "Phew.") + alert.beginSheetModal(for: self.view.window!, completionHandler: nil) + } + break + default: + break + } + }) + } + + private func startFlash() { + // get disk + guard let drive = self.driveDropDown.selectedItem?.representedObject as? DeviceEnumerator.Device else { + // no + return + } + + // get file + guard let url = self.currentFile else { + return + } + + let auth: [Int8] + do { + auth = try HelperConnection.getAuthSerialized() + } catch { + print("No auth :(") + return + } + + let finishHandler: (Bool) -> Void = { success in + DispatchQueue.main.async { + if !success { + self.permissionError() + return + } + + self.flashing = true + } + } + + let tag = self.writeModeDropDown.selectedTag() + + if tag == 0 { + self.helperConnection?.getAPI()?.writeImage(url, toBSDDisk: drive.bsdName, withAuth: auth, started: finishHandler) + } else if tag == 1 { + var label = driveLabel.stringValue + if label.isEmpty { + label = driveLabel.placeholderString ?? "WInstaller" + } + + self.helperConnection?.getAPI()? + .writeWindowsImage(url, toBSDDisk: drive.bsdName, withLabel: label, withAuth: auth, started: finishHandler) + } + } + + @IBAction func onCancelClicked(_ sender: Any) { + do { + let auth = try HelperConnection.getAuthSerialized() + self.helperConnection?.getAPI()?.cancelWrite(withAuth: auth, stopped: { success in + DispatchQueue.main.async { + if !success { + self.permissionError() + return + } + } + }) + } catch { + print("Not authorized :(") + } + } + + private func permissionError() { + // show error dialog + let alert = NSAlert() + alert.alertStyle = .critical + alert.messageText = "Administrator privileges required" + alert.informativeText = "You do not have the permission to perform this action. Please log in as an administrator." + alert.beginSheetModal(for: self.view.window!, completionHandler: nil) + } + + func updateProgress(percentage: Float) { + DispatchQueue.main.async { + if !percentage.isNaN { + self.progressBar.stopAnimation(self) + self.progressBar.isIndeterminate = false + self.progressBar.doubleValue = Double(percentage) + } else { + self.progressBar.isIndeterminate = true + self.progressBar.startAnimation(self) + } + } + } + + func updateStatus(status: String) { + DispatchQueue.main.async { + self.progressBar.toolTip = status + self.statusLabel.stringValue = status + } + } + + private func eject() { + guard let device = self.driveDropDown.selectedItem?.representedObject as? DeviceEnumerator.Device else { + return + } + + self.ejecting = true + + do { + let auth = try HelperConnection.getAuthSerialized() + self.helperConnection?.getAPI()?.eject(bsdDisk: device.bsdName, withAuth: auth, whenDone: { _ in + DispatchQueue.main.async { + self.ejecting = false + + let alert = NSAlert() + alert.alertStyle = .informational + alert.messageText = "Drive ejected successfully" + alert.informativeText = "The target can now be safely removed." + alert.addButton(withTitle: "OK") + alert.addButton(withTitle: "Quit") + alert.beginSheetModal(for: self.view.window!, completionHandler: { response in + switch response { + case .alertFirstButtonReturn: + // nothing + break + + case .alertSecondButtonReturn: + NSApp.terminate(self) + break + + default: + break + } + }) + } + }) + } catch { + // Don't care + } + } + + func writingFinsihed() { + DispatchQueue.main.async { + self.flashing = false + + let device = self.driveDropDown.selectedItem?.representedObject as? DeviceEnumerator.Device + + let alert = NSAlert() + alert.alertStyle = .informational + alert.messageText = "Image written successfully" + alert.informativeText = "The image has successfully been written to the selected drive." + alert.addButton(withTitle: "OK") + alert.addButton(withTitle: "Quit") + if device != nil { + alert.addButton(withTitle: "Eject Drive") + } + alert.beginSheetModal(for: self.view.window!, completionHandler: { response in + switch response { + case .alertFirstButtonReturn: + // do nothing + break + case .alertSecondButtonReturn: + // quit + NSApp.terminate(self) + break + + case .alertThirdButtonReturn: + self.eject() + break + + default: + break + } + }) + } + } + + func writingError(_ error: HelperError) { + var showDialog = true + let msg: String + switch error { + case .unknownError: + msg = "An undefined error occurred while writing the image to the target." + break + + case .claimError: + msg = "The drive could not be claimed for writing." + break + + case .readError: + msg = "The image file could not be read." + break + + case .writeError: + msg = "Writing to the target failed." + break + + case .outOfSpaceError: + msg = "The target ran out of space." + + case .cancelledError: + showDialog = false + msg = "" + break + } + + DispatchQueue.main.async { + self.flashing = false + + if showDialog { + let alert = NSAlert() + alert.alertStyle = .critical + alert.messageText = "Error while writing image to drive" + alert.informativeText = msg + alert.beginSheetModal(for: self.view.window!, completionHandler: nil) + } + } + } +} + + diff --git a/ImageWriterHelper/DiskHelper.swift b/ImageWriterHelper/DiskHelper.swift new file mode 100644 index 0000000..286592e --- /dev/null +++ b/ImageWriterHelper/DiskHelper.swift @@ -0,0 +1,324 @@ +// +// MountHelper.swift +// com.xxmicloxx.ImageWriterHelper +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +class DiskHelper { + private var success = false + private var dispatchGroup = DispatchGroup() + private var preventMountDisk: String? = nil + private var daSession: DASession + + init() { + daSession = DASessionCreate(kCFAllocatorDefault)! + DASessionSetDispatchQueue(daSession, DispatchQueue.main) + } + + private static let claimCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let unmountCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let mountCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let ejectCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let mountApprovalCallback: + @convention(c) (DADisk, UnsafeMutableRawPointer?) -> Unmanaged? = { disk, ptr -> Unmanaged? in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + + if mySelf.checkMount(disk) { + return nil + } + + let descTxt = "Writing image" + return Unmanaged.passRetained(DADissenterCreate(kCFAllocatorDefault, DAReturn(kDAReturnNotPermitted), descTxt as CFString)) + } + + private func checkMount(_ disk: DADisk) -> Bool { + guard let bsdPtr = DADiskGetBSDName(disk) else { + return true + } + + let bsdName = String(cString: bsdPtr) + guard let diskBsdName = preventMountDisk else { + return true + } + + if bsdName == diskBsdName || bsdName.starts(with: diskBsdName + "s") { + return false + } + + // we need to check if we are child to the target disk + // find the next disk + let media = DADiskCopyIOMedia(disk) + defer { IOObjectRelease(media) } + var parent: io_registry_entry_t = media + var result = IORegistryEntryGetParentEntry(parent, kIOServicePlane, &parent) + while result == kIOReturnSuccess { + var classStr: String? = IOObjectCopyClass(parent).takeRetainedValue() as String + repeat { + if classStr == kIOMediaClass { + // we found a root IOMediaClass + // check for the root class + let rootDisk = DADiskCreateFromIOMedia(kCFAllocatorDefault, daSession, parent)! + IOObjectRelease(parent) + return checkMount(rootDisk) + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } while classStr != nil + + let oldParent = parent + result = IORegistryEntryGetParentEntry(parent, kIOServicePlane, &parent) + IOObjectRelease(oldParent) + } + + // didn't find a root + // allow mount + return true + } + + func createDisk(_ name: String) -> DADisk? { + return DADiskCreateFromBSDName(kCFAllocatorDefault, daSession, name) + } + + func reset() { + self.dispatchGroup = DispatchGroup() + allowMount() + } + + func claimDisk(_ daDisk: DADisk) -> Bool { + self.dispatchGroup.enter() + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskClaim(daDisk, DADiskClaimOptions(kDADiskClaimOptionDefault), nil, nil, DiskHelper.claimCallback, rawSelf) + let result = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + return result == .success && self.success + } + + func preventMount(_ bsdName: String) { + self.preventMountDisk = bsdName + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DARegisterDiskMountApprovalCallback(daSession, nil, DiskHelper.mountApprovalCallback, rawSelf) + } + + func allowMount() { + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + let callbackPtr = unsafeBitCast(DiskHelper.mountApprovalCallback, to: UnsafeMutableRawPointer.self) + DAUnregisterCallback(daSession, callbackPtr, rawSelf) + } + + private func unmountChildren(_ media: io_registry_entry_t) -> Bool { + var iter = io_iterator_t() + let retCode = IORegistryEntryGetChildIterator(media, kIOServicePlane, &iter) + if retCode != kIOReturnSuccess { + // just give up and continue + return true + } + + defer { IOObjectRelease(iter) } + + var mediaDevices = [io_registry_entry_t]() + var otherEntries = [io_registry_entry_t]() + + var obj: io_registry_entry_t = IOIteratorNext(iter) + while obj != 0 { + var classStr: String? = IOObjectCopyClass(obj)?.takeRetainedValue() as String? + while classStr != nil { + if classStr == kIOMediaClass { + // we found a IOMediaClass + mediaDevices.append(obj) + break + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } + + if classStr == nil { + // not an IOMedia class + otherEntries.append(obj) + } + + obj = IOIteratorNext(iter) + } + + var globalSuccess = true + + for dev in mediaDevices { + let disk = DADiskCreateFromIOMedia(kCFAllocatorDefault, daSession, dev)! + let params = DADiskCopyDescription(disk) as! Dictionary + + var success: Bool + if params[kDADiskDescriptionMediaWholeKey]! as! Bool == true { + success = unmountDisk(disk) + } else { + success = unmountChildren(dev) + } + + if !success { + globalSuccess = false + } + + IOObjectRelease(dev) + } + + for dev in otherEntries { + let success = unmountChildren(dev) + if !success { + globalSuccess = false + } + + IOObjectRelease(dev) + } + + return globalSuccess + } + + func unmountDisk(_ daDisk: DADisk) -> Bool { + // unmount child disks + let media = DADiskCopyIOMedia(daDisk) + defer { IOObjectRelease(media) } + + let bsdNamePtr = DADiskGetBSDName(daDisk)! + let bsdName = String(cString: bsdNamePtr) + NSLog("Unmounting %@", bsdName) + + let success = unmountChildren(media) + if !success { + NSLog("Cancelled unmounting %@", bsdName) + return false + } + + NSLog("Actually unmounting %@", bsdName) + + self.dispatchGroup.enter() + let unmountOptions = DADiskUnmountOptions(kDADiskUnmountOptionForce | kDADiskUnmountOptionWhole) + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskUnmount(daDisk, unmountOptions, DiskHelper.unmountCallback, rawSelf) + let result = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + return result == .success && self.success + } + + private func remountChildren(_ media: io_registry_entry_t) { + var iter = io_iterator_t() + let retCode = IORegistryEntryGetChildIterator(media, kIOServicePlane, &iter) + if retCode != kIOReturnSuccess { + // just give up and continue + return + } + + defer { IOObjectRelease(iter) } + + var mediaDevices = [io_registry_entry_t]() + var otherEntries = [io_registry_entry_t]() + + var obj: io_registry_entry_t = IOIteratorNext(iter) + while obj != 0 { + var classStr: String? = IOObjectCopyClass(obj)?.takeRetainedValue() as String? + while classStr != nil { + if classStr == kIOMediaClass { + // we found a IOMediaClass + mediaDevices.append(obj) + break + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } + + if classStr == nil { + // not an IOMedia class + otherEntries.append(obj) + } + + obj = IOIteratorNext(iter) + } + + + for dev in mediaDevices { + let disk = DADiskCreateFromIOMedia(kCFAllocatorDefault, daSession, dev)! + let params = DADiskCopyDescription(disk) as! Dictionary + + if params[kDADiskDescriptionMediaWholeKey]! as! Bool == true { + remountDisk(disk) + } else { + remountChildren(dev) + } + + IOObjectRelease(dev) + } + + for dev in otherEntries { + remountChildren(dev) + IOObjectRelease(dev) + } + } + + func remountDisk(_ daDisk: DADisk) { + // mount + let bsdPtr = DADiskGetBSDName(daDisk)! + let bsdStr = String(cString: bsdPtr) + NSLog("Remounting %@", bsdStr) + + self.dispatchGroup.enter() + let mountOptions = DADiskMountOptions(kDADiskMountOptionWhole) + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskMount(daDisk, nil, mountOptions, DiskHelper.mountCallback, rawSelf) + let _ = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + + // remount children + let media = DADiskCopyIOMedia(daDisk) + defer { IOObjectRelease(media) } + + remountChildren(media) + } + + func ejectDisk(_ daDisk: DADisk) -> Bool { + let bsdPtr = DADiskGetBSDName(daDisk)! + let bsdStr = String(cString: bsdPtr) + NSLog("Ejecting %@", bsdStr) + + self.dispatchGroup.enter() + let options = DADiskEjectOptions(kDADiskEjectOptionDefault) + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskEject(daDisk, options, DiskHelper.ejectCallback, rawSelf) + let result = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + return result == .success && self.success + } + + func logDiskInfo(_ disk: DADisk) { + let info = DADiskCopyDescription(disk) as! Dictionary + for key in info.keys { + NSLog("Disk info [%@]", key as String) + NSLog("Disk info value: \(String(describing: info[key]!))") + } + } + + func get(property: CFString, ofDisk disk: DADisk) -> AnyObject? { + let desc = DADiskCopyDescription(disk) as! Dictionary + return desc[property] + } +} + diff --git a/ImageWriterHelper/Helper-Info.plist b/ImageWriterHelper/Helper-Info.plist new file mode 100755 index 0000000..8eba009 --- /dev/null +++ b/ImageWriterHelper/Helper-Info.plist @@ -0,0 +1,22 @@ + + + + + NSAppleEventsUsageDescription + Used to communicate with the main application. + CFBundleIdentifier + com.xxmicloxx.ImageWriterHelper + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + com.xxmicloxx.ImageWriterHelper + CFBundleShortVersionString + 1.0 + CFBundleVersion + 3 + SMAuthorizedClients + + identifier "com.xxmicloxx.ImageWriter" and anchor apple generic and certificate leaf[subject.CN] = "Apple Development: xxmicloxx@googlemail.com (JH7FVZM487)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ + + + diff --git a/ImageWriterHelper/Helper-Launchd.plist b/ImageWriterHelper/Helper-Launchd.plist new file mode 100755 index 0000000..7b43e5a --- /dev/null +++ b/ImageWriterHelper/Helper-Launchd.plist @@ -0,0 +1,15 @@ + + + + + KeepAlive + + Label + com.xxmicloxx.ImageWriterHelper + MachServices + + com.xxmicloxx.ImageWriterHelper + + + + diff --git a/ImageWriterHelper/Helper.swift b/ImageWriterHelper/Helper.swift new file mode 100644 index 0000000..908bbb5 --- /dev/null +++ b/ImageWriterHelper/Helper.swift @@ -0,0 +1,173 @@ +// +// Helper.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import DiskArbitration + +class Helper: NSObject, NSXPCListenerDelegate, HelperProtocol { + + private let listener: NSXPCListener + private var writer: Writer! + + private var connections = [NSXPCConnection]() + private var shouldQuit = false + private var subscribedConnection: NSXPCConnection? = nil + internal var subscribedAppProtocol: AppProtocol? = nil + + override init() { + self.listener = NSXPCListener(machServiceName: HelperConstants.Identifier) + super.init() + self.writer = Writer(withHelper: self) + self.listener.delegate = self + } + + func run() { + self.listener.resume() + RunLoop.current.run() + } + + func listener(_ listener: NSXPCListener, shouldAcceptNewConnection connection: NSXPCConnection) -> Bool { + connection.remoteObjectInterface = NSXPCInterface(with: AppProtocol.self) + connection.exportedInterface = NSXPCInterface(with: HelperProtocol.self) + connection.exportedObject = self + + connection.invalidationHandler = { + if let connectionIndex = self.connections.firstIndex(of: connection) { + self.connections.remove(at: connectionIndex) + } + + if (self.subscribedConnection == connection) { + self.subscribedAppProtocol = nil + self.subscribedConnection = nil + } + } + + self.connections.append(connection) + connection.resume() + + return true + } + + func getVersion(completion: @escaping (String) -> Void) { + completion(HelperConstants.Version) + } + + func writeImage(_ imageURL: URL, toBSDDisk bsdDisk: String, withAuth auth: [Int8], started: @escaping (Bool) -> Void) { + let authed = HelperUtil.checkAuthorization(auth, forPerm: HelperConstants.WritePermission) + if !authed { + started(false) + return + } + + if self.writer.flashing { + started(false) + return + } + + // check url and bsddisk + if !imageURL.isFileURL || bsdDisk.range(of: #"^disk[0-9]+$"#, options: .regularExpression) == nil { + // parameter error + started(false) + return + } + + self.writer.startDirectWrite(imageURL, toBSDDisk: bsdDisk) + started(authed) + } + + func writeWindowsImage(_ imageURL: URL, toBSDDisk bsdDisk: String, withLabel label: String, withAuth auth: [Int8], started: @escaping (Bool) -> Void) { + let authed = HelperUtil.checkAuthorization(auth, forPerm: HelperConstants.WritePermission) + if !authed { + started(false) + return + } + + if self.writer.flashing { + started(false) + return + } + + // check url and bsddisk + if !imageURL.isFileURL || bsdDisk.range(of: #"^disk[0-9]+$"#, options: .regularExpression) == nil { + // parameter error + started(false) + return + } + + self.writer.startWindowsWrite(imageURL, toBSDDisk: bsdDisk, withLabel: label) + started(authed) + } + + func cancelWrite(withAuth auth: [Int8], stopped: @escaping (Bool) -> Void) { + let authed = HelperUtil.checkAuthorization(auth, forPerm: HelperConstants.CancelPermission) + if (!authed) { + stopped(false) + } + self.writer.cancelWrite() + stopped(true) + } + + func stop(withAuth auth: [Int8]) { + if !HelperUtil.checkAuthorization(auth, forPerm: HelperConstants.StopPermission) { + return + } + + self.listener.invalidate() + exit(0) + } + + func subscribe(withAuth auth: [Int8], flashing: @escaping (Bool) -> Void) { + if !HelperUtil.checkAuthorization(auth, forPerm: HelperConstants.SubscribePermission) { + return + } + + guard let connection = NSXPCConnection.current() else { + return + } + + self.subscribedConnection = connection + self.subscribedAppProtocol = connection.remoteObjectProxyWithErrorHandler({ error in + NSLog("Got error %@", error as NSError) + self.subscribedAppProtocol = nil + self.subscribedConnection = nil + if self.writer.flashing { + self.writer.cancelWrite() + } + }) as? AppProtocol + + flashing(self.writer.flashing) + } + + func eject(bsdDisk: String, withAuth auth: [Int8], whenDone: @escaping (Bool) -> Void) { + if !HelperUtil.checkAuthorization(auth, forPerm: HelperConstants.EjectPermission) { + whenDone(false) + return + } + + DispatchQueue.global(qos: .userInitiated).async { + let diskHelper = DiskHelper() + guard let disk = diskHelper.createDisk(bsdDisk) else { + whenDone(false) + return + } + + if !diskHelper.unmountDisk(disk) { + whenDone(false) + return + } + + if !diskHelper.ejectDisk(disk) { + whenDone(false) + return + } + + whenDone(true) + } + } +} + + diff --git a/ImageWriterHelper/HelperProtocol.swift b/ImageWriterHelper/HelperProtocol.swift new file mode 100644 index 0000000..d4cd45f --- /dev/null +++ b/ImageWriterHelper/HelperProtocol.swift @@ -0,0 +1,26 @@ +// +// HelperProtocol.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import Security.Authorization + +@objc(HelperProtocol) +protocol HelperProtocol { + func writeImage(_ imageURL: URL, toBSDDisk bsdDisk: String, withAuth: [Int8], started: @escaping (Bool) -> Void) + + func writeWindowsImage(_ imageURL: URL, toBSDDisk bsdDisk: String, withLabel: String, withAuth: [Int8], started: @escaping(Bool) -> Void) + + func cancelWrite(withAuth: [Int8], stopped: @escaping (Bool) -> Void) + + func getVersion(completion: @escaping (String) -> Void) + + func subscribe(withAuth: [Int8], flashing: @escaping (Bool) -> Void) + + func eject(bsdDisk: String, withAuth: [Int8], whenDone: @escaping (Bool) -> Void) + + func stop(withAuth: [Int8]) +} diff --git a/ImageWriterHelper/HelperUtil.swift b/ImageWriterHelper/HelperUtil.swift new file mode 100644 index 0000000..a3b0037 --- /dev/null +++ b/ImageWriterHelper/HelperUtil.swift @@ -0,0 +1,53 @@ +// +// HelperUtil.swift +// ImageWriter +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import Security.Authorization + +class HelperUtil { + @available(*, unavailable) private init() {} + + static func checkAuthorization(_ authData: [Int8], forPerm perm: String) -> Bool { + if authData.count != MemoryLayout.size { + // invalid + return false + } + let auth = authData.withUnsafeBytes({ bytes in + return bytes.bindMemory(to: AuthorizationExternalForm.self)[0] + }) + + var authRef: AuthorizationRef? = nil + let result = withUnsafePointer(to: auth, { authFormPtr in + AuthorizationCreateFromExternalForm(authFormPtr, &authRef) + }) + if result != errAuthorizationSuccess { + // error + return false + } + guard let ref = authRef else { + return false + } + defer { + var freeFlags: AuthorizationFlags = [.destroyRights] + let freeRes = AuthorizationFree(ref, freeFlags) + assert(freeRes == errAuthorizationSuccess) + } + + // we got a auth now copy rights + let permissionArr = perm.utf8CString + var authItem = permissionArr.withUnsafeBufferPointer({ name -> AuthorizationItem in + AuthorizationItem(name: name.baseAddress!, valueLength: 0, value: UnsafeMutableRawPointer(bitPattern: 0), flags: 0) + }) + + return withUnsafeMutablePointer(to: &authItem) { ptr in + var authRights: AuthorizationRights = AuthorizationRights(count: 1, items: ptr) + + let err = AuthorizationCopyRights(ref, &authRights, nil, [.extendRights, .interactionAllowed], nil) + return err == errAuthorizationSuccess + } + } +} diff --git a/ImageWriterHelper/IOUtil.swift b/ImageWriterHelper/IOUtil.swift new file mode 100644 index 0000000..40989b7 --- /dev/null +++ b/ImageWriterHelper/IOUtil.swift @@ -0,0 +1,331 @@ +// +// IOUtil.swift +// com.xxmicloxx.ImageWriterHelper +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import MachO + +class IOUtil { + @available(*, unavailable) private init() {} + + static func loadUefiImage() -> Data? { + if let handle = dlopen(nil, RTLD_LAZY) { + defer { dlclose(handle) } + + if let ptr = dlsym(handle, MH_EXECUTE_SYM) { + let mhExecHeaderPtr = ptr.assumingMemoryBound(to: mach_header_64.self) + + var size: UInt = 0 + let uefiImage = getsectiondata( + mhExecHeaderPtr, + "__DATA", + "__uefi_ntfs_img", + &size) + + guard let rawPtr = UnsafeMutableRawPointer(uefiImage) else { + return nil + } + + let data = Data(bytes: rawPtr, count: Int(size)) + return data + } + } + + return nil + } + + static func flash(data: Data, to output: URL) -> HelperError? { + let inputFile = InputStream(data: data) + inputFile.open() + + guard let diskFile = OutputStream(url: output, append: false) else { + inputFile.close() + return .writeError + } + diskFile.open() + + let bufferSize = 1024 * 1024 + let buffer = UnsafeMutablePointer.allocate(capacity: bufferSize) + defer { buffer.deallocate() } + + var read = 0 + var written = 0 + repeat { + read = inputFile.read(buffer, maxLength: bufferSize) + + if read < 0 { + // error + inputFile.close() + diskFile.close() + return .readError + } + + if read > 0 { + written = diskFile.write(buffer, maxLength: read) + if written < read { + // error + inputFile.close() + diskFile.close() + if written < 0 { + return .writeError + } else { + return .outOfSpaceError + } + } + } + + if Thread.current.isCancelled { + inputFile.close() + diskFile.close() + return .cancelledError + } + } while read > 0 + + diskFile.close() + inputFile.close() + + return nil + } + + static func dd(if input: URL, of output: URL, updateStatus: ((String) -> Void)?, onProgress: (Float) -> Void) -> HelperError? { + updateStatus?("Opening image file...") + + var sourceSize: Int64 = 0 + do { + let sourceInfo = try input.resourceValues(forKeys: [.fileSizeKey]) + sourceSize = Int64(sourceInfo.fileSize ?? 0) + } catch { + NSLog("Could not get source file size!") + } + + guard let imageFile = InputStream(url: input) else { + return .readError + } + imageFile.open() + + updateStatus?("Opening target disk...") + + guard let diskFile = OutputStream(url: output, append: false) else { + imageFile.close() + return .writeError + } + diskFile.open() + + updateStatus?("Writing to disk...") + onProgress(0.0) + + let formatter = ByteCountFormatter() + formatter.allowedUnits = [.useGB, .useTB, .useMB] + formatter.countStyle = .file + formatter.includesUnit = true + + let bufferSize = 4 * 1024 * 1024 + let buffer = UnsafeMutablePointer.allocate(capacity: bufferSize) + defer { buffer.deallocate() } + + var lastProgressUpdate = DispatchTime.now() + var totalCopied: Int64 = 0 + var read = 0 + var written = 0 + repeat { + read = imageFile.read(buffer, maxLength: bufferSize) + if read < 0 { + // error + imageFile.close() + diskFile.close() + return .readError + } + + if read > 0 { + written = diskFile.write(buffer, maxLength: read) + if written < read { + // error + imageFile.close() + diskFile.close() + if written < 0 { + return .writeError + } else { + return .outOfSpaceError + } + } + } + + totalCopied += Int64(read) + + if Thread.current.isCancelled { + imageFile.close() + diskFile.close() + return .cancelledError + } + + let now = DispatchTime.now() + if now.uptimeNanoseconds - lastProgressUpdate.uptimeNanoseconds > 200_000_000 && sourceSize != 0 { + lastProgressUpdate = now + let progess = Double(totalCopied) / Double(sourceSize) + onProgress(Float(progess * 100.0)) + + let copiedStr = formatter.string(fromByteCount: totalCopied) + let totalStr = formatter.string(fromByteCount: sourceSize) + updateStatus?("Writing to disk... (\(copiedStr) of \(totalStr))") + } + } while read > 0 + + diskFile.close() + imageFile.close() + + return nil + } + + static func run(executable: String, withArgs args: [String]) -> Bool { + let proc = Process() + proc.executableURL = URL(fileURLWithPath: executable) + proc.arguments = args + + let outPipe = Pipe() + let errPipe = Pipe() + proc.standardOutput = outPipe + proc.standardError = errPipe + proc.standardInput = FileHandle.nullDevice + + NSLog("Running %@ with args %@", executable, args) + + do { + try proc.run() + } catch { + return false + } + + proc.waitUntilExit() + + let outData = outPipe.fileHandleForReading.readDataToEndOfFile() + let errData = errPipe.fileHandleForReading.readDataToEndOfFile() + let output = String(decoding: outData, as: UTF8.self) + let error = String(decoding: errData, as: UTF8.self) + + NSLog("STDOUT: %@", output) + NSLog("STDERR: %@", error) + + return proc.terminationStatus == 0 + } + + static func readHDIUtil(withArgs args: [String]) -> [String: AnyObject]? { + let proc = Process() + proc.executableURL = URL(fileURLWithPath: "/usr/bin/hdiutil") + proc.arguments = args + + let outPipe = Pipe() + let errPipe = Pipe() + proc.standardOutput = outPipe + proc.standardError = errPipe + proc.standardInput = FileHandle.nullDevice + + NSLog("Getting plist from hdiutil with args %@", args) + + do { + try proc.run() + } catch { + return nil + } + + proc.waitUntilExit() + + let outData = outPipe.fileHandleForReading.readDataToEndOfFile() + let errData = errPipe.fileHandleForReading.readDataToEndOfFile() + let output = String(decoding: outData, as: UTF8.self) + let error = String(decoding: errData, as: UTF8.self) + + NSLog("STDOUT: %@", output) + NSLog("STDERR: %@", error) + + if proc.terminationStatus != 0 { + return nil + } + + var propertyListFormat = PropertyListSerialization.PropertyListFormat.xml + do { + guard let dict = try PropertyListSerialization.propertyList(from: outData, options: [], format: &propertyListFormat) + as? [String : AnyObject] else { + NSLog("Could not decode output") + return nil + } + + return dict + } catch { + NSLog("Could not decode output") + return nil + } + } + + static func copyFolderContents(from src: URL, to target: URL, totalSize: Int, updateStatus: (String) -> Void, updateProgress: (Float) -> Void) -> HelperError? { + do { + let sourceComponents = src.pathComponents.count + guard let contents = FileManager.default.enumerator(at: src, includingPropertiesForKeys: [.fileSizeKey]) else { + NSLog("Could not get source directory contents") + return .readError + } + + var alreadyCopied: Int = 0 + for obj in contents { + let file = obj as! URL + let components = file.pathComponents + let missingComponents = Array(components[sourceComponents...]) + + let vals = try file.resourceValues(forKeys: [.fileSizeKey, .isDirectoryKey]) + + var targetFile = target + for i in 0.. 0.01) { + // percentage copy + if let res = dd(if: file, of: targetFile, updateStatus: nil, onProgress: { progress in + let relPercentage = progress * Float(percentage) + updateProgress(relPercentage + Float(currentProgress)) + }) { + NSLog("Got error while copying: \(res)") + return res + } + + alreadyCopied += vals.fileSize ?? 0 + continue + } + } + + // plain copy + try FileManager.default.copyItem(at: file, to: targetFile) + alreadyCopied += vals.fileSize ?? 0 + } + + return nil + } catch { + NSLog("Unknown error while copying directory: \(error)") + return .unknownError + } + } +} diff --git a/ImageWriterHelper/MountHelper.swift b/ImageWriterHelper/MountHelper.swift new file mode 100644 index 0000000..b7385d8 --- /dev/null +++ b/ImageWriterHelper/MountHelper.swift @@ -0,0 +1,293 @@ +// +// MountHelper.swift +// com.xxmicloxx.ImageWriterHelper +// +// Created by Michael Loy on 23.04.20. +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +class DiskHelper { + private var success = false + private var dispatchGroup = DispatchGroup() + private var preventMountDisk: String? = nil + private var daSession: DASession + + init() { + daSession = DASessionCreate(kCFAllocatorDefault)! + DASessionSetDispatchQueue(daSession, DispatchQueue.main) + } + + private static let claimCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let unmountCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let mountCallback: + @convention(c) (DADisk, DADissenter?, UnsafeMutableRawPointer?) -> Void = { disk, dissenter, ptr in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + mySelf.success = dissenter == nil + mySelf.dispatchGroup.leave() + } + + private static let mountApprovalCallback: + @convention(c) (DADisk, UnsafeMutableRawPointer?) -> Unmanaged? = { disk, ptr -> Unmanaged? in + let mySelf = Unmanaged.fromOpaque(ptr!).takeUnretainedValue() + + if mySelf.checkMount(disk) { + return nil + } + + let descTxt = "Writing image" + return Unmanaged.passRetained(DADissenterCreate(kCFAllocatorDefault, DAReturn(kDAReturnNotPermitted), descTxt as CFString)) + } + + private func checkMount(_ disk: DADisk) -> Bool { + guard let bsdPtr = DADiskGetBSDName(disk) else { + return true + } + + let bsdName = String(cString: bsdPtr) + guard let diskBsdName = preventMountDisk else { + return true + } + + if bsdName == diskBsdName || bsdName.starts(with: diskBsdName + "s") { + return false + } + + // we need to check if we are child to the target disk + // find the next disk + let media = DADiskCopyIOMedia(disk) + defer { IOObjectRelease(media) } + var parent: io_registry_entry_t = media + var result = IORegistryEntryGetParentEntry(parent, kIOServicePlane, &parent) + while result == kIOReturnSuccess { + var classStr: String? = IOObjectCopyClass(parent).takeRetainedValue() as String + repeat { + if classStr == kIOMediaClass { + // we found a root IOMediaClass + // check for the root class + let rootDisk = DADiskCreateFromIOMedia(kCFAllocatorDefault, daSession, parent)! + IOObjectRelease(parent) + return checkMount(rootDisk) + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } while classStr != nil + + let oldParent = parent + result = IORegistryEntryGetParentEntry(parent, kIOServicePlane, &parent) + IOObjectRelease(oldParent) + } + + // didn't find a root + // allow mount + return true + } + + func reset() { + self.dispatchGroup = DispatchGroup() + allowMount() + } + + func claimDisk(_ daDisk: DADisk) -> Bool { + self.dispatchGroup.enter() + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskClaim(daDisk, DADiskClaimOptions(kDADiskClaimOptionDefault), nil, nil, DiskHelper.claimCallback, rawSelf) + let result = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + return result == .success && self.success + } + + private func preventMount(_ bsdName: String) { + self.preventMountDisk = bsdName + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DARegisterDiskMountApprovalCallback(daSession, nil, DiskHelper.mountApprovalCallback, rawSelf) + } + + private func allowMount() { + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + let callbackPtr = unsafeBitCast(DiskHelper.mountApprovalCallback, to: UnsafeMutableRawPointer.self) + DAUnregisterCallback(daSession, callbackPtr, rawSelf) + } + + private func unmountChildren(_ media: io_registry_entry_t) -> Bool { + let name = IORegistryEntryCopyPath(media, kIOServicePlane).takeRetainedValue() as String + NSLog("Iterating children of %@", name) + + var iter = io_iterator_t() + let retCode = IORegistryEntryGetChildIterator(media, kIOServicePlane, &iter) + if retCode != kIOReturnSuccess { + // just give up and continue + return true + } + + defer { IOObjectRelease(iter) } + + var mediaDevices = [io_registry_entry_t]() + var otherEntries = [io_registry_entry_t]() + + var obj: io_registry_entry_t = IOIteratorNext(iter) + while obj != 0 { + var classStr: String? = IOObjectCopyClass(obj)?.takeRetainedValue() as String? + while classStr != nil { + if classStr == kIOMediaClass { + // we found a IOMediaClass + mediaDevices.append(obj) + break + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } + + if classStr == nil { + // not an IOMedia class + otherEntries.append(obj) + } + + obj = IOIteratorNext(iter) + } + + var globalSuccess = true + + for dev in mediaDevices { + let disk = DADiskCreateFromIOMedia(kCFAllocatorDefault, daSession, dev)! + let params = DADiskCopyDescription(disk) as! Dictionary + + var success: Bool + if params[kDADiskDescriptionMediaWholeKey]! as! Bool == true { + success = unmountDisk(disk) + } else { + success = unmountChildren(dev) + } + + if !success { + globalSuccess = false + } + + IOObjectRelease(dev) + } + + for dev in otherEntries { + let success = unmountChildren(dev) + if !success { + globalSuccess = false + } + + IOObjectRelease(dev) + } + + return globalSuccess + } + + private func unmountDisk(_ daDisk: DADisk) -> Bool { + // unmount child disks + let media = DADiskCopyIOMedia(daDisk) + defer { IOObjectRelease(media) } + + let bsdNamePtr = DADiskGetBSDName(daDisk)! + let bsdName = String(cString: bsdNamePtr) + NSLog("Unmounting %@", bsdName) + + let success = unmountChildren(media) + if !success { + NSLog("Cancelled unmounting %@", bsdName) + return false + } + + NSLog("Actually unmounting %@", bsdName) + + self.dispatchGroup.enter() + let unmountOptions = DADiskUnmountOptions(kDADiskUnmountOptionForce | kDADiskUnmountOptionWhole) + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskUnmount(daDisk, unmountOptions, DiskHelper.unmountCallback, rawSelf) + let result = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + return result == .success && self.success + } + + private func remountChildren(_ media: io_registry_entry_t) { + let name = IORegistryEntryCopyPath(media, kIOServicePlane).takeRetainedValue() as String + NSLog("Iterating children of %@", name) + + var iter = io_iterator_t() + let retCode = IORegistryEntryGetChildIterator(media, kIOServicePlane, &iter) + if retCode != kIOReturnSuccess { + // just give up and continue + return + } + + defer { IOObjectRelease(iter) } + + var mediaDevices = [io_registry_entry_t]() + var otherEntries = [io_registry_entry_t]() + + var obj: io_registry_entry_t = IOIteratorNext(iter) + while obj != 0 { + var classStr: String? = IOObjectCopyClass(obj)?.takeRetainedValue() as String? + while classStr != nil { + if classStr == kIOMediaClass { + // we found a IOMediaClass + mediaDevices.append(obj) + break + } + + classStr = IOObjectCopySuperclassForClass(classStr as CFString?)?.takeRetainedValue() as String? + } + + if classStr == nil { + // not an IOMedia class + otherEntries.append(obj) + } + + obj = IOIteratorNext(iter) + } + + + for dev in mediaDevices { + let disk = DADiskCreateFromIOMedia(kCFAllocatorDefault, daSession, dev)! + let params = DADiskCopyDescription(disk) as! Dictionary + + if params[kDADiskDescriptionMediaWholeKey]! as! Bool == true { + remountDisk(disk) + } else { + remountChildren(dev) + } + + IOObjectRelease(dev) + } + + for dev in otherEntries { + remountChildren(dev) + IOObjectRelease(dev) + } + } + + private func remountDisk(_ daDisk: DADisk) { + // mount + let bsdPtr = DADiskGetBSDName(daDisk)! + let bsdStr = String(cString: bsdPtr) + NSLog("Remounting %@", bsdStr) + + self.dispatchGroup.enter() + let mountOptions = DADiskMountOptions(kDADiskMountOptionWhole) + let rawSelf = Unmanaged.passUnretained(self).toOpaque() + DADiskMount(daDisk, nil, mountOptions, DiskHelper.mountCallback, rawSelf) + let _ = self.dispatchGroup.wait(timeout: DispatchTime.now().advanced(by: DispatchTimeInterval.seconds(10))) + + // remount children + let media = DADiskCopyIOMedia(daDisk) + defer { IOObjectRelease(media) } + + remountChildren(media) + } +} diff --git a/ImageWriterHelper/Writer.swift b/ImageWriterHelper/Writer.swift new file mode 100644 index 0000000..ae534d2 --- /dev/null +++ b/ImageWriterHelper/Writer.swift @@ -0,0 +1,281 @@ +// +// Writer.swift +// com.xxmicloxx.ImageWriterHelper +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation +import IOKit.storage + +enum FlashMode { + case direct + case windows +} + +struct FlashInfo { + var sourceImage: URL + var targetDisk: String + var flashMode: FlashMode + var label: String = "" +} + +class Writer { + + var flashing: Bool { + get { + return flashInfo != nil + } + } + + private let helper: Helper + private let diskHelper: DiskHelper + + private var flashingThread: Thread? = nil + private var flashInfo: FlashInfo? = nil + + init(withHelper helper: Helper) { + self.helper = helper + self.diskHelper = DiskHelper() + } + + func startDirectWrite(_ imageURL: URL, toBSDDisk bsdDisk: String) { + self.flashingThread?.cancel() + self.flashInfo = FlashInfo(sourceImage: imageURL, targetDisk: bsdDisk, flashMode: .direct) + self.flashingThread = Thread(target: self, selector: #selector(flashingThreadExec), object: nil) + self.flashingThread?.start() + } + + func startWindowsWrite(_ imageURL: URL, toBSDDisk bsdDisk: String, withLabel label: String) { + self.flashingThread?.cancel() + self.flashInfo = FlashInfo(sourceImage: imageURL, targetDisk: bsdDisk, flashMode: .windows, label: label) + self.flashingThread = Thread(target: self, selector: #selector(flashingThreadExec), object: nil) + self.flashingThread?.start() + } + + func cancelWrite() { + self.flashingThread?.cancel() + cleanupWritingThread() + } + + private func cleanupWritingThread() { + self.flashingThread = nil + self.flashInfo = nil + } + + private func finishWriting() { + cleanupWritingThread() + self.helper.subscribedAppProtocol?.writingFinsihed() + } + + private func failThread(withError error: HelperError) { + DispatchQueue.main.async { + self.cleanupWritingThread() + self.helper.subscribedAppProtocol?.writingError(error) + } + } + + private func flashDirectly(toDisk daDisk: DADisk, withInfo info: FlashInfo) -> HelperError? { + func updateStatus(_ status: String) { + self.helper.subscribedAppProtocol?.updateStatus(status: status) + } + + func updateProgress(_ progress: Float) { + self.helper.subscribedAppProtocol?.updateProgress(percentage: progress) + } + + updateStatus("Unmounting disk...") + + diskHelper.preventMount(info.targetDisk) + + if !diskHelper.unmountDisk(daDisk) { + diskHelper.allowMount() + return .claimError + } + + // check if we are cancelled + if Thread.current.isCancelled { + diskHelper.allowMount() + return .cancelledError + } + + let diskUrl = URL(fileURLWithPath: "/dev/r\(info.targetDisk)") + if let error = IOUtil.dd(if: info.sourceImage, of: diskUrl, updateStatus: updateStatus(_:), onProgress: updateProgress(_:)) { + diskHelper.allowMount() + return error + } + + // check if we are cancelled + if Thread.current.isCancelled { + diskHelper.allowMount() + return .cancelledError + } + + updateProgress(Float.nan) + updateStatus("Remounting disk...") + + diskHelper.allowMount() + diskHelper.remountDisk(daDisk) + + return nil + } + + private func flashWindowsImage(toDisk daDisk: DADisk, withInfo info: FlashInfo) -> HelperError? { + func updateStatus(_ status: String) { + self.helper.subscribedAppProtocol?.updateStatus(status: status) + } + + func updateProgress(_ progress: Float) { + self.helper.subscribedAppProtocol?.updateProgress(percentage: progress) + } + + updateStatus("Unmounting disk...") + + if !diskHelper.unmountDisk(daDisk) { + return .claimError + } + + // check if we are cancelled + if Thread.current.isCancelled { + return .cancelledError + } + + updateStatus("Partitioning disk...") + if !IOUtil.run(executable: "/usr/sbin/diskutil", withArgs: [ + "partitionDisk", // action + info.targetDisk, // target + "1", // partition count (will still create hidden EFI partition, which we need) + "GPT", // partition table type + "ExFAT", // partition type of part 1 (actually part 2 since EFI is automatically created) + String(info.label.prefix(11)), + "0" // size, 0 means "fill" + ]) { + // error + NSLog("Couldn't partition %@", info.targetDisk) + return .writeError + } + + // now we need to get the partition's mount point + // partition is \(name)s2 + let partName = "\(info.targetDisk)s2" + guard let daPart = diskHelper.createDisk(partName) else { + NSLog("Couldn't create partition handle") + return .claimError + } + + let volumePath = diskHelper.get(property: kDADiskDescriptionVolumePathKey, ofDisk: daPart) as! URL + NSLog("Volume path of disk: %@", volumePath.path) + + // check if we are cancelled + if Thread.current.isCancelled { + return .cancelledError + } + + updateStatus("Mounting image...") + + // mount using hdiutil + NSLog("Mounting image at %@", info.sourceImage.path) + guard let attachInfo = IOUtil.readHDIUtil(withArgs: ["attach", "-plist", info.sourceImage.path]) else { + return .readError + } + + let sysEntities = attachInfo["system-entities"] as? [[String: AnyObject]] + let entity = sysEntities?[0] + guard let mountPoint = entity?["mount-point"] as? String else { + NSLog("No mountpoint in output data") + return .readError + } + + NSLog("Windows image mounted at %@", mountPoint) + let mountUrl = URL(fileURLWithPath: mountPoint) + + guard let imageSize = try? info.sourceImage.resourceValues(forKeys: [.fileSizeKey]).fileSize else { + NSLog("Could not access source file for size request") + + let _ = IOUtil.readHDIUtil(withArgs: ["detach", mountPoint]) + return .readError + } + + // check if we are cancelled + if Thread.current.isCancelled { + let _ = IOUtil.readHDIUtil(withArgs: ["detach", mountPoint]) + return .cancelledError + } + + updateStatus("Copying files...") + + if let error = IOUtil.copyFolderContents(from: mountUrl, to: volumePath, totalSize: imageSize, + updateStatus: updateStatus(_:), updateProgress: updateProgress(_:)) { + NSLog("Error copying folder contents") + let _ = IOUtil.readHDIUtil(withArgs: ["detach", mountPoint]) + return error + } + + updateStatus("Unmounting image...") + self.helper.subscribedAppProtocol?.updateProgress(percentage: Float.nan) + + let _ = IOUtil.readHDIUtil(withArgs: ["detach", mountPoint]) + + updateStatus("Flashing bootloader...") + + let efiUrl = URL(fileURLWithPath: "/dev/r\(info.targetDisk)s1") + guard let efiData = IOUtil.loadUefiImage() else { + NSLog("Couldn't load EFI image") + return .unknownError + } + + if let err = IOUtil.flash(data: efiData, to: efiUrl) { + NSLog("Error flashing EFI") + return err + } + + return nil + } + + @objc private func flashingThreadExec() { + diskHelper.reset() + + guard let info = self.flashInfo else { + self.failThread(withError: .unknownError) + return + } + + self.helper.subscribedAppProtocol?.updateProgress(percentage: Float.nan) + self.helper.subscribedAppProtocol?.updateStatus(status: "Claiming disk...") + guard let daDisk = diskHelper.createDisk(info.targetDisk) else { + // failed + self.failThread(withError: .unknownError) + return + } + + if !diskHelper.claimDisk(daDisk) { + DADiskUnclaim(daDisk) + self.failThread(withError: .claimError) + return + } + + let error: HelperError? + switch (info.flashMode) { + case .direct: + error = flashDirectly(toDisk: daDisk, withInfo: info) + break + + case .windows: + error = flashWindowsImage(toDisk: daDisk, withInfo: info) + break + } + + if let err = error { + DADiskUnclaim(daDisk) + self.failThread(withError: err) + return + } + + DADiskUnclaim(daDisk) + + DispatchQueue.main.async { + self.finishWriting() + } + } +} + diff --git a/ImageWriterHelper/com.xxmicloxx.ImageWriterHelper.entitlements b/ImageWriterHelper/com.xxmicloxx.ImageWriterHelper.entitlements new file mode 100644 index 0000000..49ad0bb --- /dev/null +++ b/ImageWriterHelper/com.xxmicloxx.ImageWriterHelper.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.automation.apple-events + + + diff --git a/ImageWriterHelper/main.swift b/ImageWriterHelper/main.swift new file mode 100644 index 0000000..8d322ff --- /dev/null +++ b/ImageWriterHelper/main.swift @@ -0,0 +1,11 @@ +// +// main.swift +// ImageWriterHelper +// +// Copyright © 2020 xxmicloxx. All rights reserved. +// + +import Foundation + +let helper = Helper() +helper.run() diff --git a/ImageWriterHelper/uefi-ntfs.img b/ImageWriterHelper/uefi-ntfs.img new file mode 100644 index 0000000000000000000000000000000000000000..1dda9239295fe91a060cab9a6040a9100d697ba1 GIT binary patch literal 524288 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

ZQg5*9vIJjt%EIVkz9t9kXyY*+WO=42#UEky zGfU{A4x*R+A&nz#6JH>1iN{%*Mz`Drr0l4WUqCKwu+ipOSLGA(!+h7Pwm< z2L_A#m1r*@4G!+j(G9rGM$irhcSUa@2-&glkB!7FIPM|3Q2wXINLB-w7ERegi#QTr zQm1aVsugmOB^(mx!+jZ57d2^y^ot5gfN=r!`V*Gx(fjzC9Z2g(N$f8M`wu>WAkW}j zH`R5(YCNGW*$7QUNf-2v(B;cWT9M155wf)6ZnST<&`xsuK(>J1C$lF@xLcEf6v7Qz z!ohUkwD4@`91lczP5KV(C~)Wv80+2_Z)N3bun(~K-n77zqs4VmS#pB(NHk({YQ8KF zp&6#1xta&wO5z!n_6HI-n6XTcMO#A1qrE6t}*Dc zP*Z=V`rIv4B~Xui3Uwl0JpnRV!cm0O&IDB#qxwD`4!?TaE(rln7 zU*mU|rgkZ*QZgIZ_{Fp!hFzZ(!xpI~c>cxy8TGvaHV%j2Nqlq|g3vPt7iOeH+A#)@ z@~Wm{HZdb9XugXIGT?axK}pWSllUTwv15pY8rA2}XW`bNl?q+eTQHWpam&VX(cF*n zP{)HmN;24AlSlE^N07*}gSdj9(~^3OuX&t;JOfse*kpqOnDE)7tR>$-&=es%5js9c zFEuG?H}M=xMViwyL(jCQ{VvK!6diYD?ErZRJ)*O~0?&X=z?362Wq6GJL{SG_S3~Mm z7@UTNgznUkFadRpDgFS+=OGkUK)kHwn}E#%g9EB6ma2yC6`76x0rctotL?)<;AIfV z#-vIh7w<+Jn!ULK$VijTX5ItFqT_)ZbNp6xFqZugu`nmNmQ=Tw3UFBAl zJ;w4H$tHeIDg)@E1S8NB(n(KqVlWlrS(YWJ4uqNc&WOez@vUh_5=k&*N_ogCQ+kMH zV~NF&&Qd){FxF8w`#nz?C1$~qtY2``w<;`d(|SfDC<4^7-4AZ0e(PJq*eZ#jdp39? z%|&cfP+}X|sL&iUfwuJ#v}yhXeKQ6b~V^)7cJnTO@OiI)}cGO(%5@;zzHV?y=y?Ig(2d zIL4%zhGifqhg_h8F$+%0{y4H{d*-|Z(=2RRjwfQ7#WNR1+}q5En*sywV0P?rdH%`l zw{&K#d8U&6b{O{C;j7wj*+XRe?J#}nrpJE!h{oV@zUE$Z{I)^h+e=IlX)DARFn(bk z=QrOns<)6{&{Ie6G2Pw~3#n!pZ);mf6g)FtLJPk{7RCPzpejp4I+#qYC=Q9GFfVnj zh~BQ{vG$XC)~m?Z8i&vLTZEssGjx~tCXE0F35}QaCN}W@8H#{<6C|GW=sP_Y$(yYo zGwUem?YgUrFWg$PL?ob}_GE2n-9(|U$tI}OQD2ffY7q=7>ZqS!#jJHjPyRsxU0@+X zS*`)&^Ls?~ZE*|b$U&Su*#R`>(&Eib=lBqm6KtY29KPl)-0u(SgvkQ;mZt%rTn3y6 zw73T=kuY1h8!B|b*Aya5!a7CJQM$!veU_8HfS?UNvjUWTkFTe^_zKuS){KH>x_f|w z>1F@4zj0Nx6G_Nu@f&`tSpc-pN}wcc#lRK>eF`Sc1(SSM3k=+KzhrnVe3pL#?;fxc zL86uo6l{5jju?`VtV)+URez$J5_AEm_?kOe*x=u-1Pv^(7=ipW7%QFv*P#i>{w)6g z*n1cFsH$s!e4m*l%w!VshVU{I9y%nV0RkqXGD8wL13_bg8Xqk|kWK(?fJ8xxOayA; z7;i>x%hk3dzDPp7MTH-I z{|vp3*#eXhUp2A7m_LRAfOZcrGkxKWRe04T?E}H65%$#@G|QneLo4LLD)Ca_74&HO z+Zr#IPm=aCwI(XvC6^;wN6uldxF*5^VOD3ov!+wm=gQXnl-nd7Ty^-T=r{L11vD^# zo;nfvyG#KqfS_yT77C{?fg{ZkPHc{f7h~IwUuVMZfjj90wfcgIsxJt2EN0KX<4vmX zf{EI$+G70Lm$sirAD_KV8%r3K4*8K4Cl~ar=^a2=#g7bP4}~@y163uLQa`rn z_Qmi`15knzP?`bg8UQ+|0eX{FvM})FFgHj>NWOrb-OoK>2AY7aZ(ss+ZJ5>n+j~sy zx^HkCxLeVx+E=3X;}gpfP3AD$HOw}j5BNc~8NI z6_={MNY0W-fPD-KlH}#^2C7P&HooX9y+rkOoj4SGAk9l^H7rvH%fogl-RU6)h3aA5 z;V7{_N%hJ6Xy^mi5NaWIi0RW>*kKTS6$Vd^@{q1;{eiuOZ94(i*DaL`PBeG^Nhw8W$3umwV39a#k9{{)O|!!2mA|W8am$7 z-*#g;@qM8Bj&X#~2JrWx7U@Iy^IO<6qMxs?T=_BTey%kDg%SO%{45QxS^vODg9d8M zoUgFF1X8nEG3j1_!m7cu1OdanYwRKZhwA~ zQA;1+@`mx1c=GEk2d`G0c!eZhWv_o0!|v!Vz$&Hb#w3Rm@N>}2wYu0 z2F^WWwg7jbF&+dK?duX@x(LOO)>A4z!tU18eKs0`%Smn~7#+uUlesecUI`>16+b~fl{xs) zy9%5qB=mQ3E1k7V52N?AXkuajc^TiOgmfo_+%I<7vIbGOD}6|O){ywsgX7YZ=ZNL~ z_AwPd+^6=n(52@m6jQ428MV3~How}LoL{Zl@xy&EIqd?KAz;*+GW0I^B-RfsAooH_H}{f^K0&y7(ik^%%T)m`MzMjufPctgxfbqRhJfo(G;O>{*5dJ7onK;Fvrsm- zX0D>v+%vJ0r)hD+2xbq`ak=UK2}b<^u;q+0!i#u(UI{I(N~sk1)4k*PB5`$+XY z>-xPN>A6`?e~wpqfqPb9?E?H>rRvMcz*fkvZqCUtF{1Y6WT~@q9BW1+8B#CDqxy>M zs&B!%zIMdyYBkF|tIql@TU_(B>btEI0Tqql*J9Ubr)2~42|JW0dXc}}MF)h@Phx+7 zvM&U3$(35$&UIF9U1JVySrf!mrYE~7%)7Nf%LDWmJuYJF>hEj$WP!x;Wt?nJx7L$C}$)iBV+YbN#)LuD)1 zjeJ0YBnPJ0c;WDXwGMrt*8F~=v^DfSPgKC<*y*!BPOU#QwXgwb5rIhdt0w$iD{5l0 zL;P%+*q}G=q(DOLpYZH>%f!7%4m3$l2LM__kpLw=WC0_HSe|zkEJq_{W(7tjbZQL_ z;y=c4LcghqJD{+4WCRa*pnwX}Pk0>klZp0)TMw>}k#1AvN?fhDPe4e6SWiZxiraTE z@b*-SE$k4G7?x2r48}lIs(8z}<+E~hk?6vPp5CVJz5Fumqn_weef!kbz--mruGWMV zA{QQ2qsnxTs%l@WRu67f&y{XfRsOVW)bi>C=~b1O;Lbpw+V{%xYN;U@#Veq00dxMM zG|c1u-3cLw#?Kr=LmyfV9(@y96}HBK6z;1bxAV;{`Ll9jZ%m`&U6VM|UD?ux?&eqL z#4a?q1lnlOK?|TAIEx&Z12*MWMCuX)nnc$bmO;t``NQ`oclFg4clFv>clCzk%OJ!r z<9h6_*;&QKz4F5XEDWxg$s6{nHF-D?=*x?loYQbTHzqbbc_DD9nNj*On|Fb(LF6si z#&RDcKe{I$HEV7<2bmdpH9rFNx1I!Zpiog20VKVH0x?&xvV$Z8YgKw>zt(5vSFg9A z)wONScBBl*S1cGH&^$xtjg@Xq#}=r4`_$?yux4QU9UVan>lc&CFU9}Jig;ZHzY=JH zrA~qa00;?a4)eGM%!7QNhc#fHV@(UJZ{--;iT_? zKiDH-;Qei`m_1t}@H;fv>fG_ud$PdW=9l}90KMzf?wx3Fe)mJq3R@@Gq`O^HcaROg_iTJ)XyP2(&obwl*En=!jolD ztYQg@B(TWG;I-%S@|CV<HbvadCGT{+Gy6lWVj#Hi&z;Mr-4PH#$8}#k-8^ zkCnp*T^uE<7d!K_F)%S(e?cV&9MpB)>EM%j@?{3tLpF3eM);P7F!)_rXa>^FGYP%# z8pSq^ZpS>K_AW=aJ%Im{i7UFkgxJo_+L$j-(VAn)>Kx*jyjE~f2ATqswqQcfOJ*sW zB-LK{(8U;oY>_bOPV{u~>{zY&L4jIR4uR=weG+sQ@DdAUbW28T9bDO)aU2&odN%vc zOAZy#ttfT%=pB+kovxsZ5b_FT3gFdRneu4MLcQ1S^_KfCx%-F~{9uJR$4dK)~Pzcdu) zlT3bwtZfjLL}|W|LmRXsU-|zTyRF&n}-W3 zVR>6RDkAb~igtF7aCtwES`+Jfstjcij$RYyhKE=P1nb_Et=*TRxGVg`kzB0R&Ri%E zS=gCuo(mThAB3;mw+x4(R2Q&>E^URFa+^`yZIas*sY^)0ZNXtRu9JiiT4x*^7^mC9 z*}+@%vKOq1+5Jl3x5qhJi&afXOIglS4od5PaXNPWfkXMV0P<^oIg#sIjAQpiC*E$~ z)vzh8&2q&!Hgx92IC9$YZ$S(G7470807zMG-v(?!-<8&zAGogh!T#FDOd&>27s7@o z98Vmclhbf@pJ_9NxB~f?;#q*_FrK@Sz6bA@X9#fu;XIV7K=>HKNAYyy`43!Sdm8Tv zc>9s}ca%SX@c)$GSwkl|#XbXF1d7@7fxF@M61yTS5m;YxV)JXlvh!!P+z5%(tENLG zHX~&=4NT<4GvO{zRW`tK3vI+#6q`S5-&$NNGD8QSQyt~RMq6s!Ax00}-+{zt0l2J{ zxh&Lg(J|1|?w{F_2M$uH1W{W8|2U=g%21YTuT00*JuC1B__BjX#|!({zkJ$&sWGZB zfnTzM^40uzvy}aTdUy*yYh#co4G`mPQwB zbhW$CW19KOBoLaKP|g#09j@qLY}!W)cNx(|Q*s-%insZ2{tROU^+Q-SUs0>E#dsz| z?&0^p2(@H>82-%(2R#<&K&XEXAD8{)W zqNqea@LQBeTUj9+0KLq01Xs&!$QZ0|hW?A@ppkv-g0EYslP)@|I}86!<;l=HlyWNs z(GO9zdlUk02Ed5nSquzAU;+a9HS>w@1qcStWdk)ydp$s?=HjrxVtEYy3dJ#w65&u1 zndvAvgd4j~z`Z51?5D~46S4-VquFb<{iy7jJkMJ0s_dm_+z}XeS8E^^QToP>xos;( zue=md#f-pQ2C!C_PhbFAV8u;x)8aUM}zYtA+h(durOxs+jfzV5F!NI`eg#i6|A{r|J>6;3P*~_wm#Mw8v zmE8k5R}Rj(R|EC{8@yANx&#d#EFY1F{clauX04IHT0IN+a6IpEktCsQ7oxz6FM4kd z$JmBnk6QUP(KqrHlSfP1-3WSb4r68+LDnSswak{TWLZ-iMd;)6Bk)gh?rkX1^*Ltc zzzCDS!IOYJ!ig^zYy#xMfhSRafa&wK5#372b;tqR z&BrD{n^gbC)Y}KOr_Ya{F{g}>wE595Z-9@T{?%|CKv!!x5>Vj~SGD!-1&3kj|3|p@ z=7|b$SqTVg%-r5U8ld114@Lw#>|ba)H=P8%n)x_zv#}A}*23Z4yD@w6Cer_HF0Vi* z1<_%a=z?%TG+vA9b7d7IA_R+*VsUZTb10(GOyWy3Al6En_EB*vS_(Xf63{iVeN8%s zp#&O5Q0-sAdw~`Iax5UFBNuvwJ+NMDFG3>tN?-+RKEWOBD|Ed&91sowLZA@o-Q(#a zmr1{8(rhNhXxRUb3FjceyCI%T@D$=0yl3zNBrplP_#6va*}$HhVUalzkvZX!Il7xkvX{Yn0tf=hnJ`}3P~4eU`7*6GQo@t1@jyVqR>Asl*A>A zkTEhAcRhlPfysnWKY!Tu?{Cy3tq179775`BIJJ8rkOfu-v~Y>V3xQH%@x(j_vJ3`z z4!UFDQlt+sz*9`Rh)FsFJjR46th;Ak8n}AI1(+7mV*wOwkjED$u3R?iP!jDe(c26D zm7Tc)d(IaEk3cLNUfQICw#~r{Dkv|hy|TcIT49{Yy&(MsBWt0a^(eCPYv!dR3#k)` z&aY+ZqyzGRI8>NzMTVqPevOnw@1t~A8B1^eP=%<$nW?_Mg6x=Db6}I8iOn}B8L$tq zMa1oa3uTpO)czHB$odM=5hoS8Aib&120?cIo-%(+Wj;0=`Q}zvU*}T@iEhVJ7xR_+ zR32ZWpSpyvgr{KgfoI;QiuekDY8_ru!uejI<&G24$A0dC-^}hP#D2wC17cWhIfJ33 zu+XoW>}Mf;upVN97YVt%B_{JxI&g!md2u|Jhv~4nl~3Zok(-0i1W@WhRO%j&z}*ax zOK)Ky7J=&-7>2+#2msR16+Q`oYnNhuUx8;eo^^OO;rS_^P==NA|A{%4LF>eM04mA- zGCbD}$a>bp)R;dRE16VX&ZN>piC#`xtVgY`U!n%alB4Ek{0_u(ee;ubxgX86bx1RC z(9g$z);dLPy(vLR5Pi?pso@KIMg2XGhQS%l{Yc$VY&F&+bd z6uuDL-t`~~GmX|o(llQl+tZ2xws@X2#9{akx~>oBU68+*e?-15;Q0{@%g|rlzR#ou zoR`!b)TObOdBJ>`oDupLF>b*ZG2kd$bMmQwQ$vNL%|E--Kf{q4%o}0T|6U8d8|L7c zEv$^qs|#*e@w(Ei!ojF&djnx*;wCp8l$I})_f>U=tWznIRo@p7f3T*&S}eZ_f^U1N z<~Jn*uj3{pJ+NYBc>(7|-9P6Iu8xK2t+ zq}%tAyeagE*2TG67k?PiMUc#G{tLP|yH?fvH{o0R*By@@fshN+pPSx+PR)Ub(>$EH z`d%aAP!!N}oI%Q~1!n?1)qG+h5BOeo`(Bgyy3HrR4e$Pd*uLzN9$W)o{fQIkxv;KW zX;r=WOD!GcoUYXYzd*dfL+={{?F9%UxJV^|oGYiq|q4WpeT3(2;2DlqtV;Jk2K8$u3*%;<`TW?aC|wY9lgJ5hU{ z!WBQ))}s1e3fzukEA~V7$iu$zc1VGK>V>(2PKSSbE$1G$p*2Zw7URl|c4_O|FEq)k zG=sLPPH1IM!U%&U4@d;k|Dq4$f9Cm~TV4w?%r}!VCKuFkVC%N+!|{V0EnK{U%Uyn- zaqB^MOzv|?hia@(KRWY`;dLyn4vtc~e}@VjkCMQ{Z?TX3no{|Cvg&|6pQOiGMa-VX zI)B36@G@<1@5(Cuj(!JP^$z!{<~OQ-h-&+BXk)3GYgWz2jcF7iXA$Ip=2^904g|Y@ zrux28Yi7KC87X<;GMoi)exs`~c;+cCd}9>TuFd5QZmNiMd3$k{U<;^(Yi??G(j%x< zKGyAfF8BPXjEds(^D~r+%T;p+2JUs7#=c#FwPqZ@+nb+VKG9J=!aeJq@;HpuYv&tu zegJglp$v)MclcENy4GL@5CKXT9!GVC0ak{kqNe*nvdOz|vc6pN0Rg8#(mQazZ(rcx z+sw)5FNPIhyDw?*|G=r)57 z*fY$eRoWdXUWd?Bu7Un(la4(Ef5Ec8hH_>;?)Bh0L>t5rRT($`&Emf){FegF2HIjd zRiq7BkbgHo{&mkp>@vi9iS9G630hLL!$m{&`2vxmbE=9!|_T*&+Tu-o$*XcC~v zf!|3%h3zTky17O5g&ja@#aoys7Z1n3%cEg?o*RXK7uyh>8-vj0k@)vRE22Nd3E~sC zL|__tFrFnCYzXDz=^Zp_<4dUFc1+G(5i|yl5HqZw!OB;lM&* z5A2eXTFc3=k@mi;lij|RSe-UFXcERrwfSvaF!j9z8{IpWz$R4ael3I=8viF>cDZ)Q zs5<9cKT=2JA8i$j8i}km?;ZDB>6Q< zOpdB;q!F+z#`hFsp2(kA2#3az<)!!^UA`3mE%@FoE;e0&!TcGPA`K`GePAsxb)Sg> z_BD2QOJkxRc9{NB+zDg zZv*NaeB;U#=G_GO!|NPcaz9P-eb0kn*-3X?2?3kx+lOIUkKo1GQKH;FAPVPi{t51E zR|Js#!wbPV9bFUN0h^jT+`dKamae~IdTJm!b1nRivXk})-Y0xmqMSRim|s<)NYuV~ z@xavt(~L}SUqJzRt?Fki=?kw$4h0NEYVng0>9{ouMMJU-&nW;RgCxK}0cbM|Fb(FA z@Jmp$uK{t+VUcJ(e;>Xu-q*^FY}fRb{c1X^vhWx+{dvPa4^dtf zhLycgal<%W(K8r2_BZ&^2e4ha4J&iZp7yQ__V@LLmSJ8b^1#8V%)-7>!53dz%E!y& z`1I$IfE%f%iujl(a^p<+av{Hr+`{Xq@5ek5sTFD+fT(+VPFB+o$^I;_hLyt&U(aEY ztkc80C(1za7d6k$Bl^!nSQr<^q>Ja{D5vEo_vbI)yxxQvk3w*IU2zQ8W2D~E4{?b8 zF#YX?a&eP-#J=U(qs!ynv))`Ai&JbgvtK%V{s<}M3Hj-;ibP$B$+(~<(HeLL=k7Q` z!gqpkZ{=luu`%?9t{ai7ji5e$HcHu6_laZf>R2NvaY8EhlZONQ|Bp|U|E1ku2meh_ zROJ6D;#&OTKRq@4YrdaJBF$gmP``wy^H2LDLBE4``0FSYYvGZNeopN8$)PoP(<=-; z6Rbjt=BdyQ$eLf=p+4U7@HO(e@Ri^e`O*iR9d%CE-ZI$^q27Q$dPHRFhQGZ~|IFXy zd++r9)A}$N_CN3cne?MCI`(D}Blz3^ESIC_#)tXKrMCtxB@%Q|MVkDx!=qLnYP;b# z((o&7mp*>h!aKKJFQxgoi_`(0>fiBnzDJjUTAHs8&3~lkqs9)3UJqP2k_;19`i&rd zEd5P%H2O2xN9pP4X!x@Hula>OeS7q3L61cAHEOhD@Y}a}Og1=%K03&;^vbGn^7;BN zh_TJV{UdKq0>>NFH|EPw{+$b~N~JH3WvIc~U`LG5L)-Z#KhZ{iPaWT{n;(PyP<~tQ zzsuO3+W&vuZ?w^$!Su|*xN#=0>>s^Sa33kgQ8gqCy_>8-n&ugm^WQEd0B0!qxm-fg zB+O7xwgV%jVQ~8S?~*Vnp@!DyykIJQ3DVEi612G}4d{=7 z|7O>Wc8_}LN_cY9}K`K3OU4y&|geri|HBy!?mjBPu^9}l*o?lKU6WAWPk+_h8 z1CrX1so#Z1zI%HH#Rhvn9+2SQrM0h{Z>Q_uV41fJ^eY8*N#lQ2){(}i@2^2IgIjLU zCCU=CWq1U$!w1iLj2>m|^+?YR!RYJze){%K*Iz=`cx^C+zaBRGGk88~^3Cuu{q_Al z-TEBbzBZG-3zyr0!6eKfdZiz%8L;)Qqxb3B|F8R-W_ttk%~%(%fmWrh5bV{^`8Jq- zmtZzs2U%jQMT6zo*HI;Oy*d4OpRT_H{+dsv^Vg5L27jo2_uub#nzZESU+K@k>VKN; z4IU5j^I*?p^uI^{+0;xm$!^SDP2LW!zews8+NuybcPWLh!$Y3se?xDx!^O=-h%=XS z@pO8LRzuVC=*wH+E$ANYFpM^;6{a^J_O$vtksb*Z`3;IC37Hj>F zm?RuGRIFMxSq8BixB=<(lc*(VehZhuSLdlAO`2zjX^^ky_vcRnSCS5Cpxh);EVcYe z@Qip4_K{gg<33{&-f5B#L%nb3p>1u4VCb~kj!E-ZUm?d8CS>^u<>CJ+f7NV=eowE* ze|m}3e4`qkj0b!guhVJ8@;T_i8cZRo=!767mHa&}V=EF07w>lFa<8ay0HN}~dBGKeYU>QM3rP>CaH3kA@9%{wMug6UBeU$2IG*|4V_b@iF|1 z4#by9fAxd^^S7mQKoho`E8oMJ1?j|@$JvZ?8^|H8ri|*e<2+v{ zdGx#eH`$giR4|BRn(;`86(E1Ph> zi@$7^8|>|v`oJ>K=KB5>W)bEueI(z&!uV+MOP~XgTEusiZhMu{koYv2kPA9$wplHI zAg<-lMLs`lcP{1_S0jEjyfoj{jOSp4mH;m;H#Ba*(dugR^~bCtKZGBe#<-@Dho+Jb zIK#O@(56Cst^*AyL%-gqHXAsdUu~v;lW%S2htjbKTukd6DVhiAum=23`i7=K%|@ z2ihFAWA4ns{G{A4{AH7l8ZWSX5o+9kmBRQ8l;cYK{||rL#N7ft)Pi>rXf|NGCSPcF zH@iMk)SCDq6>bE-a2#oKHS{ZTtfsTdVv^2l0h5v|)Hm}S)MdRn$Xkv-YF&1;UMg;u z{5Uv$5$e*WTO>6X>Tt&AVx-fmMlac#tx(I+=96aI8;UziT!Hq;f!rGzBSnpgDbxTo zj{IgH+=MfDw@bSL`I-IIcw}(?T;yoj6K`@CThp{&LJQS{?ZC!^KGBY;;lzBSzXO(G zrfTwd;KYHw=lmXAPovUWITD;foc9_Y)CW02rLr}`TZAyjk`ypxAJdKYscUL0yVeH1 z#E05zPtE7fo0@=D{{N+KZuWzE{!;Wz;{sZkxg#JqQv%vCuJq+i9h*8I^=R#r15V39 zz9zSf*+98LP08SwQ^$31{($5kI**L~X$4y5xEu0|oJGImlquH(BaR;1%as@|(Xk_6 zb5uC?n*DpQoU=o&twR6Gz**X7XnArD*CcIb80RY5Zl5)VmJgjrrM|G4Gc|a$t$M#dn<%6w;)%KwkKQ?>UNq9{@Ys=OM;`rmU-!oye|W6nrMWvB z+wx40jd@x@{^|X9ubY`U$bC2B{ocEUh(|rv<;Qr7SRuY}!pC;`b?eFv|J@}*(3gzi zR|Z2Mo*8HO>(=_j-yR(5zqI&7}g|=$-e;(ei0+O9Pl$S5<~M?{*wriiL$%#WU@TK4~_#5 z)IX&z%7wP0M3_WGp(#VLnuN6@yd^a?N~FGL6=TaI#mHqg5x*!(L<5KLPb{Jb_|L`H zF(1_13ymuy!o&z=mKc^1QIKje3ClCt(l3&ABz&N$t9>Dn$kHxR`H8igAT7={^CD9@hfluNhyfcT1#A&f*%7{oY0(>zdbGR6> zCcY=Ob9hTsnXN>Li4Za1znDzCr`gJsap7W|GD3_fODai3f0cwVk)VtbD4U^-3Kyf0 z7he`v63e{vBgFaTQQ+}t5qVbxU;&PjC@ekT(=v03sQ`GUM2M7Eb>^(xP~glo=)l%4L*q)EMZ^JC+_dN(Tc@>sSPAAO`MTUDT2LqX5=;%fUT9p2G>OPH5g8!mf8VD} zcq!*C`a5IlwCR~MW}cUo?V6L5n>SZsCO!qTv~v8F5q`>yxLJ$W8gYm=e%g(AxE62G z<0c(m?FAYiVwb{DEn>Z zVv0|TOOJDL!KZVM9=B@o9wRhyew7y0Qi;(Gu3 z%j^Av0w(bb)B6{z$HR4ac0ImHkMGjs8uWqx{u{2a&c41Q?#^sccd&HLEc-=UeA6lm z)!G*?8-4NoO=DBZgvm`r4nN{A{g!>rLfZ2TBL(?;8^T zOXHl{KTXJ*|MM?y{!6>}(iNX&Mve6z{@hjPzP)|b=;ck9$KLUWncF|iy{qBj>6qXlfqb^xdHGW8af5wNG=ZD}Qw|~WN_isV{3$*(Fm#TW^ z)*(Jei$C_m8_s(#<8a)Q?+fpN3#uwNy|i`Qg`af9-5Vup&zjx3@W-!Adg|3<{qe72 zmtHvhy&oTrd#X|^UzhR5yY|VRW1b(*Y1;H=Q*g|!^##v95PW>oKz{SI zZS|9Wb2#qaDH?q9U!O5MLgJ~<|6t;VFAm53o1(#c$+h*!Whd5Na#zi=3vOTk*yPIf zf1Y;Mlvm?^@6+19W93z^zrVU?VWYLDE_rYuOWY~mfv^H%`4svlwI=VTNOJq zCcT_E&7J)0LvO!5_n{|Ww7vDq#2Hx!GFJK@K>1l(`K^z&&Puxd*7;3OFWi{$#kA{w z9skjzGvBIo`Fq12yz9K>I}Tm{n}qhYug2|KDVoF|uK(MTci!_oe|JY*Q?%&ZW=_B3 zt|9z+_mKGE|D5-By&Z8+F3{qx zj~1H#HvMqiuS$jGK;`l6=T7-mchwZYAEC9MF(f{9NPOCm_-%LGHnqa`THL*tX!X+% zUs-e6b6xZAOZxcAuzyd>x#^rF_gkZv&3oehn@^s6^M}5uD=$0if**fA=hqKD@Z_Qk z-kQX3+sFsMY(dem_aRL#>^e((*Xr-OA@2bRFgR4{>Af}G0sh&j@z3AlMn3!W?)lEA z_eO@@d93ffj{G-WduCjfcWd#h?2B!1?Q_*p~ZZ9BDo-?3GDmp!Pxx9Rbo`?Yw39`CHz;w^eSR?lzO z<90pXsmC+)c#j_U>T&T?4Nk2dkJaOKdfcwZcj@sAJ>H_noqD`okE?pTQ;!$xaiRCe zqsL?Q_&PoA)#FuqyjG9b>G3)}zRRfpfQEOQ9v6E24Lxqx<2`yjLywEww0dPm{ViI& zPLC(+`CdJ4*W6J$ihXj=xurx9IU&J>IUz>-2c19^b3S zd-Qml9v2U3cz5dYSUn!l<0TJk`Mr9)OpnJ_Y3a3k+^)yHdOS;y*Xi+MJ#Ngldv4L{ z8}Uv(Utg}hJ$hVM2fUVQt-P)dcr*04t`2xrJ+7+*UXLEv)g5oG9>=bdA8&&mrwx?x zHa)JZGv0t6*VPqo?Co0ny1L}e(Brzg!t}b~?^ti4LdA)i(MsIJM9*@=Id-XWB zsQh@_^|-D+c>{VpLC+Uh-$*OkK=AP<>v3$UWjsrdV~Z){svgIdRK`p6xUSB5*Xi+5 zdj2*&K3b2r>G3goT->3xKUR+?>+uvlo~6g_db~i7r|R)_dR!lGQK!fC@fPiRTpw>C zYP9wY^)Ew@Yv2a{S8N*y|F?uNK!$yU@8|KndZ+e&6X6dL=DQnD80-R}b_LoS)?vVY zgLJ+(;dvEdFWz%8aP%EjfOi`n+I>Q88?>d+CSpgKP}>M?CjX8>EkHWokK$Q|FyF7^ zDMy&^5AfW9aH#Dd)cz1^o1l$iJO(`g-yYK`M=9@NzUW7w!3A8c9OoaIfdvv}>;+crB9q&Rs zq+1Ezd+=l;y$A0{Ct**Ga0}jt@vuxM-fx}>lM>Q9@h(40FN60d4k1<{y#)4v7w~LD zIMfzE8^JButG|eJzH9IV5Dwj+hwk0Er#DSOTiDn0U4_SkFyEizS%)w#C%~DshBM!1 zoh!so05b#c$MM{Oa0}kgWC+oKa68^}rfPT=;Jpaup)7<*5#2Tw1;*hh&i_<;dQ1GXX5)sB8 zP`o`yr!(G;9E6dMy`ET>tHH!RPy7N8;k4ulF;)fs2;1@Q#$!kM9=s>GwQ+rs7p@vVWoq+a(Dm(>%$@lN@EF+$H8#V&Icj2i*I^PHI z{1Rb%0c^H-euHrB5+OdvBWZ|czUAZnmi+It|2I*f4st?4hw3bKj=HQmwXV3%Q@5_J zs%~3dL*3rGwz@a!0(HH0mipv+M}1bkT3=l6sb5!LRllvip?+_DTm7zw_CD0|P}@W8 z5AAw*@53z*w>{kc@EZ?zJ{)+s=i%Om#SY7k*d56`>^mGgGInI`aPCld6znM8QL@9c zqin~z9o`*PJ8E}q+flcpVaKi=dv~<#Xxq`gG&JmL*xS(3(ALo2@J2&tL!hCjp|?Ra zS{h>;lN;@gj>e3}tVU;}+F0D^X)wr#(p>c0xTjLvzfyUlOOH*=_qbaLNZ7Oc^ zG_7l@YTDM+(6qOyt?7-XKvQp%WoPnE$Ih&s>dxYwo}KG!P{ z17BE1{$kwbSR%h`eh#YfjxT+qFIs%d)V#TFyVhQjq2*q#9x8S#BF(57x)A5amA^1%n44?P`@KF37T#Vb6 z{676D_+<{RpLzA21-FQnU!#A<7rYmX7_n@CI!6EKhkmhZD1F{X``myGsb4Wbo#mhp zyROwQTsXM>mr=h7I^U4`69;-fsD1b8+W+IJ?N<-j9ExjDu?&fhSr1rPiB zAfAwqljYW2x9Z1BwZ03`K$d$rq!5BEH#p_{*#9&IPR6A4IxNoSluGC7YhiY8QA9D$ z1QS)5la+&EK}Uu&=tkJ_Qdn^E+0Nj6gx!b2f;X7NJtv2`dRxqkUr(`{Uo+0t958=d zlyQF44}!run9n|R+FXw@e7xw7jVEm)c-$%u$@$LUBEaSv_0J8z*KS4Xk%}Uee z5zgRD;MRJp$#1D~2E$F>!uJ5{s9E?4lWhjf&LD25_OLATan^T?Wx9S>buVFcnMLsE z1mQnoQe+*%VZAz2?-T5|s2}E^jJM+vEuD4VMg3a=kL^m_{io*j!_)IfH}t`OV#6Ht z$<=tgXus?u>3F>8_gX)fni_)}%(Abap^vhCm!-e`Ptj-Mro?zVt{*AxAsu!r;&F^i zt>w|YAiP!XmUUV!{_V(@;nXwysfxGbKE%CAqWB^3filwD@dL)Ei6HF6{q^ro6vb+S z4#O4czY}Fx7h{>|5Op0@ks@ftaf~B1-hTzgq6@UB8ZLrtN2yf&q`PCG6XTiGPkYk) zIA{&t2o{C3wKh%^2V#u2Z2q-u%jE6Au~1?FaJQc?f}}ggMgi^Yt%~1LuhCfmPGFcb zXcFE+2-os(h7_y<|A7|${W=^iimRfGwxayc_w|ir8-$-)Dg65}mU)2l9`L^P zej$0u=z~-A?%6&<1pCXo%!A9{I=DRNz}-sk9%D?}EPA_@(f;$%$0avA?=r?^CgM1@ zlKssh4L6%4Y>khB%Xst|{5S}gGc{a5r=C=^GPpc=IJ7)*IS%{{Ts&bqF0I4;_!;4m zo#w=*-(k)VE$1-n<&;?eVU#-py0Gk6i&l26sdo?KCsCJlc^CQnKttkBTrE1!hvpI2 z&^*@v_+;NNICh*D!3{Z$Czcv>;~61#ImInJcfduU&i6N!>nNrT^oj9dR)S`z1fam2t};`p^8PQ0gb>>yvk8v~LFg-aiL?jP}`YOQV)YdOV`jf9+}8j`u$@r0qt;`+2d_ zC67aw2t)$6zBRbb4=54 z^rZ?Km}81_-OJ&^-`3YRgJr@i6Z{d#i^3C)r}M;i%qQVr8tyG5osZz@UcY>uM-jHj z3q?_BrHEU6omlNa_(zphqZ`&;zphVMR;DUq(IbHSbeuR=iM8vFXmMzB>BKCkJ&CuK zj;Gg1yi>E-#=$V*$Fb?-UUAW@j_8-~y#w_k9vXh%_Nn6717G$nB3?oX_gn139|<{@ zVs(Ce1n>jEh2ctsnTIvNKU=YMH=w=H`2E9J7P2Hv1aUN-$h?$r=g0MC9R|WKghT60 z2Fys5>jq3WaP;Ik_f8HMhtxc=x3RD9ao{B37;WAfhVm%);RNBgIfZ|I9Lkoi+Urgg zezi1xZ#C+S8B)iMHmt0JHf(6iQMxK?KH6}Ure~oo|Lv$Vd`O)+dL7c?!xYrJ;FNlY zSdVkjSl>hEo3Sn#bE*&WoO6$3{4Q{}{7TB>4$5lqRUvtw^iQfZ`zfn9zY@%v+)h9l zjKS_iyg4sPW61Ijt|#^2XYUG6ucKOmJ! zG}`H+JOhm_si~4j9aBUw5^&Tbc8zykVTydrPTNH2M&*H>AN4U@Vbb})GbIv8oz*nJDRhe3{Io~b#iXiFc zS@B60*TuWT#qRep{^SSp(zVDV4tBtPIudgWW5GQQ)}-C*fk)jfVL>PMPwyf9UBGAE z&^nKyj%BPU0?jgib4zY;6!5IWyACu&e|K448jxp3|5L)nu|}+Gvd{IYvi;0xaSz9Y zvi{Qz+>2=YEf>67OR#g zkmogtU<+hY1LlQyJY*YqgX7!|UQVzJjD2Dge5;QX_!x5VWP+v}avpGu%7Jep#-hsP zT>k;ebL~{aMWzZJhU+EA3cAGZ83^D1`KH66W5)3!FBIwHMLEUsiUzJNx1Ks)tZ&qr z8!}!kx8??+$0qV!cbf6)3=_p1kCO?`VCeoZ6}Wy3I&(ZkWtiOi27pr)WDwKvOYZ(s z(8vM)_e2Oh&R_y$?(}dGT-4Y13zVrPUzE($Xl2mPGt(IifUc$EosHN77CTVBG|kxv z-69AtETE^i1AZ??rr6D|SxHxnRQnnPn!*y3Sw~`am6TGUUSK$Mb?#iwF`&?2Uqf1tf1~Y+2rRiM1#Yr7Q_@OHW{|sJY|G7tT zPzDd|_uED51pfo*3)0&Sxwai~_JOj@3s{o3LToGS$oza~5Z_MBUa5%8F0(BS-$Z>u zRa&yU&DJ#N!z=4SE3V_!r5|K5Z8GKw^F4}X0pv3DerGe*_jq@wlAVU|3SpV)2y-^8 zRiYVf%f7LlQ}sy8A|EFeC(+Q0Came>Qn5WjMSO?G_OX?&)_m|sE z*6uk<)xENhu1VA>+a3EUhqSeIQ-nBX$GR``l{2MY;`jseHCu#zB6voj9YeG$m1oJl zXnZ_)2Ra4uV0&!ih$bsR)3f}9Pgw)GQ*1-s2H@p51A8CBXmv;!3SfB0iQT=}=e)B< zS-k}Hxfa0gkytq&a1nNZ##NBnlr@ghBXVsRkMKV5OJG8nKLt8d3F>tsyb16E6P}Ul zNdxM1Ax&FTx@5h>dL56+;w=o`Fn18op zY%nj|?e&xWD#j?qC4xsFYhaE}tVCWX=Eo<{AHQ~P97*^82{d&8hA}tZK%DdP=dy1t zA$=2r`ew%%ZARJSW@oTuzGf?9J=~4>g@o67w#H|=9tuN6aV21WFhPTfg(I_jf&sI; zf83ACF~nX{KvxBwj-U+rD74-O{q;0Dr-P0Ql-?)0knSn%%1Y74eI?R;eSLeVKLwDt zsnn6>0pH;}q{pyU)xNVYvYGbEQpMsU&Xz|f_|woY!dY>#kam&CC-Q>Iq3U}}A;&DJ zW2(3K)o5qXuIp51fOj}w6U~r4k)n9Ju44n9lta3Xg*h_?`bAQcH-z4m;H94+t{UqQ za5Lm1Y59n>0VOs~2mYR;u56D<%&-6-;=KfADO)XZ+C2Qys^PH+JRAtu@Nj;m?JXz| z1Da0VE|hcqT*Ewtoc{?;R`j>D5cX;CQzF_i_>1!$3iAT=Wc(GNZ73)%_u}q6eEFvv{_aV~3Z4!@@)|BBY z#wDdSvYB+|`scv36CFuEe&6As|)KuiXzsian<*F zkdARL?Av^*uBxBdLO&XMo)L!iUXi+ZCFn?fj^jAH#Cq(0j?n`28GUPs#r|E+!GtD1 zaPXll$7m(;ely1zT!pc#2Ty+UdI~!9ucyMl6L12M$FvtVfUcB#v@bS5hLX0VTO(y7 z)>1>J2C$Yxre(7n^Ba)w!Py6Nj-JVoO%0eU*fZD8IWpc)e2O`T_D41g$VuIN zSAD-A?9X7A0AERdzPsw)#lqHI3O**E9yQyVs$kbJ)?VZ6g#1v4acbE&zj+hNxj}R8rKVH>aK>2+=uq4 z+xM@vty%s3I10F=8PAw)sGkrmf_qS&>HX!8WNYPNk78NUE_Aw)Q}rZ2pe+4qtVA-cd;|b_122DwhL?RSl~z6CSk1&j1*uRpmVFxJmAm4x!(BZ5YkNr3J5_yH1?ZEV&DMOTCa|_eg{`c9#LJ1$zjNo%guZ-DMk& zfKTclo8YG%Z9Ddn#<^M**4_Z*5MfbXq(tMKI0k1$HjFpt4r$mL;a_sT z^piMp{7Y_C{BM2U_Y2Z`cL*O@wDSefewcqBcoHzA%&Ek<{}FN0|2obK*dN`v zLnF@t=1|69ZYZ$1A{}Q)Ju2?o&?dS9@ovODN6zr8RxMwPr=o8m`Aeqz)wqy+tjUg~ zkbKt#esxqxetnkTF)kz@GEz;|^0B_wdg^2Rj!9a+j4N?|b#h33oZa!Ps2@Mqd9cTX z;1uA;+U~yvBFBokq?ptW}}90{IPh7YeV%eVxA# z^A-;C-dC7w5y?47n~P_-xUVnQ}c=v+4^OdNXAgmq0BwjkxJnAHL3G@i*( zwkRcRLDk0iB5U;6X;pbqMZhQ9s*IXeH6^0R8m5I;EgL-@cIND;3xvGW0NIdz#B6OM z4wR#tzEW0uu)bg{vg2huWi@zhk!K@dgpZ!~0_!8s26*^UWIyd19%Z=1W0n7o(N^yH zl^7YX0vy5@xG#ZyOQL5ZaI%h><{>^vCvH0l53p>&354(;?d^MX$NBR5Ksw}pjJGf_U94{yf%h!2-gAbx&}~CFN38EU7x`y`Uh#-8K>R$h zzRK(^tR9W{Fp=GcaMx_He)4$4V?;LA^z09ihW$!5U}t;cw-r;5iEqYy#MeFS1#j*`BY=an^C7X!aDb+JpNX z4dLR_$c?51>MD)a$OSjRCSX~A!@9GP-nhqG_}eMo!rLN5vYKigvprg@o{w;eHRtB) z)R-}jjl;%7Dv=A8f}ZMS&bUY=A}+vr9OcYzEA?cZJ9*d`+RYo0za4vzl2LPRwp)L2 zb3N{eRGUSnHP)Fu`v=&QAZ|-^W^ektSlxzkax4*-MkPD5E!U4Nnv8IyVqLJ(8fn{p z3^*grs@N7(Tdg*S5@S=r15Y12V|7@y^X6`}^K|_gtA}ShZ@vRz$ew09_y>9~`M(h3 zCG9faOL2<+hlg%5^x!_TN!s7baVO3j;q91@^FYqCyP;Q9VIB8C7Ox#I{A+DEi<}_* zW}KJsjsT$G+$6E-&R*QxvWgjLkeB&OA|c0kUgz!j`?=t+((AJ(gQhmzNm;DeR?@y^ z!F+e){sVPs6@9_j%=qB2D|_)Iv3i9`G+#Wq;O1*FHVY<+OQA0{2mTZK_h`|ag8M-Y z5vZ@&Y>anZ?QA|f^@Y)^B1Q9uIKK-lb~Z;Ne*JLKd_Ce8#e0{vHO&`D$NoI^;Jqs% zL~~OZ%DoMEd@sd$GRjkz>iUth*}?FcXvZp6m-0@}O6XHz-on!Hrpf3}yypy*Ge@Nb z{^nfY26w82gY(qYrRY<&5^XC59@q!2{ zYyL;rYpjB;;UCywz{J>QdY~KLpX$7;dX%&I zJ@cq0-c^XSic70foz25%n;RFT9vr<2^R05yLSF*FZ+xMQYMBmjUZ<i0b9a%>)KRH-ez769F}O1HUgop4 z8gjnOJ`3>X;CV8DU+H-5JoR*SzYb<7EP>BA%{$u7IJZqt+XZx#M<#Hs61 z9)wj2|1!|06MLg0=8;XqVOvV^iepD?Vi9b6?YINi4%_0cS$HqI)tNmJ_UkRyteM*r zO{-HeM{u5l>mlC48-MD|#vCr(1X+lA-28LgH(`5!#T@vi_IS^h?YY30xLcCFEG%p0 zdtn(fw+r)Xo(*gdGs}6mbbpk8{N`c)%3|E#d%))39VYHc=2+Y?w#cR=E{H_iAKHY! z>dF0B3wKYQ<5;1x7lXyRd)qKn4e5@P1e{28KDI=Rv*# ze@nPhMEUwS%0F!yv2uT~ZxP=uoG<8;wGw9)pc&_D)t8F4hC@ytgj~qUiI#ZQU#;PJ zJMjE2bl;`Zq4N`c-wD2{hOL)&LJ?Oz`kQ#ZBqFzwbTEMqH^SbC^IZ&?x9~XTkzxOl z-&5GE$hDRFy*!_QTs{GrJRM`+87XF9{{r1Vv1ujZSaZ`3V;v2Qfeh*E%l!KUXYeD; zy#`ZDwhB4jfU|ZB-jUE>UR0dfYPfPK*F<+EXkA%7`gX*5hqemwD%_z>(bwCyaV=T2 zU0Y7}&1gcs?^2gK#^f*hW{6?lj=9(mc{z`v8(4(kJoJN4cxO_xJArN!ImX~6i&JDj z558u9Io@vUQC>hCW8LgY70t}EVJ+=SaW=cBh~_rNCyC~RcvnI8Ik4wpnQA<4?1z{? zA9S_3oY@Y%Hz{Lr?oc&40Dg}I%}8_DgCV1E*B9|kk72Ed-;S|UPWf&{=sASEFTUAy zC<*&T+U9sK=mf^57h}Woddj@L7+3D^K8Zx%@m-Nm4=as<2cRDV|30jJRU@3u+zap= zC~(%W$w!t7KlEVqeMHlJl%E*O&IyVi=Xt-VgO0;<<0FVuKKz4e!^8~kO?f`kIYIb8 z1K$P~V4m1`&uwgcq%wM%V|_||RNVYD>MEFP%~jBAx^Dt4H;yW@9y=qh%M2ZRNm5bi zrLjc;=)PUhn>`oWib^Mk7vY>Ndqtdx?>^zm?t(7u#(KHQudEK7w|%r#nQU8JAy#)m zPcFqAA|1Iu+BD9*x`Ai&)3rV6Fwo#b;DdJOTa}dfG$m?2bnNCPVL9(8`dPm(+Ft@4 z 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 @GpZI>a8+4z@lC-}vCujRc7+&em6~>zR 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�Ucxi3meP(mpAR3#cOmRigh* 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 cg8~Kx3 + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/README.md b/README.md new file mode 100644 index 0000000..1f537b9 --- /dev/null +++ b/README.md @@ -0,0 +1,12 @@ +# TinyFlasher +A simple and tiny flashing utility for OS X + +## Features +* Tiny +* Flashes USB and SD card images directly to disks +* Creates Windows installation USB drives (EFI only)1 + +**1** These are not intended for use on Apple hardware. If you need Apple hardware support, use BootCamp. + +## Downloads +Downloads can be found on the [releases](https://github.com/xxmicloxx/TinyFlasher/releases) page.