From 18b2d315dda8f4abe6681b399479315f5092fc33 Mon Sep 17 00:00:00 2001 From: Lea Anthony Date: Thu, 3 Nov 2022 21:21:40 +1100 Subject: [PATCH] Modularize wails (#2009) Co-authored-by: stffabi --- v2/cmd/wails/internal/commands/build/build.go | 56 +++--- v2/cmd/wails/internal/commands/build/gomod.go | 11 +- v2/cmd/wails/internal/commands/dev/dev.go | 16 +- v2/examples/customlayout/.gitignore | 3 + v2/examples/customlayout/README.md | 4 + v2/examples/customlayout/build/README.md | 35 ++++ v2/examples/customlayout/build/appicon.png | Bin 0 -> 132625 bytes .../customlayout/build/darwin/Info.dev.plist | 32 ++++ .../customlayout/build/darwin/Info.plist | 27 +++ .../customlayout/build/windows/icon.ico | Bin 0 -> 21017 bytes .../customlayout/build/windows/info.json | 15 ++ .../build/windows/installer/project.nsi | 101 +++++++++++ .../build/windows/installer/wails_tools.nsh | 171 ++++++++++++++++++ .../build/windows/wails.exe.manifest | 15 ++ .../customlayout/cmd/customlayout/app.go | 27 +++ .../customlayout/cmd/customlayout/main.go | 29 +++ .../customlayout/cmd/customlayout/wails.json | 15 ++ v2/examples/customlayout/go.mod | 34 ++++ v2/examples/customlayout/go.sum | 79 ++++++++ v2/examples/customlayout/myfrontend/assets.go | 6 + .../customlayout/myfrontend/index.html | 12 ++ .../customlayout/myfrontend/package.json | 13 ++ .../customlayout/myfrontend/src/app.css | 54 ++++++ .../myfrontend/src/assets/fonts/OFL.txt | 93 ++++++++++ .../fonts/nunito-v16-latin-regular.woff2 | Bin 0 -> 18972 bytes .../src/assets/images/logo-universal.png | Bin 0 -> 139695 bytes .../customlayout/myfrontend/src/main.js | 43 +++++ .../customlayout/myfrontend/src/style.css | 26 +++ v2/internal/app/app_bindings.go | 22 +-- v2/internal/fs/fs.go | 24 +++ v2/internal/fs/fs_test.go | 69 ++++++- v2/internal/project/project.go | 158 ++++++++++------ v2/internal/project/project_test.go | 129 +++++++++++++ v2/pkg/buildassets/buildassets.go | 29 +-- v2/pkg/commands/build/base.go | 15 +- v2/pkg/commands/build/build.go | 110 +++++------ v2/pkg/commands/build/builder.go | 1 - v2/pkg/commands/build/desktop.go | 20 -- v2/pkg/commands/build/packager.go | 48 +---- website/static/schemas/config.v2.json | 30 ++- 40 files changed, 1317 insertions(+), 255 deletions(-) create mode 100644 v2/examples/customlayout/.gitignore create mode 100644 v2/examples/customlayout/README.md create mode 100644 v2/examples/customlayout/build/README.md create mode 100644 v2/examples/customlayout/build/appicon.png create mode 100644 v2/examples/customlayout/build/darwin/Info.dev.plist create mode 100644 v2/examples/customlayout/build/darwin/Info.plist create mode 100644 v2/examples/customlayout/build/windows/icon.ico create mode 100644 v2/examples/customlayout/build/windows/info.json create mode 100644 v2/examples/customlayout/build/windows/installer/project.nsi create mode 100644 v2/examples/customlayout/build/windows/installer/wails_tools.nsh create mode 100644 v2/examples/customlayout/build/windows/wails.exe.manifest create mode 100644 v2/examples/customlayout/cmd/customlayout/app.go create mode 100644 v2/examples/customlayout/cmd/customlayout/main.go create mode 100644 v2/examples/customlayout/cmd/customlayout/wails.json create mode 100644 v2/examples/customlayout/go.mod create mode 100644 v2/examples/customlayout/go.sum create mode 100644 v2/examples/customlayout/myfrontend/assets.go create mode 100644 v2/examples/customlayout/myfrontend/index.html create mode 100644 v2/examples/customlayout/myfrontend/package.json create mode 100644 v2/examples/customlayout/myfrontend/src/app.css create mode 100644 v2/examples/customlayout/myfrontend/src/assets/fonts/OFL.txt create mode 100644 v2/examples/customlayout/myfrontend/src/assets/fonts/nunito-v16-latin-regular.woff2 create mode 100644 v2/examples/customlayout/myfrontend/src/assets/images/logo-universal.png create mode 100644 v2/examples/customlayout/myfrontend/src/main.js create mode 100644 v2/examples/customlayout/myfrontend/src/style.css create mode 100644 v2/internal/project/project_test.go diff --git a/v2/cmd/wails/internal/commands/build/build.go b/v2/cmd/wails/internal/commands/build/build.go index fbadf6ff..a55eea56 100644 --- a/v2/cmd/wails/internal/commands/build/build.go +++ b/v2/cmd/wails/internal/commands/build/build.go @@ -77,9 +77,9 @@ func AddBuildSubcommand(app *clir.Cli, w io.Writer) { outputFilename := "" command.StringFlag("o", "Output filename", &outputFilename) - // Clean build directory - cleanBuildDirectory := false - command.BoolFlag("clean", "Clean the build directory before building", &cleanBuildDirectory) + // Clean bin directory + cleanBinDirectory := false + command.BoolFlag("clean", "Clean the bin directory before building", &cleanBinDirectory) webview2 := "download" command.StringFlag("webview2", "WebView2 installer strategy: download,embed,browser,error.", &webview2) @@ -190,28 +190,29 @@ func AddBuildSubcommand(app *clir.Cli, w io.Writer) { // Create BuildOptions buildOptions := &build.Options{ - Logger: logger, - OutputType: outputType, - OutputFile: outputFilename, - CleanBuildDirectory: cleanBuildDirectory, - Mode: mode, - Pack: !noPackage, - LDFlags: ldflags, - Compiler: compilerCommand, - SkipModTidy: skipModTidy, - Verbosity: verbosity, - ForceBuild: forceBuild, - IgnoreFrontend: skipFrontend, - Compress: compress, - CompressFlags: compressFlags, - UserTags: userTags, - WebView2Strategy: wv2rtstrategy, - TrimPath: trimpath, - RaceDetector: raceDetector, - WindowsConsole: windowsConsole, - Obfuscated: obfuscated, - GarbleArgs: garbleargs, - SkipBindings: skipBindings, + Logger: logger, + OutputType: outputType, + OutputFile: outputFilename, + CleanBinDirectory: cleanBinDirectory, + Mode: mode, + Pack: !noPackage, + LDFlags: ldflags, + Compiler: compilerCommand, + SkipModTidy: skipModTidy, + Verbosity: verbosity, + ForceBuild: forceBuild, + IgnoreFrontend: skipFrontend, + Compress: compress, + CompressFlags: compressFlags, + UserTags: userTags, + WebView2Strategy: wv2rtstrategy, + TrimPath: trimpath, + RaceDetector: raceDetector, + WindowsConsole: windowsConsole, + Obfuscated: obfuscated, + GarbleArgs: garbleargs, + SkipBindings: skipBindings, + ProjectData: projectOptions, } // Start a new tabwriter @@ -225,6 +226,7 @@ func AddBuildSubcommand(app *clir.Cli, w io.Writer) { _, _ = fmt.Fprintf(w, "Compiler: \t%s\n", compilerPath) _, _ = fmt.Fprintf(w, "Skip Bindings: \t%t\n", skipBindings) _, _ = fmt.Fprintf(w, "Build Mode: \t%s\n", modeString) + _, _ = fmt.Fprintf(w, "Frontend Directory: \t%s\n", projectOptions.GetFrontendDir()) _, _ = fmt.Fprintf(w, "Obfuscated: \t%t\n", buildOptions.Obfuscated) if buildOptions.Obfuscated { _, _ = fmt.Fprintf(w, "Garble Args: \t%s\n", buildOptions.GarbleArgs) @@ -232,7 +234,7 @@ func AddBuildSubcommand(app *clir.Cli, w io.Writer) { _, _ = fmt.Fprintf(w, "Skip Frontend: \t%t\n", skipFrontend) _, _ = fmt.Fprintf(w, "Compress: \t%t\n", buildOptions.Compress) _, _ = fmt.Fprintf(w, "Package: \t%t\n", buildOptions.Pack) - _, _ = fmt.Fprintf(w, "Clean Build Dir: \t%t\n", buildOptions.CleanBuildDirectory) + _, _ = fmt.Fprintf(w, "Clean Bin Dir: \t%t\n", buildOptions.CleanBinDirectory) _, _ = fmt.Fprintf(w, "LDFlags: \t\"%s\"\n", buildOptions.LDFlags) _, _ = fmt.Fprintf(w, "Tags: \t[%s]\n", strings.Join(buildOptions.UserTags, ",")) _, _ = fmt.Fprintf(w, "Race Detector: \t%t\n", buildOptions.RaceDetector) @@ -358,7 +360,7 @@ func AddBuildSubcommand(app *clir.Cli, w io.Writer) { } buildOptions.IgnoreFrontend = true - buildOptions.CleanBuildDirectory = false + buildOptions.CleanBinDirectory = false // Output stats buildOptions.Logger.Println(fmt.Sprintf("Built '%s' in %s.\n", compiledBinary, time.Since(start).Round(time.Millisecond).String())) diff --git a/v2/cmd/wails/internal/commands/build/gomod.go b/v2/cmd/wails/internal/commands/build/gomod.go index 19eefd7c..29bc9ffb 100644 --- a/v2/cmd/wails/internal/commands/build/gomod.go +++ b/v2/cmd/wails/internal/commands/build/gomod.go @@ -1,13 +1,13 @@ package build import ( - "os" - "path/filepath" - + "fmt" "github.com/wailsapp/wails/v2/cmd/wails/internal" + "github.com/wailsapp/wails/v2/internal/fs" "github.com/wailsapp/wails/v2/internal/gomod" "github.com/wailsapp/wails/v2/internal/goversion" "github.com/wailsapp/wails/v2/pkg/clilogger" + "os" ) func SyncGoMod(logger *clilogger.CLILogger, updateWailsVersion bool) error { @@ -15,7 +15,10 @@ func SyncGoMod(logger *clilogger.CLILogger, updateWailsVersion bool) error { if err != nil { return err } - gomodFilename := filepath.Join(cwd, "go.mod") + gomodFilename := fs.FindFileInParents(cwd, "go.mod") + if gomodFilename == "" { + return fmt.Errorf("no go.mod file found") + } gomodData, err := os.ReadFile(gomodFilename) if err != nil { return err diff --git a/v2/cmd/wails/internal/commands/dev/dev.go b/v2/cmd/wails/internal/commands/dev/dev.go index d61bc1c7..f9d9a30f 100644 --- a/v2/cmd/wails/internal/commands/dev/dev.go +++ b/v2/cmd/wails/internal/commands/dev/dev.go @@ -166,6 +166,7 @@ func AddSubcommand(app *clir.Cli, w io.Writer) error { } buildOptions := generateBuildOptions(flags) + buildOptions.ProjectData = projectConfig buildOptions.SkipBindings = flags.skipBindings buildOptions.Logger = logger @@ -214,7 +215,7 @@ func AddSubcommand(app *clir.Cli, w io.Writer) error { // frontend:dev:watcher command. frontendDevAutoDiscovery := projectConfig.IsFrontendDevServerURLAutoDiscovery() if command := projectConfig.DevWatcherCommand; command != "" { - closer, devServerURL, err := runFrontendDevWatcherCommand(cwd, command, frontendDevAutoDiscovery) + closer, devServerURL, err := runFrontendDevWatcherCommand(projectConfig.GetFrontendDir(), command, frontendDevAutoDiscovery) if err != nil { return err } @@ -358,8 +359,8 @@ func generateBuildOptions(flags devFlags) *build.Options { // loadAndMergeProjectConfig reconciles flags passed to the CLI with project config settings and updates // the project config if necessary -func loadAndMergeProjectConfig(cwd string, flags *devFlags) (*project.Project, error) { - projectConfig, err := project.Load(cwd) +func loadAndMergeProjectConfig(projectFileDirectory string, flags *devFlags) (*project.Project, error) { + projectConfig, err := project.Load(projectFileDirectory) if err != nil { return nil, err } @@ -396,11 +397,11 @@ func loadAndMergeProjectConfig(cwd string, flags *devFlags) (*project.Project, e } if flags.wailsjsdir == "" && projectConfig.WailsJSDir != "" { - flags.wailsjsdir = projectConfig.WailsJSDir + flags.wailsjsdir = projectConfig.GetWailsJSDir() } if flags.wailsjsdir == "" { - flags.wailsjsdir = "./frontend" + flags.wailsjsdir = projectConfig.GetFrontendDir() } if flags.wailsjsdir != projectConfig.WailsJSDir { @@ -433,15 +434,14 @@ func loadAndMergeProjectConfig(cwd string, flags *devFlags) (*project.Project, e } // runFrontendDevWatcherCommand will run the `frontend:dev:watcher` command if it was given, ex- `npm run dev` -func runFrontendDevWatcherCommand(cwd string, devCommand string, discoverViteServerURL bool) (func(), string, error) { +func runFrontendDevWatcherCommand(frontendDirectory string, devCommand string, discoverViteServerURL bool) (func(), string, error) { ctx, cancel := context.WithCancel(context.Background()) scanner := NewStdoutScanner() - dir := filepath.Join(cwd, "frontend") cmdSlice := strings.Split(devCommand, " ") cmd := exec.CommandContext(ctx, cmdSlice[0], cmdSlice[1:]...) cmd.Stderr = os.Stderr cmd.Stdout = scanner - cmd.Dir = dir + cmd.Dir = frontendDirectory setParentGID(cmd) if err := cmd.Start(); err != nil { diff --git a/v2/examples/customlayout/.gitignore b/v2/examples/customlayout/.gitignore new file mode 100644 index 00000000..53e9ed8b --- /dev/null +++ b/v2/examples/customlayout/.gitignore @@ -0,0 +1,3 @@ +build/bin +node_modules +myfrontend/wailsjs \ No newline at end of file diff --git a/v2/examples/customlayout/README.md b/v2/examples/customlayout/README.md new file mode 100644 index 00000000..e4d79d4e --- /dev/null +++ b/v2/examples/customlayout/README.md @@ -0,0 +1,4 @@ +# README + +This is an example project that shows how to use a custom layout. +Run `wails build` in the `cmd/customlayout` directory to build the project. \ No newline at end of file diff --git a/v2/examples/customlayout/build/README.md b/v2/examples/customlayout/build/README.md new file mode 100644 index 00000000..3018a06c --- /dev/null +++ b/v2/examples/customlayout/build/README.md @@ -0,0 +1,35 @@ +# Build Directory + +The build directory is used to house all the build files and assets for your application. + +The structure is: + +* bin - Output directory +* darwin - macOS specific files +* windows - Windows specific files + +## Mac + +The `darwin` directory holds files specific to Mac builds. +These may be customised and used as part of the build. To return these files to the default state, simply delete them +and +build with `wails build`. + +The directory contains the following files: + +- `Info.plist` - the main plist file used for Mac builds. It is used when building using `wails build`. +- `Info.dev.plist` - same as the main plist file but used when building using `wails dev`. + +## Windows + +The `windows` directory contains the manifest and rc files used when building with `wails build`. +These may be customised for your application. To return these files to the default state, simply delete them and +build with `wails build`. + +- `icon.ico` - The icon used for the application. This is used when building using `wails build`. If you wish to + use a different icon, simply replace this file with your own. If it is missing, a new `icon.ico` file + will be created using the `appicon.png` file in the build directory. +- `installer/*` - The files used to create the Windows installer. These are used when building using `wails build`. +- `info.json` - Application details used for Windows builds. The data here will be used by the Windows installer, + as well as the application itself (right click the exe -> properties -> details) +- `wails.exe.manifest` - The main application manifest file. \ No newline at end of file diff --git a/v2/examples/customlayout/build/appicon.png b/v2/examples/customlayout/build/appicon.png new file mode 100644 index 0000000000000000000000000000000000000000..63617fe4f746b8a878bd5f44725f4f317b9d9850 GIT binary patch literal 132625 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 + + + CFBundlePackageType + APPL + CFBundleName + {{.Info.ProductName}} + CFBundleExecutable + {{.Name}} + CFBundleIdentifier + com.wails.{{.Name}} + CFBundleVersion + {{.Info.ProductVersion}} + CFBundleGetInfoString + {{.Info.Comments}} + CFBundleShortVersionString + {{.Info.ProductVersion}} + CFBundleIconFile + iconfile + LSMinimumSystemVersion + 10.13.0 + NSHighResolutionCapable + true + NSHumanReadableCopyright + {{.Info.Copyright}} + NSAppTransportSecurity + + NSAllowsLocalNetworking + + + + \ No newline at end of file diff --git a/v2/examples/customlayout/build/darwin/Info.plist b/v2/examples/customlayout/build/darwin/Info.plist new file mode 100644 index 00000000..e7819a7e --- /dev/null +++ b/v2/examples/customlayout/build/darwin/Info.plist @@ -0,0 +1,27 @@ + + + + CFBundlePackageType + APPL + CFBundleName + {{.Info.ProductName}} + CFBundleExecutable + {{.Name}} + CFBundleIdentifier + com.wails.{{.Name}} + CFBundleVersion + {{.Info.ProductVersion}} + CFBundleGetInfoString + {{.Info.Comments}} + CFBundleShortVersionString + {{.Info.ProductVersion}} + CFBundleIconFile + iconfile + LSMinimumSystemVersion + 10.13.0 + NSHighResolutionCapable + true + NSHumanReadableCopyright + {{.Info.Copyright}} + + \ No newline at end of file diff --git a/v2/examples/customlayout/build/windows/icon.ico b/v2/examples/customlayout/build/windows/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..f33479841c61728c8b5ee076ed13771c68e48b40 GIT binary patch literal 21017 zcmZQzU}RupfB*%Cy+#ZSX$%Yu4Gka>1%@6z1_otg1_lQQ2tSXVfnmKP1A~GBgnx&b zfkD=jfk8q7!vD?0!0^+Dfk8k3!dGQtVEE$Cz|a}s=g!L|#l^tD!0YMZ5(KgpggHP~ z#}utdV_-09@pN$vshIO-ZswX;*KPO1=N6~?=jQORHTSaHByQMfIFJ2+S;7P7rbT_b z?4NK7x^_-jq`vgB&?~X^ol#yQdo}(pbX{(pwP?xF_C5M@{T8(?yPeSEUUQIHF2g3N zhS9iUkKDNc|7xq$U#y&J^GgXVl;l-EXWHzC7sX?nlXU=gyt$D#Vav z5v(=U>!3YD09!+J;nL?He{cFQQ-dQneFbX+=h~X|n3KC7eZPC&?)Mv8`yU7S#m>&R zufMp&b8_03Z{Pg%#Jca!`TR&=`fPzsOTCsBeLgi+JHGbwS#x#!UoRFn@Beu= z-|pVl?CTCX9GwPtgj^QBy>}pB+ak~I`-0)W=0&g^`}b-3{+OR%F8lw#yfS$Cx;L+0 z?aJji?IGa%_*k!W{2c4@cYDq6RXmoj`*nH#JAS^S^A7Mja%jC3X!sELXwZt8_%<)ehTXXiQLPz4!kB^W4zrLsP^FL=D zrsgh=Ej?v^tYN?ZCiBT!eFc&CW zZn3|cw`O1W>vmnRcmhOFSOZkCaGLV|CMlZlIrY77aRBHcvG>ISUl{Vja^rzsF6^W0I zbZ+OAEAh^FZqwl8?(Uv1{Ykka(9z%DKVSQ9ea2^>1JhiMIFqI<;``sbLyy5x;B2Bx zH3N$ykFy5@$Dw2*h_D`w%h;zdH%yu@py-Y1~y;TN3A_{YN~ePwKb8xzMv>< z-JEXUoV2mFjBVSRh>c8X=jYwMQd0ir2IF$SxlKuh6>qqsSB50qytLGy{$SHWJul}9 zb%q0sbzfJiczumfw>%i9R z@P|*Q$G0UP?{iE~SC0$G+vI$w=h)xh4{h$e*FQzZAbdw%KB0^XZs${se{|lZeKHGYpd#tX|D+Wj%X`8K<*ZVbZDEv>Q(}Gp;rn znND_Y=R3T!`1ykE+s$vTyT$8m8Jk(AUHj~eq{Z)>H+iC`G?^dd3wBx>#3@(v!7*ZA zO{KAsM9?1LhK6_V-feiwdQ7V3kWvPBi^+^1oEpa$|Jfp9!M|I{*7j_y`q#JH@3+0a zzTUaqzkjW5@pk9>##>A;|NZcNe3;+9CHp$tLhX#dQ}6re_NK5a_%$`lTKQO67yLKR zxpAT7q8wM7yZVl^EKCer<)@tHI=@w1ETSg+Mfi)UCu=rubW+T@JInRLQjT9|8aEg; z%lcGKubkH`d(!=^Si{@f+nGOP%~&^UQy%-jg*W*wzdy6ofAZ$lSG9WN?d8n!@6Ea0 z_poC+lfw3GK4qVmNFVWK`4XfX^Xr*t3qz>+gJJPMeY>rt(wDJkatGEVD@gS z-C1#-#y7U*O2_Of(d;RANeMl3?5)80{AKI~Z*CY$NJw+w*}rGUtw8HrDU2LP+BY7Xezg0q@DpJbi|#q0TGO4s z*Wdf|lXq&e#ly7>J0@Oz^x@Ww4Hb1|>`q@9cFn%VdShR$bTX@&erK>;PTKLbekt6r!Ce`V@hh_Cy7pz||-mCF= zd*fbdg{4C52RFU{Z*tdw?ZVYPdJY$o!d8ba6+M^9{$!)G=T1)DQm6X*dJU$dPJtTf zVcT_DufI8=)&KIh=X&mamv86qmo>}1^(5xs#D?ii7j8@Eo@_gN`(j`|pJBt1SRsQ0 zS(z+r>y23w5)u?-jHlnNH{H+jWNTR6cDwCnCf8NO6$Ca%Z_j%wV0@ErncVgy{vXp$ zKQ;JNf8O@H#S+t^4XZtCi6nAu)kZtKN7Q!|w9;ZRhR(-w|4P z>`g#__tUf6_;bx?D=;{=-riro|6wJsN^QFJl{}_jVgGuZBl^c_NvDYN4 zy<|e_?TIxJD?<`qU0Jyy@$WAgu^yg1A`J@;Ej8C%|25^SUgJBp_UD_vTr=!qx%ZCa z_+{m@Gg!Xd-G2WNyL^qnuK#*vF7gjHOI%G}CHqN1D%`2kjGyB z&o*S!+XoNZr+Qh|M1B6I8T@Kn`i@6S8A{5^xOBa%q+hIcXghtTHM?a3L-EVF_@ z-u8FQVl`gxJ)#U-@;mRzWG(Q|sXX%dSoMhsQC449NHT3mKF+tJ@^e~9;;r2FStZR( z1#fR{{cthfW=1D#oM>s%yD|^Y%=^;(t{JzsWNvsfF}3ongkXgx!@*wB3Wi563ofv3 z`6_AJ9$}l;w0NcJ#W!gc49(Zq9jt!;wnN*e`t1XckbQxS7G+;%T>F2#=vx2FrzLM^ zy6_2x_iZ#-_UXst{&r&qcjY*)hC8et2|>wBw`zn^13IIX&VM?vW2wr;^j@w53lFzH z{P8h)YkPfw^@LApw-Z;ToC;ie$Xtt|`rEt4)#2+O9XvCq%w>MzQ{-Qw|9h6Rku59K5T2| zzaDU0`<0RTBCqA;Ht#mZ*GogRTKWG!c(-XGtNSr^>8;LtH^uGy^U2%d&&T6l|K;^% z-O`SpOLSLYm~EEZwlVp5+ES~ekHHL&BpTW>AH=nsRA2pWTbZq~O#6x598o*n#F#mM zooeTopQi0IP4?2mv>S>wha#L~8beb~bF>-pzZJnFPL zDqmQk$sn7-b0C77$Kdvj89j=gd>45(KX6+;J$83l>-m4;5srFM(r+)sd}3o+u)n_E z=I?gNGKo_U6Wl*NxxdJ@`;$ohk%vnet|T#dh&#CSa_*k15TK4|t;~hWTv)^)@+LU^F+OqXmE$(~>VrY^+v-JMlTIuA|Ey;PC zEtk5nJh-#7_@Qv|j|$5mp6SM~wm5sO^<%WC{Ust}S)_7V&imYn(|^iBR)@|oNMu?Q zy?xucq8=GgUi->FMfN*GOq5)r6wj+=NsQ*fk*~xX7JOQLIrXB^0*x|`|Ni|q<@cSP z9&gspC);=3NaLAD_!j2*({i>k|NrZ~RLJJfhr=5R9y0GdWiRwGh~Z1>j@UUVg(ePj zE0T73eqCs8*q-6}A?YsDhi9|%okC~n-R_WGus6LeW2csM6kll-gM7^g$34>;Z}P31 zI`tA~$vvCih+H zkJ%&A5XIy0nknP*4}qM}dD{P1y?m7^{_2kKgT?)JT;dF!ZpLkw`2OChVtH_7WpLZx z{~x}^^X$8l-(HvZ;GcfwJ5oH4UT(kX=iOH2h=a)0wulek2!MI}a;VoK0vQGup z9nLwdG5z$17mNE3#g^XZRxIJj+=&>=VkTKeGS((!U_Lz~D}> zK#wfXpSdrEYeFCV@vZ!ECeTm(!IP81p!R0g-+IeO@6+0YX8rj8%|PkMe%A+`xi>$h z^iAro*(2JJmm(q1E%;jbgx=cD-Yt7mJ?re|e zTrSyu_}0e^{?~j(nQC+pZfN zi<)Jh7O}qD{oXEOU(L?qo$lQCxE!vqPPpq{&Uv6}?jyU#zN`Ars~Q?#*Goj|2=~YC zXt>>YTxi1{9`_=S1K-}>e*BYXRmiiA&O29KYdyJ1`4+$7i~spIHY{9te3QFY9Ct&{ z%ZY;3AH1gt1b?}s!%>;W$Ts!qq3iL-i?8H9E!uiG#M9?0pTF~K7fUXO3-8~(e{X(f z=lb(~D;REZI}7ow+9UOkEqZ%isn+L=!`X}%@$bM^)c`k;N{Q^Ek5c$eWT_)(3BHZZ2?}alYYpqwMCJjFM$1;-W76IzQLC{EGgc z#6#JP0uOKL*go7A_>FOjt&dv#vP{=K#k}EcJ0ERdCwJh$0SAl!@o~Sr^LeGWHXARQ zaFVg_M&pv#ueQIxx7WRHPNY%$)tE0eWe#n!ow^q{Ixx(udbKie|A%(Y^~;&m19MXj zXdijvd2L?U*%vCshA&iJxK!mAy?9$F+)(@bTWj`HPo@T)*>_jS-q>ksJwvL%WXbCl z4Ay0DCTurKUnQ%vIj8r=!PQp_4xT?d+uV9;xyhro>=*9dm9?#C>a&RcH7{n((Pbw$ z1)gp#HMnHFsJN=?Zj{{bWAm3KguBV#I?C717TbG$cM0RVxV>EM{PID|jJIF!E86q! z{v69uyYZxGAAB z;iSou3{C-Mo2jqoMs-zOP$%W>0jxS+a;Ns^Guu@Be@Q{wy{!$k?r&CL(b*iOUBiD@Ud_QMA@iI0rJG$vN|1BNYp7r~FaoO>e z|JT%dxx%@6hU}|KHtQKT`Q-9X?W#O2mTg&kAe!;Tn^z_wTDnWtw!Y6Q7h^6dkIC`h z`{mXYrx%Pjb~Cv5%eDI3{baFf+Gk|!6YBK&bT)g2-j>y}S#FU`3i|14%Vr(t%iGAj zrYuA|bjRm&)`#2cYmUb=a_nX}#H-QDv_U%N&4O80Gh=r4iY5x=N1r>)b>VjQcZPfQ z|Nj>3uLjOMgNueh&A*nZDU@W zIp?(Qj#M{)^K8!#mzVn=7R+6KXU!JfvKE(lF0sz>vjn`7Ctf_=bJo#+o{i+X%!b=j z4Da-!5vH{NoHE53ZwbhKOiy4gX4<*RQTyfS&hH?zgu0$cuFd}q(v{{GT5 z`Fn3K_MhDE{vecfYW=Axn%9bcHEm}S2-$aQ^N(A$**iOZW6v$=>-v1f_!6(niEUCB zqVxAj#;Wc(DdWp^nqNQT0@J@@8aj@ z4z`~>Y%f#zdgnqO$tkB(BQ~e;`pmMC)Vi8A$HZN_ZnEq$#)AePnJ<}Qc9-#fdw*Y_ zcYl}V)8Y>wcQl;sJMiu1=Jdm>u8REi{}9KZw5Gg<=iZqaGI?$LCS2aY>2M)PP5bGR zMTahw1m8c9=YHw!jSY#-A9(EgFAJPIoYZxT+gae;r3CfYl5D95no3v5?s629cop#B zN2&rt_VsnGg^!O}E_uox$L)}x|A^5bmnY`!=G_nERzEZ4KOoZc`*L)>(7Y+h$G$wh z<7;ZJ<+?SB^ZK6p9}n9P?=$dd=G0j(dm^&%`*9QL4-XDDU;GmPdfDtVAMQT?Z+k?$ z`F+uu8HNw%{deiQ&XiEcc1PyPr1OSbL$aPkl|EeTm-mG6MR#J&_q*jA_Se^&{7HY| zbmF+r#G;#hK`VK*!`5(w@6(;G{p)39SwgJf)0$}Ug!lLMwl%1wu|K#Uowuk&duq{- zEB800o_^(#{N>TxDh7ddoENfhC`ObN`#6Z`#q+jpjh ze1TaBzjR7{KiYm(I`h4}gzcIXFCX7Evwta3yCTXDvC6R>n5GlSWSoAkr$3}MMQXEi zi{w03P;$)uwSJD(^-r5`E}VOK!Y2*J3kSaKEPj6IP%F1_@dw`btPVL`A04Kz?F?j& z(>u7!BsNFr!oghtcp1n zU(%}oc{={k$4^d-tN9`wjqda<*yKOQB5>BfQ#jZntC|%yxscW>4&o!IhH?^nzzyX;6b6DvUTnk)mJgFtbG!1|5N4hL;2J- z^A&$;R)(&=T5!L5V{~F~?Ts&|O)?Z})^RcHTaX!NZRDmCxVCFu#kZU3zTs8<*O>&W z7#?c3vCk0rZuH8i+tFd}nFo)^w=&u;QE9ucEU@o(-tM!zb@zXMu$6&D z&cVv?=(Y-Ri5OqC^69ef+b6BQB5~l|-QC&VSsN{UkIkH*H*bEF?$JNZ)65I%<*Pn8 zYOXJlWl7~MzQ|YnJ?fPI>J?2Kb1aM5{N`GzaxxgVNuDWN60WsL<)7Rf&(-r(qwDTh zzuz0><yB5MZWxB9TTB-XIuNCEcPh?oioOlPiszxVs4Ui-?ZzySWp(z8?lOp?)l zYILXg{FV<7(-R`ok5(-|Mkh+$7!c2F&sN;y`@Alt9{n$8>}76{?BVq+L*B2`Ng^0`^S+3EvDIFhfGdr+2WS3vHHcyt3$x1XlliIgi@KjNPeBFkd@t+!a!sWfa>BbA8h_8%nVkAy4d3tA+sFO#elx#Vht+%6v(3JmQ@m6w9(5i+tmts4?>f^2 zofC@synU=Qd=iqABeK`XbFn16xv{a}>8Yt37O8MI&nPYyU;3a{fq~!dhl0;66Hfig zORNIz*EYSH>Dk=!UU$WZ#$0jzxE6o=zb1FjZzx+-oqDb~E9k(1b@S%U`*1N{N%}nN z0^!Js$4joK{`hAaK1;LCbklL!=L?@3*4_D0Fg2!hPK@V;St~8f4z_-2?%Gkgc_;sz zGRB-T&C~*kXDt;QFE5BLet4+WfFWYO?514O=O>K zo4@emjG$=|K1{QZ^-8;6{4euEm*FJeLBG$Bjvmzb?R)ablz{f8cE$t3>V5~}|Nja< z_;>nk$CNGB-cecGQo@>23`4vN`ZX(;zu$0hSI2|jHnqRDB!o|s{joi_YWZ*G%n2Jq zv|0~sPx+Xn;>&b6oAHH9GQ-Wc0_QEle~DNsa)vCGu3u%(?Eb0vqoOeIOyPnlS znzdlgzqHvL%Kul_O>;Zd{O_an`#p<8g>>1M{MPa5ynIS#$N$gI&o}>mxBGk+^YhSd z{l&|(?bdC%Hm7~^EG^NeAMej8J8}Hu9;HWxJaR{EGamNWROn9KD$yV!@c5U+4(^Al zm*$wN&MYZWDClKpV>|R9{?$L}PbQ`lw*GmNQE`F4?#;&IYoq%ZQ`WFI^d9$S^gYA= zXyJ_5T_uKh&Toi#b0V{Smfn+Jwq8p$-fc`c$n?6hrRO@R6}e#1iS2Xu)|Pj=%GI$Ae9|A@ z51f=|^~Q5;ecYaROf2TU-!45k^z)XWP1yTQ(eo{m&sptv^PZlquHw$Lz53gl$V->v z)vhe`uL(`aS#y_fn;}OYdytxqYjNDi{f*a+D?g=l{kz_HooPXyz${y_1x@+Qskfv~ z&+(eI_^#pc>bEB+F8IH{?r+s{!-93ahm(~*em%=tu$kF<-SWpy3E!RhZC$wQuQXm~ zVz{Jy@YRE9E8|}oWoo>)Ec_=UUAcX!YR}{2{QuWPJ>B+s?d>PatKKxQy_wLwQE!&; z4MC2d#pi9G7nm)4w3lItT!XGaYE?hW=?!xFQRNd#)=o~IAjpHFCkg6kSy zH`#o8n8hyFdYymg4aH@rr~H}mx27>`DO2$KJ;BkRCloZZDD*MD5cYZ1z_=-b)l6KW z`V;p&i)*YNY6qtzUVU}-SbP1JJ4Yt+oBZhWxqnfstj}T5lpT=@B{PlB9_Y}RdU`|B z(^Cbvjg{>0aXaj=^mwu9+0L1kpS0R$vYnhVc}u{IxQAb2c1#m@_*4)mcx~O;zJJ$) zo;dN{xW+L{HsXNL=EIuhy80Jt7u(_U`7MSNTk`xwVB`h2i7B zhEJbAaxMG&c}LN{!Y32F9kDV_6>~cl7^A8#}Bl&+9H$Aku`&0e!UCs@tr#-xlzg-fX#)4euiTvV!faj^Z9 zq;JLqh9iaz0>O7UKXNRYxAqq6wioSR8VlE)5itw?6Im zoWRh*Byi|SxJ>*t@7EK&rIdbc{dKf$M&%qmG0V%Z6E=Oh{>nRw~=GA8e`&i=>GOb?Z$ zX1T9g9n-P;fir98-IH_Jt3Iu-oWOA8H*-RtK#RGa+BHev-f4)>8C%OQ0_m_!YM3s>15|g zzA4Av7%c1M(N*!cx%6cIvqxW79Z;xXxR%bCrQrXpu}bpUv0H2xeGOFiU-_$FCUUs& zgPTDW17DfMa&HOYD{n7cW;>btpzF9m$GyeE3ejHEp zV*Q+ht~yUscntRH@wE8vlbvSr;NR>b=8Y>}c|T;`SJdPy6k@&UdXQMK_ciOBkS`pv z?^zXA{AuLyc>L%SxA*MyI7WwjkF|^cFL=I+?bM?4PT%Wq8qKgO%}R^9RItzNq~5ruXn>EAGOjxyRTfs>B)Q zZ%8@zCv%$Y&6lUrSr%>2x~et9qHxhyFC}{whA19}qL7*zxdw?JlgvMF=$|h6jNxjW z%kTTXIR}LzmKAB<=gjYuz4i4)mrv%G{mYlPU;CRasKW43qoF5rQ9oC(U+^YWG4<4k3(nmS?^Q2PpQ0_jm3x6G_v=j=jeCB*IdJ*tb2*l^|9d2j4>2fQ ztl1;p;IvTS7~_W(I~Kprw>YaKpZ9Xr_3+i9H+B>%i*)J!y1C})srP5p6BzBooBsW8 zKJn_A1x^kR+$iKqJ$FFYv!5+or`XQ%`;nTSq zA9s0c#x2oHxaHdK-HW@it8{g+olBhuL(5*qFSjkVZ{^+!KF?6@8?Ii^Dj)Hq;qtNh zUnk_Uo4wTBFPj-xH6tK4XGxIe;lJPS`@jCTRY0iWM&z~u8sW+St#muP?D!Qeo~Ma4|B=U2U28DniB{8NE(!ZbGXh1>gX zl!Wd~-IAPRKCz_o4cB%Rfol_Fr$tVT*tM1a>Yo`!cHDRWZ%jUB^5uZ=L|)E@3#WHOq>pT zoC|j7DV)guaW$$Y^}RJ;lJatwH(QULFA~-^-(ga9EOO8PTJ<$&cYa*XJ+qoQsdoqC z)_JEEH+U>zDCT>#-)kvT`JF=cHF0~b+D%>dR_s^cIKp&*Yoi#K`DT;a*o>2s5pD-0 z)x-_P7W$^o)s#K3%)@IgU9v8W8yV+Emzbf|zt4-Pe>uVx~%c?uBImqS>*XzVKK1T|ZC1bZrygC#G%d2HQ})c4y^(+aPf1zd z9J)HpYTB#}5g`U&h7AYiaGp+)da}hvK5TX943o?t@34cOZj4)uHuMxd-NgLbJ2PK} z>3jXvQ&SC6PswiU=}>cGns9_+hN_orZGwMG_y3N3o!{B%JN_3xKbIRBf5YNcq_)** ziA~OWo76LG?Qgwa(0%8>nKP3@1w-QMjBW5eZ#Uf9FJ14p zTkc;oGoRtym8XKAE-hO0tETa!2cG z*6Be;M-N?4zBn~7+rqkrVa47Pjy9WRZzwF+lr3dVST{#7x7aT2j6~7@b_OAal+=XX zoAcxL%k4cS!o4|0Hl(BU^|jV&v29$x?=`#-grx zv|ugIoTv9@eP_BbZ<(XL@O|aVUfqNt#bnAG}Nb9Bm_xa+sb zgEE8Fq`!>3{A(-@>%_9`eLDHG*YkhpXV@`6J3l`@UGmO`?uMlH(k$b=_6fpuku^Qx zi!0dI{x&z6z`)?(p5A_e)!_Tb*Hc@cWZA4ZwxquKnnA(;*+1XZAC_3g`uO;ShWV;5 z9X>oeJC~c^=7U3Ws>-V-7KdAkH{y;?WZeBG_FY9)X_$}gO=i&i`nlBg>^UL~#jgvk zbzVyK89rsv^OJifv(09w>&#BiE!wD8`#2L5e-Q_y|@A;XTms_rMR4FiaTxY3yIyL;kqoeN| zHm-0o@Q_b=nxx=edvejqX3y4yk2y(gXB&Ly2^-ajZRy|^)5(}R)0FAp@0;iA*rw~p z^UZHM@`gbmjkPE-cFGgwW?7!uZflmw*2~mTVW55~?-rSsizW z&bHj!|F_PWE#WO-7jTF#Ol#`v{lD+Nzt{EJSM%R?)vt^0<>q{Tc9D_6mcf9HK`nMi z!NYo=c{Y`rMeo)|Ovza5bcj9g$XBOFS5^l9Pk(l1W<57U_~ZSv3m@Moxh2W0aXhQ+ zC4c>o!}Z2u*fQ=2;Xz zvOhP+^7H&Hn)OW*f^Tkbf4^TZe&3({N0*zWOn)5FBd~& zV`Cq;uh3yJToSXV;^P5s{XHM@|Nl5{Kd(o7-;H0}r<8Fw?E0;8dtdEu@%i=tex5VU zzINyS_3P$q&puV`P<(o3rt$yxFPG2%_x<*^T9e!V|G%#|bbjrQPxrH)*UVV> zimAcC+rVT?h}PXdU)R^~{l0qrzN++VYa*|He0===-HR75nzuYv?pS7QVe#W;BQyKI z=iU1Iew44@^XZgz;nMwzTmIzE^$H`g8Bzz1!Tahh{h}43J@as>Y#hvnXa|$hx@wb$`3L#r0%vZO^}dZvOv2&#UeJ z{dlb3T4`wB+I4@EWW8FOvun~uj*h!c>weTK2*f5I>yg}^cXwCk=jZ3=8geYtcye}8S@%!0wIuA@q7Sn!IxRcGv1k=X z!;jc2QmoFc-YUqo-@hfQ0woIuWW5snRY6#6k3@o>zS(l$7$|+Cjl12KMVeu zI9Bj*GSHDYW6#FG@c;k9`kDWVwY)wsFfcH9y85}Sb4qB!+`Pijz`(%J0N%WE*e>xj z0|Q?$Z1YOIPssIe$FK7k)Jr%xw*GQvab>;j7`R$sN>ud1EYtl@p4r`BzVFMgg4@&W zOlmVG&%X1_?uv=soqJ2fCok*F|2}Kh9d*Ywi^4=Qre2HEFk9Lskir z3!cx<=j{DHv-ZW!`Dsa0Er0WD-dDYL>-V^7d3}$VUXg~=6PXGugBbMOxeh$_VB8_2 z$uM1+^+C}RhL}DK$vIB5Z+(5C&slHs_b6)|lS8uj3%R3<|3@mg9uPIzwQ7IQ|L`yN zD<3K{n3M=I{3v^WFZT1Z+4*hexwp0)eE)sAMwgN^kGqZB`9DvdJZZjn@7_aUb-z1| z4U!BU%nm)v!#6NV*+(@qJNj}5OfWka`50mVTKR&3<77;Pq=QE|Mg;Vf8W{j=k3M*y6%|! z@ZrOHh67RzAD(+NG>XSnB)-0K3MS6WOe^{{!(4D zo7@=YmEWsOFV+ybhlPVf2e-Me>#<`J3apHF{jw=sgJ?EO97*=x z->z2b+#E~h#)hrcZc2ie-^)r%H=novFEh`s*6WDp=|6vLWGriD{Hof_A?%D?3YAYEU0m#LU|_(obg8O?aeL~u>@VNH3m+5_zwAF%-)^(b&ZOS=3cvYZH#@iT1z{FiIQ%G zuGIba=k*xgOf7$ZFIA{PlD|Qz+hv|nD}zkoo=>N=1EQk5?zV}xa5C^7f5WKokg-U$ z^!fSu>W8(&4$s*6?bFlKS1j37IDdV;9=|;Au+|}#hLh5py{`#5oqATZ(H&HwpW#f` zWAyR!n?~&I>W(}gE= z?_aOiKRnpX?h~gg*6--<&d$PAx%#b$K0{a$FQb0U4u<05;s;+Z{9h%tvA&FT!S8g* z)QnkN3m*x{oICu)-{_H(gJLy@1OJ5VL#&VO`yZy69bUD{ORXV-MYj8>q72{RZMnBs z++N@~gMo{S+e7Yv5L3e$jWn?XH*QGW*;U$|x%Z&LY=(js$3r~L3ocgg`F1Ni=13On zLPdtV=GlA!F*2uqeC`(4Ka{`!FI(KPnU*IM8ycm}6SA_pGQD=MS<}OzaGyh*L3?39 z8e>U$xq8nbM~0g(UcXjOS|ZBO7gF}-hNBz9Pq!5e1sunvn2eq>%$Uf}$5&MNf5K7b zgr>^B$9UDg_sc2FPyV0M!pV>Yn)%_!f#fmbEp^nYH zin51T9bPkV4<>zssBq!oIgc-9+rT+(W+QKbRokz+Tt5GM9&+|L}_!8F4HPoC>+`kH4w^`|In5 z?Q44vFJGK~lk30=cAwnGHU9h`nf7d|Z@%));P{V!zu&KHZM*sZ-{0R0bB=QP&7aVh zs?BggeR5M{y6C|fAz$NmB&-Tw)bQbNny2W22M-kf{Cd4UOlZ&hQ z=z9A4C$|+0O&K<9;k`^AdK_=xzHNQ^^5vAcom*;q_Dh@PG@PAn?rgIzC8PFZ>B+WZ zN8Ym?{*tdFr`{@`_RaW4ZvvypWc_JrMkhWnoOCnT{jL9_cze8d_&O6=wn?lFp3nO2 z|9MPhm?U~8L7-2@GU;cOwZJ>Zh_s6vzDsYeef;?G5*_XE^(O1AD?Th(Dx(k?@%QiF z6n+NZKkgrM@9r{v-zq;-K)b=gFnHTM9fqEh{c^TVO)_qd-{XUWna`d*dqg75^WPku z-Sr0lZ&Rs`x6)Cr1oyzI`zuk#fE2+YW&U^W|aSz zXqBJK#AR=!7{Z`a%^bk+!tq0uOy9z2y;Ffdvvbtlzw>)`8>ShsG%W6^{{AlTXuXJh zl^hSFpW_OK3$>fqT$gq}@cR1t*|&al+J4yid|tC{^|uN8FLN;5wSVg(eDD8-h0fE~ zZx(K^VAvJtu+gr^s{GxYm6LMbH0~~Y+hm%3O=nA@nDdG)m-lD<>FVNo@#f8znzeH+ z4l!Ri!vmF8dF$4#)7Ebl zekj+lYg!z$QQ!W`&&yW!&Y!ht(%)|u|KeLb{rl#Z78D4`+0|rN=42}D`=Bg*$d=*s zJ%%$+cJJQpt9$a;qr!}=EG6v%wy@#`?eKL0Z~p~~imqC<>cpe|%K}yszH-N-S$i9f z9awUvNBp3~oLB$OaxuI&H8*#E^*?j-|83jMCN)^~roLvp@O1XwiOt8{^C#Y7K6_96 zw!E}-vtXAMbMpQM;jn*~6m8fSd}ippYIEj9dU|^Ck(6GQuHN3>l#l5b{e8F?s{dZN zAfRdHTd%Ks_`m(^${gXC9}_tjGA+0-GpXa?!L6xhi}!X z>ugQ9>`$FO?R!`IKF3+c3kqTUxjx5y%;wE7;sdR*4Ei@WPwoKMv96^rcJ0sM_{yNc zAh)}DQ=&+G%i)Kr_M1QNJGR$6?+%BquI{#b?W_x#4#XWzu1_$#z+v&tKfG=lKjVWF z%}+0Q>=vwxFzJ7rIMcvu|E0IPHyiOR*=yc)?&Lf9IZ6z>c@n3@y}z^5`0e?(A`EKv z7N0Wm^0vK|vngm{c+-@#Cnr-e`@_o(!3@Vb~V zXyA#${5|FBHyaBWZy39HwM>awo_9mA>cZzK)2FBN+WI-|V0d#wX5lKSH9GM-OWxXZ z?rv*rd%kl0`seqy$^Ow}ZE(A>FSq*M>iht|Rm&{v-pubQV7wv7bb)vIxxdSsx3eF( z5g!`q*;gH}$06?E;LlV!lc_g8C}`5=U&r*m-@kRstFJavk3+oSyv5tulN}#@v{<=2 zKPTtJ&$xL?23+=YBEC=OeaLj8^v>>35m&`_y{EU758P&cP`i5d>XV!QO%r~^df>y2 z9U(oe5}OTYEa$lJcku@;Ev+3}XY#jjA2@!IS>pA3UteF#`=@XJovdD~Yy6$xPr%{P zO#3(deGIV-)!*Nl)_&p97u5K8q*2&U@6U;rW|jkKJd4Gk|zAo`bW=4j><^87x zKQcM+2Lzn>^JGFy_Wzmdl381?U%YrQLS>Vt+B}PI-wkXg2bdgU72s+G?T0Y1w?A*97!n?y z{_<~Qg21j_yJpPO>`7d5E|J|1#tIv` z>g`v(A~vK*OEIqKTI8a!Zt{(uRjWQTEQkeCx%F7cE&&*OYq3ReXAK(w1Sy z_F#sNYgey+byg9QT)rbLNqO<&#n%}Wy3QSVV`{<_kau@i>Hl|kcmMbOWj-}Ib^8$; z?)$&*+`03Y-~P{sJ)zM7PZ?gM+5LFXyv{@Alfp{b=kHto{N4CrFF!Bu-_6UHr~8~| z^l^^uG_h+jArKaXjj)lxW?PZKr94EN#7$Pday}9}LVn#{S zWR8c+=hyxE{_5&#b7lv_Uib8sN0l}{`||Sg;aSUKvvP7`WO>-GSMQB`$nBGtP*wG- zec!%)``_N!`1pNsaq;A;Z~2ue#}1c@zg*q5^!?uNaXU6|-n?|vrcL*rf1a8#OU;?t zJtVaE+?g{zHNW3(Z_eNU_uJNXetACz2cP;t-qV$mCl+@fSY17p>F@g>hCdfdl#hRP z@xS_i%akumliC|?H1#>U9^7Eg0=fBTA=x%R$jpIWUa8L)`SIh&`^(GA zzYAYgv+NvkX>wXtrEU9fQB!}wLJrdg%EV|Ou-Si{+VI3~JkaM&`7nan;Fe|{LcE)M+k`|q94CsQW<+nda8`u6tp;yzkOEu$(VQjf#p|v1^yr^9mKAh2r{g9Q(DWdR;u$EB*4v$H#p+6OPkcgTHr%9>+Y zd~D)7D=s$%kgCIgR}OPsVu@h%N*6XT zFmUKT`K0Sq+Wh(-9~4!EIM?;uOWn20@A*>uo#KptoI0GAPi_foixF!rGTYQED=RBn zCI7Jg!2!lwJB!ornR#4icyTJ5Wd&nE%z9z{_Ft6t}-lcZws+9NX%! zV=O<-I&8!lyI!;K@bPWZD44W*hPYk*zcaZrC1##JeR}2Q&Bp$3r$2CF>9{StYVSR^ z_xJbbe^RkI5vo<|zl3Mq!&>%3|35rDylmo4%_W>0q%s^B)Es?^js>tehK7c!NlLu- ze*Wji4GHruC)&}7Ljg|IqfV`Irp1$+}5TTcgxJP{KV`2Oy$ zb(nF*_jVr(nPthx`%bPnuMo?;U_piq8)JZ2_xv2^3%j@H-}me7?bVsm%fR^I-3M%{I@U7C7Iri$Nnxlu;sZ@kNc^{{H7a^$H92?w$Mf!%~ijbA?M7`fMvc zG|c{8Rc=}TZ%@xFNs%cHlO_q7{W_Lp_(}8h!~Q*Xm7i3$a~yiS;?Mc{_RpW$ud2_@ z)s?j@a&i0m^!;Q(HpW$1bD1*g&rHlrKg1A{$78^e`q?%#%)pTO!wJ_@b1Vv*Ccb7{ z@{QTSLE%7r)2n$sE=o&Qoqo7}yZ#9!(KAJLQj(I1*3Lg{rK_?_7yo))(AdCW&h)@m zf?v7R|CRQU;N^a)cInQZ?i^Wc`3DZ|ef8?qiw6grjk2CQOkyzI%bBRg!0NO9LzSWP zx$uyXOADRbZ=?$sYBWT31#v%m$o}N!&Grr4noNJ{Ol2AWe0Eb#a40S|4h;#}aDLB; zz>42lFSDJGF5F{o=Q2U7i6hsg;jTN!4!*1Qzcc-xpe8$9)|6Tz6~!NTLo9V zla-aVJpRUw;l%Cz_4aRXZPnJ7UHgEGQCpIUKPfb$CM$V5gSnZVOMxn@OLUUeg#BN? zepTbY#rxlPw%Jn=e{)6O13}^&_OY=X_2b>+)V%0tsN5= zo$gH8sF0PNecGq5wZVijH8nLSQ_G80JrW!MNhe^ zO^(jK@TGmh!-5&w)jvO_ehV>|kKC@{%V0C({j-*yHPHfM2UCoG_E$LfSggL3!@(I4 zY8t80YSUn5Z-0L67AGd9i6=s|rq0q_5p|#QW5u8Iot>SL%ZnQO;M%{xzTP`^>J;Dn z^Wl^7{OvzQFL~42>Y`*Q+UfFc%eHO*++6Oj(c9LY@GIT4gk5BhrO%@{?N5gvFaN)I zC8Ua4Blut|Q{3bC44~S!yY0l@DTijW6R2$!7#J87z_o30Rn->;2Ij@k+BW>Gw{^J4 zUSm%+tw0^IsT?zRdAKZ%I@;S2Br9mTtK{LexvTYF&A;$2=GC^p>RY5ae>8UO_{7XQ zG0P#CMbKw)O4^n1bEWr8E?RI(6@K3RLE(M!JVH5 zC3w1unsjw_?^X-Vm^EuvOiaulTM@3KogRTAOXskJ+}`%z&cfoy*7fV(Z+Otv-Q693 zL_Jz#oku%`;}s zEc|ZbYiw$7|9|h1FE(wWqM~nP_qa?>-Y|8l=q8=hbElV8Rh{C!XJ=>k>CTZOM`laR zV`)05@UzD59?#kL-lUW>m{dHda~p_ z=UCx@xY@EL2aJa_Gy*vw@oPu-a2>fGkIFyO^s7N$NX4gL>XHf@^ZXf(5a=7A3% zHW>exdH?opZn&X9_wmQ`9vtOlVe+&2FMs>SjR$r@+@F+G7+Svsu)UU-lhcsu4)pi; z4`gD^KODo9al~`krK?v(W8>nA_OD*utu23mp{k<7qrANQNpL9N;S(o1r04MqH!SIT zl*~}nw6vB@kKi=IGyitI`K}g~Gn#bk7zP#e%C*J2RS#|zo`t2+C z?)k~e+SkotNctV*=5g=ZwPT-{eK$h%DW5JS>n&!)>PmgM^gSqx()aPuIG~ zHdrlQyjZnST$LfRSd>BVNO?iQg_qCQw=3Pfdsn2_&0Fok%$7?NYCgy?%$++|CRt+D z+&vWu8s|R>OsW!&ztYJEX(}& z`B}3I$H!MU|8Rbr;G?#-$$0nf-L=zFm)Zw6hG>0_)_b=4_`_ens@m7Rw%6`@RR7bX zcD<#mm*?`!>TB1ot$%oATJrr(H>UqL|5L>DpB0q1|IWK6G2xQbaRPZ8bcmS*IB!2F zxBbDuz;pn9Z`a{T`phC>l1$69vGaJz8RM04%MixS&HdS5KwVOsKB`3FmF zyPkB!)er@})+0-g^|Q82SYV`ZX724dm(Q`BUU2D!r{A7?)zAN1#~V8yl)gQix#@qN zjEu~l-|>dNmzj3PoMTeBv$tXQiRYg`mRSAOmEo(G+GDUx)2ZXx*|TToB}yE1SN~d7 z>%VW(-Fx@y%1hb3MT*6zr9S-iORDj}e3tvKt&}cmtXsG4!bTkyXGIkuPCILR`}W5c zZ$4JY7#kZ0h`36hT6;0$$sLYUPdCk(KY#kklu3JoRtAJzGVxvcdRI(j?Q-n^RK7H8tBeRc>kAehGQ74C3r%Ql_h{Dn(UvB>1*8BKz@`_cbF05Uv z+j97!;@X9VrHo$^_TPX0_3vNXuA@rMoKERmqj;}oP5pji^UXE$ue=c2nKWzJ!#8hu z#Kpxs+!pKjJ)i2;swh&c^;K|X$g8IeURPNID*O8SDmI0M`?dwV)KGrK%D8R&=6gqa zr!q!vzny9*bS`C|!IXrjMKh}nZEeqfl~3JgtH5B%dF6HKyQ7aDDNUO;&Eiqo=97NH zZj+NGj(IfXvx(R;p73a4cv&K~dGqFb-mWt*+@Cvl?!-sunLJwbHMz{p%zo4ttupTv zHkf>}hkt=*Vfw6=XV0E(*tYH1%pGp8zkV%!vFo48f$i)p2kz$!F|O#`7{RkQuK#}2 zalsegbKkssXQ%m(OFS- z`mdPnx8F9ce*Ja9)vUilP9^it{$#zDxBYXRDI5Q)tFNA~T)C2;VacjhMKOtrEtg(@ z&1y^hv&3t!+lKSEX8&LHLl%_uJ4#<(-5@G_hCtE>o!2J-PWtkn|0gmqFus8#{Ut&6 ztEC(T<`{)Y-7 zKUmoDT;8Or+$vGb|!~O5_lhv0qOe)kSf4sS^x1Z}y-u9GP z%R<+N)d%TZ^uPYKylYWSde7d}p1GOtYwVg&KV|Zq)Z(vwG~}^G-`2SG``errsvkV? z{Ija%^Y?;+X`5$y^tmV%SjZ%7jcQz^;gH^z$dK%FByRn8VFnw{sMAkB87nmxTcfelnci zbmV6CmxorTCaG{LEV`d#mbm+_lhI6(yDv(tk~Rdbyz)7!?DMkAFWrw9`u*TfoAqqE zbaRBxH|OhL`R9B#@2IGp`Z|Ad&TYFbx8FXL|Mc%%9V;l2upjzmU0b^E0CFM$0HYMm AM*si- literal 0 HcmV?d00001 diff --git a/v2/examples/customlayout/build/windows/info.json b/v2/examples/customlayout/build/windows/info.json new file mode 100644 index 00000000..c23c173c --- /dev/null +++ b/v2/examples/customlayout/build/windows/info.json @@ -0,0 +1,15 @@ +{ + "fixed": { + "file_version": "{{.Info.ProductVersion}}" + }, + "info": { + "0000": { + "ProductVersion": "{{.Info.ProductVersion}}", + "CompanyName": "{{.Info.CompanyName}}", + "FileDescription": "{{.Info.ProductName}}", + "LegalCopyright": "{{.Info.Copyright}}", + "ProductName": "{{.Info.ProductName}}", + "Comments": "{{.Info.Comments}}" + } + } +} \ No newline at end of file diff --git a/v2/examples/customlayout/build/windows/installer/project.nsi b/v2/examples/customlayout/build/windows/installer/project.nsi new file mode 100644 index 00000000..3b1588e0 --- /dev/null +++ b/v2/examples/customlayout/build/windows/installer/project.nsi @@ -0,0 +1,101 @@ +Unicode true + +#### +## Please note: Template replacements don't work in this file. They are provided with default defines like +## mentioned underneath. +## If the keyword is not defined, "wails_tools.nsh" will populate them with the values from ProjectInfo. +## If they are defined here, "wails_tools.nsh" will not touch them. This allows to use this project.nsi manually +## from outside of Wails for debugging and development of the installer. +## +## For development first make a wails nsis build to populate the "wails_tools.nsh": +## > wails build --target windows/amd64 --nsis +## Then you can call makensis on this file with specifying the path to your binary: +## For a AMD64 only installer: +## > makensis -DARG_WAILS_AMD64_BINARY=..\..\bin\app.exe +## For a ARM64 only installer: +## > makensis -DARG_WAILS_ARM64_BINARY=..\..\bin\app.exe +## For a installer with both architectures: +## > makensis -DARG_WAILS_AMD64_BINARY=..\..\bin\app-amd64.exe -DARG_WAILS_ARM64_BINARY=..\..\bin\app-arm64.exe +#### +## The following information is taken from the ProjectInfo file, but they can be overwritten here. +#### +## !define INFO_PROJECTNAME "MyProject" # Default "{{.Name}}" +## !define INFO_COMPANYNAME "MyCompany" # Default "{{.Info.CompanyName}}" +## !define INFO_PRODUCTNAME "MyProduct" # Default "{{.Info.ProductName}}" +## !define INFO_PRODUCTVERSION "1.0.0" # Default "{{.Info.ProductVersion}}" +## !define INFO_COPYRIGHT "Copyright" # Default "{{.Info.Copyright}}" +### +## !define PRODUCT_EXECUTABLE "Application.exe" # Default "${INFO_PROJECTNAME}.exe" +## !define UNINST_KEY_NAME "UninstKeyInRegistry" # Default "${INFO_COMPANYNAME}${INFO_PRODUCTNAME}" +#### +## !define REQUEST_EXECUTION_LEVEL "admin" # Default "admin" see also https://nsis.sourceforge.io/Docs/Chapter4.html +#### +## Include the wails tools +#### +!include "wails_tools.nsh" + +# The version information for this two must consist of 4 parts +VIProductVersion "${INFO_PRODUCTVERSION}.0" +VIFileVersion "${INFO_PRODUCTVERSION}.0" + +VIAddVersionKey "CompanyName" "${INFO_COMPANYNAME}" +VIAddVersionKey "FileDescription" "${INFO_PRODUCTNAME} Installer" +VIAddVersionKey "ProductVersion" "${INFO_PRODUCTVERSION}" +VIAddVersionKey "FileVersion" "${INFO_PRODUCTVERSION}" +VIAddVersionKey "LegalCopyright" "${INFO_COPYRIGHT}" +VIAddVersionKey "ProductName" "${INFO_PRODUCTNAME}" + +!include "MUI.nsh" + +!define MUI_ICON "..\icon.ico" +!define MUI_UNICON "..\icon.ico" +# !define MUI_WELCOMEFINISHPAGE_BITMAP "resources\leftimage.bmp" #Include this to add a bitmap on the left side of the Welcome Page. Must be a size of 164x314 +!define MUI_FINISHPAGE_NOAUTOCLOSE # Wait on the INSTFILES page so the user can take a look into the details of the installation steps +!define MUI_ABORTWARNING # This will warn the user if they exit from the installer. + +!insertmacro MUI_PAGE_WELCOME # Welcome to the installer page. +# !insertmacro MUI_PAGE_LICENSE "resources\eula.txt" # Adds a EULA page to the installer +!insertmacro MUI_PAGE_DIRECTORY # In which folder install page. +!insertmacro MUI_PAGE_INSTFILES # Installing page. +!insertmacro MUI_PAGE_FINISH # Finished installation page. + +!insertmacro MUI_UNPAGE_INSTFILES # Uinstalling page + +!insertmacro MUI_LANGUAGE "English" # Set the Language of the installer + +## The following two statements can be used to sign the installer and the uninstaller. The path to the binaries are provided in %1 +#!uninstfinalize 'signtool --file "%1"' +#!finalize 'signtool --file "%1"' + +Name "${INFO_PRODUCTNAME}" +OutFile "..\..\bin\${INFO_PROJECTNAME}-${ARCH}-installer.exe" # Name of the installer's file. +InstallDir "$PROGRAMFILES64\${INFO_COMPANYNAME}\${INFO_PRODUCTNAME}" # Default installing folder ($PROGRAMFILES is Program Files folder). +ShowInstDetails show # This will always show the installation details. + +Function .onInit + !insertmacro wails.checkArchitecture +FunctionEnd + +Section + !insertmacro wails.webview2runtime + + SetOutPath $INSTDIR + + !insertmacro wails.files + + CreateShortcut "$SMPROGRAMS\${INFO_PRODUCTNAME}.lnk" "$INSTDIR\${PRODUCT_EXECUTABLE}" + CreateShortCut "$DESKTOP\${INFO_PRODUCTNAME}.lnk" "$INSTDIR\${PRODUCT_EXECUTABLE}" + + !insertmacro wails.writeUninstaller +SectionEnd + +Section "uninstall" + RMDir /r "$AppData\${PRODUCT_EXECUTABLE}" # Remove the WebView2 DataPath + + RMDir /r $INSTDIR + + Delete "$SMPROGRAMS\${INFO_PRODUCTNAME}.lnk" + Delete "$DESKTOP\${INFO_PRODUCTNAME}.lnk" + + !insertmacro wails.deleteUninstaller +SectionEnd diff --git a/v2/examples/customlayout/build/windows/installer/wails_tools.nsh b/v2/examples/customlayout/build/windows/installer/wails_tools.nsh new file mode 100644 index 00000000..66dc209a --- /dev/null +++ b/v2/examples/customlayout/build/windows/installer/wails_tools.nsh @@ -0,0 +1,171 @@ +# DO NOT EDIT - Generated automatically by `wails build` + +!include "x64.nsh" +!include "WinVer.nsh" +!include "FileFunc.nsh" + +!ifndef INFO_PROJECTNAME + !define INFO_PROJECTNAME "{{.Name}}" +!endif +!ifndef INFO_COMPANYNAME + !define INFO_COMPANYNAME "{{.Info.CompanyName}}" +!endif +!ifndef INFO_PRODUCTNAME + !define INFO_PRODUCTNAME "{{.Info.ProductName}}" +!endif +!ifndef INFO_PRODUCTVERSION + !define INFO_PRODUCTVERSION "{{.Info.ProductVersion}}" +!endif +!ifndef INFO_COPYRIGHT + !define INFO_COPYRIGHT "{{.Info.Copyright}}" +!endif +!ifndef PRODUCT_EXECUTABLE + !define PRODUCT_EXECUTABLE "${INFO_PROJECTNAME}.exe" +!endif +!ifndef UNINST_KEY_NAME + !define UNINST_KEY_NAME "${INFO_COMPANYNAME}${INFO_PRODUCTNAME}" +!endif +!define UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${UNINST_KEY_NAME}" + +!ifndef REQUEST_EXECUTION_LEVEL + !define REQUEST_EXECUTION_LEVEL "admin" +!endif + +RequestExecutionLevel "${REQUEST_EXECUTION_LEVEL}" + +!ifdef ARG_WAILS_AMD64_BINARY + !define SUPPORTS_AMD64 +!endif + +!ifdef ARG_WAILS_ARM64_BINARY + !define SUPPORTS_ARM64 +!endif + +!ifdef SUPPORTS_AMD64 + !ifdef SUPPORTS_ARM64 + !define ARCH "amd64_arm64" + !else + !define ARCH "amd64" + !endif +!else + !ifdef SUPPORTS_ARM64 + !define ARCH "arm64" + !else + !error "Wails: Undefined ARCH, please provide at least one of ARG_WAILS_AMD64_BINARY or ARG_WAILS_ARM64_BINARY" + !endif +!endif + +!macro wails.checkArchitecture + !ifndef WAILS_WIN10_REQUIRED + !define WAILS_WIN10_REQUIRED "This product is only supported on Windows 10 (Server 2016) and later." + !endif + + !ifndef WAILS_ARCHITECTURE_NOT_SUPPORTED + !define WAILS_ARCHITECTURE_NOT_SUPPORTED "This product can't be installed on the current Windows architecture. Supports: ${ARCH}" + !endif + + ${If} ${AtLeastWin10} + !ifdef SUPPORTS_AMD64 + ${if} ${IsNativeAMD64} + Goto ok + ${EndIf} + !endif + + !ifdef SUPPORTS_ARM64 + ${if} ${IsNativeARM64} + Goto ok + ${EndIf} + !endif + + IfSilent silentArch notSilentArch + silentArch: + SetErrorLevel 65 + Abort + notSilentArch: + MessageBox MB_OK "${WAILS_ARCHITECTURE_NOT_SUPPORTED}" + Quit + ${else} + IfSilent silentWin notSilentWin + silentWin: + SetErrorLevel 64 + Abort + notSilentWin: + MessageBox MB_OK "${WAILS_WIN10_REQUIRED}" + Quit + ${EndIf} + + ok: +!macroend + +!macro wails.files + !ifdef SUPPORTS_AMD64 + ${if} ${IsNativeAMD64} + File "/oname=${PRODUCT_EXECUTABLE}" "${ARG_WAILS_AMD64_BINARY}" + ${EndIf} + !endif + + !ifdef SUPPORTS_ARM64 + ${if} ${IsNativeARM64} + File "/oname=${PRODUCT_EXECUTABLE}" "${ARG_WAILS_ARM64_BINARY}" + ${EndIf} + !endif +!macroend + +!macro wails.writeUninstaller + WriteUninstaller "$INSTDIR\uninstall.exe" + + SetRegView 64 + WriteRegStr HKLM "${UNINST_KEY}" "Publisher" "${INFO_COMPANYNAME}" + WriteRegStr HKLM "${UNINST_KEY}" "DisplayName" "${INFO_PRODUCTNAME}" + WriteRegStr HKLM "${UNINST_KEY}" "DisplayVersion" "${INFO_PRODUCTVERSION}" + WriteRegStr HKLM "${UNINST_KEY}" "DisplayIcon" "$INSTDIR\${PRODUCT_EXECUTABLE}" + WriteRegStr HKLM "${UNINST_KEY}" "UninstallString" "$\"$INSTDIR\uninstall.exe$\"" + WriteRegStr HKLM "${UNINST_KEY}" "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\" /S" + + ${GetSize} "$INSTDIR" "/S=0K" $0 $1 $2 + IntFmt $0 "0x%08X" $0 + WriteRegDWORD HKLM "${UNINST_KEY}" "EstimatedSize" "$0" +!macroend + +!macro wails.deleteUninstaller + Delete "$INSTDIR\uninstall.exe" + + SetRegView 64 + DeleteRegKey HKLM "${UNINST_KEY}" +!macroend + +# Install webview2 by launching the bootstrapper +# See https://docs.microsoft.com/en-us/microsoft-edge/webview2/concepts/distribution#online-only-deployment +!macro wails.webview2runtime + !ifndef WAILS_INSTALL_WEBVIEW_DETAILPRINT + !define WAILS_INSTALL_WEBVIEW_DETAILPRINT "Installing: WebView2 Runtime" + !endif + + SetRegView 64 + # If the admin key exists and is not empty then webview2 is already installed + ReadRegStr $0 HKLM "SOFTWARE\WOW6432Node\Microsoft\EdgeUpdate\Clients\{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}" "pv" + ${If} $0 != "" + Goto ok + ${EndIf} + + ${If} ${REQUEST_EXECUTION_LEVEL} == "user" + # If the installer is run in user level, check the user specific key exists and is not empty then webview2 is already installed + ReadRegStr $0 HKCU "Software\Microsoft\EdgeUpdate\Clients{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}" "pv" + ${If} $0 != "" + Goto ok + ${EndIf} + ${EndIf} + + SetDetailsPrint both + DetailPrint "${WAILS_INSTALL_WEBVIEW_DETAILPRINT}" + SetDetailsPrint listonly + + InitPluginsDir + CreateDirectory "$pluginsdir\webview2bootstrapper" + SetOutPath "$pluginsdir\webview2bootstrapper" + File "tmp\MicrosoftEdgeWebview2Setup.exe" + ExecWait '"$pluginsdir\webview2bootstrapper\MicrosoftEdgeWebview2Setup.exe" /silent /install' + + SetDetailsPrint both + ok: +!macroend \ No newline at end of file diff --git a/v2/examples/customlayout/build/windows/wails.exe.manifest b/v2/examples/customlayout/build/windows/wails.exe.manifest new file mode 100644 index 00000000..17e1a238 --- /dev/null +++ b/v2/examples/customlayout/build/windows/wails.exe.manifest @@ -0,0 +1,15 @@ + + + + + + + + + + + true/pm + permonitorv2,permonitor + + + \ No newline at end of file diff --git a/v2/examples/customlayout/cmd/customlayout/app.go b/v2/examples/customlayout/cmd/customlayout/app.go new file mode 100644 index 00000000..af53038a --- /dev/null +++ b/v2/examples/customlayout/cmd/customlayout/app.go @@ -0,0 +1,27 @@ +package main + +import ( + "context" + "fmt" +) + +// App struct +type App struct { + ctx context.Context +} + +// NewApp creates a new App application struct +func NewApp() *App { + return &App{} +} + +// startup is called when the app starts. The context is saved +// so we can call the runtime methods +func (a *App) startup(ctx context.Context) { + a.ctx = ctx +} + +// Greet returns a greeting for the given name +func (a *App) Greet(name string) string { + return fmt.Sprintf("Hello %s, It's show time!", name) +} diff --git a/v2/examples/customlayout/cmd/customlayout/main.go b/v2/examples/customlayout/cmd/customlayout/main.go new file mode 100644 index 00000000..dcb59a80 --- /dev/null +++ b/v2/examples/customlayout/cmd/customlayout/main.go @@ -0,0 +1,29 @@ +package main + +import ( + "changeme/myfrontend" + "github.com/wailsapp/wails/v2" + "github.com/wailsapp/wails/v2/pkg/options" +) + +func main() { + // Create an instance of the app structure + app := NewApp() + + // Create application with options + err := wails.Run(&options.App{ + Title: "customlayout", + Width: 1024, + Height: 768, + Assets: myfrontend.Assets, + BackgroundColour: &options.RGBA{R: 27, G: 38, B: 54, A: 1}, + OnStartup: app.startup, + Bind: []interface{}{ + app, + }, + }) + + if err != nil { + println("Error:", err.Error()) + } +} diff --git a/v2/examples/customlayout/cmd/customlayout/wails.json b/v2/examples/customlayout/cmd/customlayout/wails.json new file mode 100644 index 00000000..e37c2ec7 --- /dev/null +++ b/v2/examples/customlayout/cmd/customlayout/wails.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://wails.io/schemas/config.v2.json", + "name": "customlayout", + "outputfilename": "customlayout", + "build:dir": "../../build", + "frontend:dir": "../../myfrontend", + "frontend:install": "npm install", + "frontend:build": "npm run build", + "frontend:dev:watcher": "npm run dev", + "frontend:dev:serverUrl": "auto", + "author": { + "name": "Lea Anthony", + "email": "lea.anthony@gmail.com" + } +} diff --git a/v2/examples/customlayout/go.mod b/v2/examples/customlayout/go.mod new file mode 100644 index 00000000..97defaeb --- /dev/null +++ b/v2/examples/customlayout/go.mod @@ -0,0 +1,34 @@ +module changeme + +go 1.18 + +require github.com/wailsapp/wails/v2 v2.1.0 + +require ( + github.com/bep/debounce v1.2.1 // indirect + github.com/go-ole/go-ole v1.2.6 // indirect + github.com/google/uuid v1.1.2 // indirect + github.com/imdario/mergo v0.3.12 // indirect + github.com/jchv/go-winloader v0.0.0-20210711035445-715c2860da7e // indirect + github.com/labstack/echo/v4 v4.9.0 // indirect + github.com/labstack/gommon v0.3.1 // indirect + github.com/leaanthony/go-ansi-parser v1.0.1 // indirect + github.com/leaanthony/gosod v1.0.3 // indirect + github.com/leaanthony/slicer v1.5.0 // indirect + github.com/mattn/go-colorable v0.1.11 // indirect + github.com/mattn/go-isatty v0.0.14 // indirect + github.com/pkg/browser v0.0.0-20210706143420-7d21f8c997e2 // indirect + github.com/pkg/errors v0.9.1 // indirect + github.com/samber/lo v1.27.1 // indirect + github.com/tkrajina/go-reflector v0.5.5 // indirect + github.com/valyala/bytebufferpool v1.0.0 // indirect + github.com/valyala/fasttemplate v1.2.1 // indirect + github.com/wailsapp/mimetype v1.4.1 // indirect + golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect + golang.org/x/exp v0.0.0-20220303212507-bbda1eaf7a17 // indirect + golang.org/x/net v0.0.0-20220722155237-a158d28d115b // indirect + golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f // indirect + golang.org/x/text v0.3.7 // indirect +) + +replace github.com/wailsapp/wails/v2 v2.1.0 => ../.. diff --git a/v2/examples/customlayout/go.sum b/v2/examples/customlayout/go.sum new file mode 100644 index 00000000..13bb6bbe --- /dev/null +++ b/v2/examples/customlayout/go.sum @@ -0,0 +1,79 @@ +github.com/bep/debounce v1.2.1 h1:v67fRdBA9UQu2NhLFXrSg0Brw7CexQekrBwDMM8bzeY= +github.com/bep/debounce v1.2.1/go.mod h1:H8yggRPQKLUhUoqrJC1bO2xNya7vanpDl7xR3ISbCJ0= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY= +github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0= +github.com/google/uuid v1.1.2 h1:EVhdT+1Kseyi1/pUmXKaFxYsDNy9RQYkMWRH68J/W7Y= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU= +github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/jchv/go-winloader v0.0.0-20210711035445-715c2860da7e h1:Q3+PugElBCf4PFpxhErSzU3/PY5sFL5Z6rfv4AbGAck= +github.com/jchv/go-winloader v0.0.0-20210711035445-715c2860da7e/go.mod h1:alcuEEnZsY1WQsagKhZDsoPCRoOijYqhZvPwLG0kzVs= +github.com/labstack/echo/v4 v4.9.0 h1:wPOF1CE6gvt/kmbMR4dGzWvHMPT+sAEUJOwOTtvITVY= +github.com/labstack/echo/v4 v4.9.0/go.mod h1:xkCDAdFCIf8jsFQ5NnbK7oqaF/yU1A1X20Ltm0OvSks= +github.com/labstack/gommon v0.3.1 h1:OomWaJXm7xR6L1HmEtGyQf26TEn7V6X88mktX9kee9o= +github.com/labstack/gommon v0.3.1/go.mod h1:uW6kP17uPlLJsD3ijUYn3/M5bAxtlZhMI6m3MFxTMTM= +github.com/leaanthony/debme v1.2.1 h1:9Tgwf+kjcrbMQ4WnPcEIUcQuIZYqdWftzZkBr+i/oOc= +github.com/leaanthony/debme v1.2.1/go.mod h1:3V+sCm5tYAgQymvSOfYQ5Xx2JCr+OXiD9Jkw3otUjiA= +github.com/leaanthony/go-ansi-parser v1.0.1 h1:97v6c5kYppVsbScf4r/VZdXyQ21KQIfeQOk2DgKxGG4= +github.com/leaanthony/go-ansi-parser v1.0.1/go.mod h1:7arTzgVI47srICYhvgUV4CGd063sGEeoSlych5yeSPM= +github.com/leaanthony/gosod v1.0.3 h1:Fnt+/B6NjQOVuCWOKYRREZnjGyvg+mEhd1nkkA04aTQ= +github.com/leaanthony/gosod v1.0.3/go.mod h1:BJ2J+oHsQIyIQpnLPjnqFGTMnOZXDbvWtRCSG7jGxs4= +github.com/leaanthony/slicer v1.5.0 h1:aHYTN8xbCCLxJmkNKiLB6tgcMARl4eWmH9/F+S/0HtY= +github.com/leaanthony/slicer v1.5.0/go.mod h1:FwrApmf8gOrpzEWM2J/9Lh79tyq8KTX5AzRtwV7m4AY= +github.com/matryer/is v1.4.0 h1:sosSmIWwkYITGrxZ25ULNDeKiMNzFSr4V/eqBQP0PeE= +github.com/matryer/is v1.4.0/go.mod h1:8I/i5uYgLzgsgEloJE1U6xx5HkBQpAZvepWuujKwMRU= +github.com/mattn/go-colorable v0.1.11 h1:nQ+aFkoE2TMGc0b68U2OKSexC+eq46+XwZzWXHRmPYs= +github.com/mattn/go-colorable v0.1.11/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= +github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= +github.com/pkg/browser v0.0.0-20210706143420-7d21f8c997e2 h1:acNfDZXmm28D2Yg/c3ALnZStzNaZMSagpbr96vY6Zjc= +github.com/pkg/browser v0.0.0-20210706143420-7d21f8c997e2/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/samber/lo v1.27.1 h1:sTXwkRiIFIQG+G0HeAvOEnGjqWeWtI9cg5/n51KrxPg= +github.com/samber/lo v1.27.1/go.mod h1:it33p9UtPMS7z72fP4gw/EIfQB2eI8ke7GR2wc6+Rhg= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1 h1:5TQK59W5E3v0r2duFAb7P95B6hEeOyEnHRa8MjYSMTY= +github.com/thoas/go-funk v0.9.1 h1:O549iLZqPpTUQ10ykd26sZhzD+rmR5pWhuElrhbC20M= +github.com/tkrajina/go-reflector v0.5.5 h1:gwoQFNye30Kk7NrExj8zm3zFtrGPqOkzFMLuQZg1DtQ= +github.com/tkrajina/go-reflector v0.5.5/go.mod h1:ECbqLgccecY5kPmPmXg1MrHW585yMcDkVl6IvJe64T4= +github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= +github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= +github.com/valyala/fasttemplate v1.2.1 h1:TVEnxayobAdVkhQfrfes2IzOB6o+z4roRkPF52WA1u4= +github.com/valyala/fasttemplate v1.2.1/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ= +github.com/wailsapp/mimetype v1.4.1 h1:pQN9ycO7uo4vsUUuPeHEYoUkLVkaRntMnHJxVwYhwHs= +github.com/wailsapp/mimetype v1.4.1/go.mod h1:9aV5k31bBOv5z6u+QP8TltzvNGJPmNJD4XlAL3U+j3o= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 h1:7I4JAnoQBe7ZtJcBaYHi5UtiO8tQHbUSXxL+pnGRANg= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/exp v0.0.0-20220303212507-bbda1eaf7a17 h1:3MTrJm4PyNL9NBqvYDSj3DHl46qQakyfqfWo4jgfaEM= +golang.org/x/exp v0.0.0-20220303212507-bbda1eaf7a17/go.mod h1:lgLbSvA5ygNOMpwM/9anMpWVlVJ7Z+cHWq/eFuinpGE= +golang.org/x/net v0.0.0-20210505024714-0287a6fb4125/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b h1:PxfKdU9lEEDYjdIzOtC4qFWgkU2rGHdKlKowJSMN9h0= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200810151505-1b9f1253b3ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210616045830-e2b7044e8c71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211103235746-7861aae1554b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f h1:v4INt8xihDGvnrfjMDVXGxw9wrfxYyCjk0KbXjhR55s= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= diff --git a/v2/examples/customlayout/myfrontend/assets.go b/v2/examples/customlayout/myfrontend/assets.go new file mode 100644 index 00000000..a6dec2f8 --- /dev/null +++ b/v2/examples/customlayout/myfrontend/assets.go @@ -0,0 +1,6 @@ +package myfrontend + +import "embed" + +//go:embed all:dist +var Assets embed.FS diff --git a/v2/examples/customlayout/myfrontend/index.html b/v2/examples/customlayout/myfrontend/index.html new file mode 100644 index 00000000..1ceda739 --- /dev/null +++ b/v2/examples/customlayout/myfrontend/index.html @@ -0,0 +1,12 @@ + + + + + + customlayout + + +
+ + + diff --git a/v2/examples/customlayout/myfrontend/package.json b/v2/examples/customlayout/myfrontend/package.json new file mode 100644 index 00000000..4ac88179 --- /dev/null +++ b/v2/examples/customlayout/myfrontend/package.json @@ -0,0 +1,13 @@ +{ + "name": "frontend", + "private": true, + "version": "0.0.0", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview" + }, + "devDependencies": { + "vite": "^2.9.9" + } +} \ No newline at end of file diff --git a/v2/examples/customlayout/myfrontend/src/app.css b/v2/examples/customlayout/myfrontend/src/app.css new file mode 100644 index 00000000..59d06f69 --- /dev/null +++ b/v2/examples/customlayout/myfrontend/src/app.css @@ -0,0 +1,54 @@ +#logo { + display: block; + width: 50%; + height: 50%; + margin: auto; + padding: 10% 0 0; + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + background-origin: content-box; +} + +.result { + height: 20px; + line-height: 20px; + margin: 1.5rem auto; +} + +.input-box .btn { + width: 60px; + height: 30px; + line-height: 30px; + border-radius: 3px; + border: none; + margin: 0 0 0 20px; + padding: 0 8px; + cursor: pointer; +} + +.input-box .btn:hover { + background-image: linear-gradient(to top, #cfd9df 0%, #e2ebf0 100%); + color: #333333; +} + +.input-box .input { + border: none; + border-radius: 3px; + outline: none; + height: 30px; + line-height: 30px; + padding: 0 10px; + background-color: rgba(240, 240, 240, 1); + -webkit-font-smoothing: antialiased; +} + +.input-box .input:hover { + border: none; + background-color: rgba(255, 255, 255, 1); +} + +.input-box .input:focus { + border: none; + background-color: rgba(255, 255, 255, 1); +} \ No newline at end of file diff --git a/v2/examples/customlayout/myfrontend/src/assets/fonts/OFL.txt b/v2/examples/customlayout/myfrontend/src/assets/fonts/OFL.txt new file mode 100644 index 00000000..9cac04ce --- /dev/null +++ b/v2/examples/customlayout/myfrontend/src/assets/fonts/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2016 The Nunito Project Authors (contact@sansoxygen.com), + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/v2/examples/customlayout/myfrontend/src/assets/fonts/nunito-v16-latin-regular.woff2 b/v2/examples/customlayout/myfrontend/src/assets/fonts/nunito-v16-latin-regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..2f9cc5964455b8f5ca989db989250dbebb1a5f66 GIT binary patch literal 18972 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 K-ft&li2?wY|BVO$ literal 0 HcmV?d00001 diff --git a/v2/examples/customlayout/myfrontend/src/assets/images/logo-universal.png b/v2/examples/customlayout/myfrontend/src/assets/images/logo-universal.png new file mode 100644 index 0000000000000000000000000000000000000000..d63303bfad1aadc03fcdfb3a4dcf32cf27e70fc5 GIT binary patch literal 139695 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�hF=i?gD`yAio(;jSd5n9Z& z|Kt8webFuluJ9}~GB|h0cSq@>(^_E*!eYeSeOMcH55GBKdDN)vb(6sFTe;oNEDS#3 z4!j;kPkI^ue||4%T&ui6w)Xnnd-s@DUbx5b^tmvr=HEM4q&!w^mlc_`xAaiYs**E1 z-iF3LT6bopV^&duh^DZ?^9s}B1y5#wdmd>o&o%#G*pme{DvvB2rglER@Y3_f+WnP% zNqc>!Tcq#MSuta03d;?#&p-Y}^UG8!a&QEOPG7qI+*Ld8B{sY2t{oMeo44+@#-{1E z|D_t{t)Dbgf$zwaQ|-H-{abA+sOZGO9xW>{p)f~!r9+wmXXDG~Y%A89Jyw4-D}0*n zr)O2&qAN`w$e&wZx2WqN|1V*eC&z#9|MTSS_7x2E(g$p>87|_!`FWq{;mD3v>k~8< zF1J%P)H>v%6}WHTqGRh?FBTPKs5Y&AvFUYU?4p41f+OF{WB=vPpPUr+epgS-EQJG6 zHhPavGSo>OnD^JZye{Maxw-aN+LnOtKdh+mX!yUZ>%ab+Hp3i+WlgK*NHbV`<6o?` zdFyPh`|CAA?QJ&1uv+W+1?I+zt1n{yvEuZ!iGSAY%QHP5z^}8p`06g7`*~gyzjUm6 zZSYNrF?nSj@05_wr`js=X1?0O!uq*Mb?HeK6W6V*{#qPKk6m=mUT>Ko_}P13!i{Y{ z5$xRS&2%STY zy86>pKy}UZSoL|X%O@(<`F&?u%o5)4^K&$_jABR7-^ms>eDRhgZ)V?h`m&xS;dcCE z50(O^!;|{fU9YhSKkK-T#Yr!6_Y8qd&R5?8%NZVWPEx(C%bm@{m#w2J)>$n<83wuhV^^@PP2CT z@Ll(2nA)uC?#DSK(^vWI_ips@c3u6wQ)1Et-G^Bo#+=)xxmvswzi&S+yDyLp3JmFzh?h(0>6wNHOC{>_`$-dlAP2;3S_Ey2UZz|NA zwfPpXmcC7SZa;tXzO9O<)6%cc*vhmai^WWSQC7_yaXVq1yfs&*KCdo)Z((NpP-OmL zp^%?b8Mb`9|61sNPMzU%&Un@(p+5`0-ElDxjb;61S(;Fre12|wU)+9$C|&f&Z&QXH#>cQXv6$X z+544mw+NUhF$=U+%B@P`5w!aDH)j1l?iDgpH~tnJ=Ut~THLkPeYs4$5B|;q=g{}og zHzpk4&y%!R`DJ=6Yt)vABjF5tI1j8}b2jb!mWLH3E~^8vpO}dqGhik{Gzacxy7%QIEs$F@;Wj!M)+(5QC zDe9wE%k9)n&zI@lHd7YgDy8Nk6fC45WU}hsX&de5W{*YGr_Sg8%seMx@5^s~2La$!`sy{2ArmG+-G%Res?@7#KAPLO@;x~-ZKn!BzoS7?iJIwqOIyUo5^ zlt;yn@q_Y{=l@+A^$m|r4L!zlwIpS3TJpM8oRNas^({^HoqzwmJH7XCn{@w?T$M?T zTkX93{%L3~KIJi8OxI_RzyW=R8~f{@pEG}Ze`j&F^d#_ZiAM_+8S5Nf{;l1$DRckH zp4l1SocdE=tP_d1tdQU5>{-9%*W=WNM2mU9f?QXp#HXfBiEh|v_o=H#KwIxAtI%?z zQ>`3-HCg-a{aU|YUHQXwt;Mpk3?a4K?3%Qrt1PD;y{7tL`qWe2rGIWc+PL3n_Rlpg ztbx;Aj`yx^yLn^c#pO@8H`W9$(oAp^5Pp^9)F5f_PEBpSuJZcosZ*J`Tc!!MZWa}B zN{dWlE|Z&Jt<`cSnPK~aYcnS>NW{h$wXsNi6lR=sHtM{#@Vnoi8V@fom0HD|V_#8} z*K_4HPqa#pop9Wwc`<%Vd+h({-{I!=a!)!pxlu4jks&o>t^9(7U%Ek=%ty|PZmtts z6e^Ib7hH6;W}ETbgcTeQ7+hGlM#wNu5)-h#=ypp^gp-Z$-{D_>Z&}={ul%q3{k%5A zg~;FMJeC|Qzc3})cg>lTIVF1!tP{W6`OZd2TrBzZ$+WdscNV@E@y=Ua9^nwNdXv}= zyWjR-?`%7-v=GJeie||1}i(=)IMS-QdQ8|x(EWUjH*Zze+_-k+G zxQjg4%xe<7Ds8sJ{)^k=u6zAG)2PX8!soO1mbJLp>jP6iZEig`?fCIcp`}@O?ie~w zV)nkFQo6)wQCm}KT3hF7QJ?SAtB&Txugm%UbvMI<8)^2x*XuWao3O-~p;^#p(w!GC zEDWcu)so+N!CuZgQIa9_Nl*Ez*$&6bKc#wkeN{a8DEp*g+t0LhfhU{==c;PGZB69U zEIq@p>~`9nnvMrotuh1*q*uqT`YrhGZ_?U}*8H-6KQ(^s6~FoZlnmRWJtsvMlmj$g{+>DggLmjTdDBpl z6;X^fnbr#(6?kK|L|CpnaOdEw*zCnR2?_F=0Zq(q=J};d8(%OJqOKwb>;miFpHhxaZ{Hb9-ii&6bG3K4BX9Nk*L4&d867AC(mEGr3@yo zj-AXqbazJgd-t`0o;&n8H-tFr9PCPLoyRtpVTWP#inbjApY6@en)X;7Vyt75$ogsj zk7378vnfv1`->YwXJ`0Etyr5k@ynb}UklOfkh%Sr9dsh4?L0KjPs{o-Vl3 zvX5@*9GHq{q%0`rCS#lT-Q&F?M>Pq%G!82 z#^LLd(5wEA6NKFC7q4f~cu=;Bojm?fs zcM4zcXaDfI@OEna9o3u*I-D0Y-{-n)UAVIL6q{(#+S={QH?i<_tgM=CH~FI2W=HlN zcZF^rSy|PZxjVD{<`u3_bua3KZ{&v^P07i&&(*(NB0P`h&1u2U=iS+|}^);nSm zH!{Lu-!l_%%@v(Wv0|54-7NQQe2JN*vS z-`ijOJTuor?pDV6%x36~p6ki~ORC)mLT=gz%-(zSQN>BGdQZ2=gVk>~|0_|H z-p}EaEWb--!Le0E$9<=s-EsEx567!Jt2cLu1 z^Lvxc{@vUoQNkm_7m~^3ELj-j-{Z5m;k#G#)3Vg#%Tgcg>9Oyde!k4psdz%6P=I{p zLf%h>+UMq*-flX)igVckwarmaWqzt_o5S=DxG*Xl32(laW`?*2*9lVm7O ziTIRrm-FaL{r!pZzESaY$F9}$JP>c~nO-~3JC*-s^`q_rS;^(*!tb`Kp3ru!cjNK= z%eQU5=CZ3z+jJI)eP5HK-+453iEJ!)gGs@~M~Hsm-H1%IDR6 zs}Fgx|J;J8I~n}a>8?siN6juJ)wCVeo}SH@a^slqqjm9ngW|qL-qzpW^B_TCEnBcv z&aWI(m()Ph#7uF=%NsVP|J}#3M2B@@;^A#Q3=v-|a`*(S7VlcFd2q6cwtKgS)*-g{ z?C;DkDoZL)687Z@aM_@uGHD&40T)T|L1VpzWcUorbL|1 z-t7wWB0v4y|2z4}Mva3`0lbmNe*OPl|5=nvNJr*x~bcy9(^k$eN9YP zE}=#QbXv>WvuSH@KXL53#&luP(Z?EfpT0%^>vj0InN>+_17qFgBW8DFUrgL4&9$CQ zVaxmQ-b3X&D^qQ6WtE+(<$OIO_PS?&HJg^zr^b(yu1s-ZD^&3baZ_oENvi6Poi=~r zx+9_o>z1p1*Z#L#Dwk#M2CZn-HgL2gQ9Y|O-#4<~Wp+^ve{s;M#B9Y}wks3z{>|)DJ*5

ta?lB)XKlkSS+P|?@a*`Rmza&?EydL*YBu+4ie*gDizqvcvTGGIPbn=hwZRl=^--V@++w?|}6)-bZiT zq3uxexI;H!pX{1>zt22X-j>|^U_QhDhp{Gn1tpA<_YbGl%$Ut-3YsY@0Mf<;%=&!u{bd~5*?%9X$9Xj*P zZ}CE3B0VcujSjc-gUcQu5Ry-RoUn>v$1xY-psGZCzbeBOqrmu zZBG<$ambRq(*lC*dfgQZ_di@Ud7H4e&5e6GOC$dT$}7leT;8%Ghkf#@X$SiRw(6>L zEckx?`O6NkC&52|J+Tk{-n)8c#+g~$;ufpcZu6FCzcnxH@n&;RhCe@Y&Fe)E++Tgo z>gvQ5lXlp(7IR${Z{=*#+AsX=bJ^Zax)I5&PQ2G&?)H8Y6JkDpb9t@Vv%gj{rnQgi z7P)q_Tb^V8AjS|6stxwv-Cz8?_|^oQ4;kmPy2bi0gU+b@AI|VUY1Nq+kCmnIyH5Vv zuPb=qNY|&c?>+SbmhGFIyY0u;6AP-&Iyq@{sRB@FrCvNMQZ5ErN${^eEsN6JC(PjOj25yIIQ7n(%$f=u41g=l~*zWgr zp1!=rr(Ee(%M}!->ICSdtPSAuRXzJH{dKp%=^d{s{pWc{%gG;a>6J~XvXy9@8E}_B z^4FYes{dK{IH_0X9eZw}`TM+!ddvC!iThgHohF&~-u#eyHKu97a)FMcE4O!W=vBNd zz5Z_YEcy5L#kbdMe<;^&D8E_c^QY&9(1xFZXO0x8{(N?eyYd~|+Qx!jp|u>n!o6E3 zpD|&b5!ble-DncS-ahC1LKoirkFq&a$Z{Z`x#BM9a2n~p$=%>V!pA0Y)xUNB2R*M1 zeca@*No3ugu-7_GVYlCFB!s@VQ9f~U&7osKS%#4&g|nCF9=z0>`=B}?X40E5o#WfC zB}zKH^RCGC-1YYSTW_W8f@j-3jxOPNURF~1Z2HPA(-k_FUNk*ecW>pk`7u3NKch08 zIxg3G+)*?6Ge>F5MYXm2`R_ie57=EOYaDUSPVmujkF#5komsbfmx0zJp`80OmZr?f z-}WXZH?)KCzt`FQuR3pQUg{}wt1)=(9Q`T(V7=!NE$bhv7+NadZmPM|-yg&-kS`d) zD7^ReiH*PgB|etaZfmUfTi(JxaY9ba z)cQZH&yP*AQCw*IbgQ;b_5YX#{XSjRN7w4M&*N54dbIhOcJYa?H%w2ib>8*kZ^Byc z#}kw`_B!0H3A%F5W~1-o;Pv(oj@9QZR5+iWeKzmohU1zH{}>^&9N@9Rdg)1%Z(QCA zn#lbq``+g7o6{^mX6}%Tp7!ANW(HZ|wNCp3Cr)kIVbof-BIu#n_xnflPUS^-F$mAS zsZwNnFkOd(39Jsxn;K?I|BaaMq2}zl@YKG#2UqXJ`+;pWrv6ci*25IAIF^#n>DpB1_XC~jPuSq^1-Y>KJgkADqW2w`J zkMkt2wXt7g*v&q{wq5d}a*DzYnGMgMa#$y9%32V2dQZiwdb<|;;*+0mPUbxwV;>>f zr%pYGKQ>Q~D}U=f z-S#_ZeR#R%hnY$hP09>Si|W>dZDeZw`+fS4KBLb`+$*naIzLPIx_+DNtLsg=Ee)HJ zADq)%>8E|@x~m)0*ZusTa<*iAfRPHA?re7@oL>@6FO_TSPJHvMuS>6Gk2CXd~cr%r9k?cB4d zjK#x~^@_uSH4GLL7$Vc=n&#XHQxJJHN8?Cc;USL3TTfhBOFY)j$@?GO!?8f%!Vw0^ z(~Gii+z6Are8kZ)jJ4*`!4n)Qi+;x6{l2a+r(=bR!Cc+BzkI*zoZ7_nvh%Ey>M?QS z8$WmEmE85+ey6@-x5~{=evP`5q8+{FFbjVx{4%dqZpl1}#h<4&{MTII?0rSm+I(S4 z!j}G?VzX^)TtaKSKc%X)hStk}QDn-rt~}pd>>hJlK2DKd9-F#63hI~}7jwH^ zYuc$+h0Ldt^##wo*YE$fEw%W6v;M7r?-~AnSG{qE_w^LTg)L_U4HfQAfATv_f%8fC z^@0!KMw8MP|D8XfJpW4Ei~67wb7ZtQI!-(7d1qv^e&1e(T{e{$79Bk-u${3&xgkD& z_Stv&hZ%SM&%U_m=wlmjyU4P^JW}=R$xRWRkLryY>P@FKyp?u4@X_y!Pw@dk)=y!9 zYTIV(U5)w~-zgNlKk!w^YBBchn#QwzZy&mlUnk=zU}Vs7Ky}U*<@gz^_Aqz<;p6ps zpJtpZdT?f!?Q8b3Bb`5bu0^!X*Y3Vuyza$O;y##&l-1@>xPQmKhGJRHD6G1mW{IBVV|fJ4MWcRdJ2=$EoXYf zv;A{-QfB{ex^Tt0gNIf<5FN_EU)dL!6Ly!g^xsp__=*1mMZ+U59)1y_d}#f_ea5CX)0qwP z;$#YCbsvOECu`qr3JBTvEQ&#X{#U(ihBHpSpHp#1{#e37e8P6yZoKaVqQ=1nHY|bwr;=w={&=pn`v2*pKO^no%@oz`%T-~yjg5z+XR<{ zva#&2j9ztQUc*i%k4*>LStqvb+Tg_|I%6$I7sDLEyDVFNZDy}}wS_rJ?d~oA%0$bx zW(#FCxwk!VJo(6f>bYe|74J-^e;!#C4>TrCZ`^z*jfF9c{ea!&;Fcy`gg+Br+LA>Xs(7ps%ns_T&kSC!Iglo)e1-CzBJ;eq@9lFMx!f2J_8y9@D5UEQsm zaM;>|`Np<9*@+^3vxGzyGx997&-Z`7W-p$_vAxP~Rig2m9k+|Mv^jok%lN3#xt#e& zB!l_;`#V2>2Tg%rGE=GP%m?R@d!@f_=8GM)?`lZa5f5GdKfWhxi*B))vPekhzL!N8 z&ad)Y%%Ko4-Q>E$NoKxnUw9vcpHOc<0bG$o=1Hg!CG z8=O$Fs%P#_Gmn7kcWO}#kM5gF8hh}{lrk|L>op2K*U!f@Gu5ituj4^|))}3HDW~@= zzSd&3p-{+*xsWeoe(vKVho9`>`ur_rE5nVK)fWwTUpv*>f|kJkd^Pd0_{PekUiUUe zgwL6Gprx&2uO4?;Tcy`E4%H*=A-3;oT2{xEFg=KzUte19)Mh;|e&Or>HCqa`6La=< zvp019R!unKa&MnWpJidMua25v+G7};rQs!;IaHiyI!-hnfHQ3 zAy zWgO=gjNlPpbk%LYnjnuz^pvyHQuth%Qnj-4wbi*!uJRL9W3@Yc-Sy)BI_0(7Oy-{! z=~~aUE-x?j_VyXdtPl5vD6G9!pRkJ~((QaxbU3HN#?jc{t$nrScviHl)dq1%)S@zKh5%Q((|ea?T-J7RbVpM|;O->aFc?^xhJFddq}TmnSP$?Grul)L}Do#e~JZ&z;4i8EZa% ztoqoyF8kslSJC%Ye{%#6>aTwE{`U0RE%n_`-x@||8z1)($uBDOVp;TN*}e(epG@Hp z3uiv>`cq`<{A~j2jhbg!W?61NpmqAnqOeDCY8)p{{d@b&N;!5}iD;IgN8Id*nt7YG z8qRFK-TWo+$N5*@U$%8lK47}@|ICg=H5auFlJ91%xYQCb@qx2l-F&u-CZC-6MENdy zI!wxLX>`2iZ`aMFS2Say;hSyk&!2@c>}I*K^nf12?)aLw^LQC5p1(|=AIMVA^?>z_ zb%buGXz}J;g9)8n^M8C+`91$^(o6xiGcocmpPtLDJAYf4adn57-&}KH>rk#kdz0ON zojHA_N+Gm5vx<@s?M0m;Hp^jH!t(cl-Bs*<0v3#$7Zr+$_7f_*B#1&^h7~9vf3m zYHSK~{+4=GZ6eR56rH4N@oWptvsZ7sWg(jUefg@ZN2XXVEOcqq&k@|YsQDe!hS!g> zzt@#!_1xQA_U$x7jnDzji5^RqK0g?iyY!l9Qs(woZSEYW1(!;<>Li`1oAC8__tlUI zcgpmOS0ya{-}9y?CEM(J(V+#~eso_~Su!DY)gAlni(ZWTWw{gINj}&z@yc7BIWi>* z-&SbN+x>ahUiR=>^M5BJZ`ZRNU|-ykyyf=l_4l_N%gj41ZlCYj?_t1~%lK&iL(7xL z-_6vC+PNn;qh|l{pJ5(L?}~Bi$v(EPV?LnIT=Dr<&bO=EW@lYoB**}|f}H2*?(65o zLjPDb><{i(Udg%dd||NI>A3J)9gD*v(lpCw9W-9Bf4xmdf<4!Pn?1azzxmCRuVFit z&(_Ly^J3iF7wMrdIa2n$H@%P^cWZ`1tksiy-xLxSo=dp4K=bYsZ$FmSWjz}%UgtXC zvb?2c^Z5h!w&>Ta5m=xrbV7?q>_B}+cS2L8>4eiKSSEaWbmP6=Rhboxa=Y7A8@5ep z5W1r^A$HX+?xxs)H~T8?-<$j`qVD?3^#7uQdunZRcwZ#7`bH*BPcr^DQ<|0e)L+Yz zRa0}L=J=QSp5$!XbE|!4)fCN5N++k?PQSJ;|6}ErQ1y^Clh16d&@Hno5z`R5G+8)g zPDjsM3!mFfnSL)qOpmiHjMAzKSF-$ey)16~cUg7g>HnXsdAna@LcPqv{jBE;d3#m7 z>g8Gmx3tN8INum@mG=zOg{T!#zxS_sy3FO0W5s%VRcmff8#5wT4pnQ~iwh#BG@T`2Q)dcpCfM@`gLpzu2!wS$0lf^m3o# zGsW?G{pY5*b$84K>>~B`m{0K(7;b9q^DNTit7x%oo6@$j(MN<~OXM>noA{aLzg~#j z?@yQ8@@kTA1Cx8#1MXEfSRZgre0uZm1Nt_R=sZf^gcKUamZpv&POPt)g?2?d3F z`}jn*t=~UkXOPRPYSH@pP5Fw&E9<`Z-u&<9F3zC1Xyv=V8!ZYZdL&#~;vmHJz?nfW zcJ^7jTV@~@cEhbxax5ORG#xqxZIf-sdv z2Z3AJvAK&5AOAJq^}^Jtm$E`E)n|Xr@hRanNP4`f>(~C*Yp?HNRbc9!`s+jFVVfCx zEgya-nyrsqX}nvnA-s_zbK!=^VvZ3yrfxI1BRk8(cJW;Kd-__SLzu#pEZM$~r&5!W z^YV_ao$>w6`%9Jl|KEAbIh6fZxjy;6j*`9Ym*ef*Ch+X2TBKr7^+@+u(cGS+ep>lrw|nW~r{%8ME?(RZ~NyZW>E>%xo!~&}ll&a#D(} zhuPt~D_1TsJg1<^IAM#hsEhQ$Up$957tUumzc=Ony|0s17~_bV|t3cmSm|GD(u zw-4V_yh_hEH|Qk}j{vXL=$uRy~5iF!&~me}5&lC{Ag z`R{Al9Y(uaK1K8HzQ0C(##B!Kn~NG5GN+vtQ_4GjEI3R-#7LLH*K6t9tv3s$-*C5D zFs}LFB(z9Ea;x})tzSiVuS-2Nc@0xSsF0^=N+>VyvTort%V#SlDg>qLul_B;ATcRS zc=D>g~Dy_-4B4ocGYa zn$Yn}Zq3z{k}nUO@`6MCCe7nl)BU(<)v~A=SL0^Cf8QrQoAY1lqNx zr|9Yblr=h*kxkp!m^!9s2zqcZc-crkbS>*)f51?|-eAu7}99NT^U zoF3C3v4;7d-rWc@@XA=Z{jFu%1GBp?Hudh?I5#>~G5Ns#X}7gr{yl%r^Ms$t>3heG z5>GDK)_BF)hH1{EhIu|VYgnw+vr^goZ>2nz+`I2DkHglNtc*Jp@&p3I4^2y}mOd)Q z5Lv{M*k`EDI<0W6XWz?jobDQe6D+0~{eIOsXU@gOHvt8&H$-#_<#H%Lh^)Cj;V%0I zZ_(Z5ao;bbefMu-sZe{Sa>SBJM_X~-?-Rm;7d$RqNq)c5+d5vik|SyFi_j;<&o;3K z%QF9EOi5Lm`{rhdk$uwZpn8$l|KmbWEqUt|Bsf>$s;;DE#`WyERbdk*au=?B@>cQ; zqe@i$G={RfpAX-SuKNmVMjSkO?s5N|T0g-D!dx}+A{UYyZtdeHj#Q1vK{^RAV?G%I<82A$BMO6H~l~d+@I~88$ay_=qP8WB$ zx9Y-v(eL|0XDS3tt*ZX8HD+eaA-{b>yO`hq?w8hUuw>|A*v5U8L6lQq^Og#R1N97t zmkAxnnOE`C;`@g52Gh$77dVxYXMT35U-R=v#KkRAE~zbjzi+y*UAn}Xb)w>zX3opdI&#Bjvk)7fZzL zUA)C}8`IMt-}(ME+IGSuj)Q@-y_=hoP9HI{-eaM^noDlwZM%k-pDH|aG&VmM6@4jY zFJJYQIdXbr)QwjYBaQ~FO%3(mcYU^o%air-!O9YSssC*^Jkd4kRQ6uPFBsmuvP4 z-!#K?UcYna`eYB?@cydH!j@oAz3x<$L5TU0dG-7`?pOb>3@V<>u;68qog&i=&C<-f3fQyxo{NIp;)R;a=43=Yrfv z_q|FqWN-v8?PNB)b)T0ixh)ZrPGMo#{C%~y#Gg5xEDjUdWxd`Uicxw*OG~R0-_ich?_J>r)hBIW9lQoHMPW>01Di1;vns!sa%i{FHQpG}$fmtF13 z!;>r#u9)Bz2Echmha>B zwLc}J|A#Z|Kl^O+*?-KHPrYikxtI5=D%E#-yxgQE=fe@;_w`7+u3FALu}hEdw_cma zvFYHt)1g`w3lDg@Gd_9C?c;HIUii}`hqf36DTdYmEpWKDUfj9+g465mzFV{y7#bKn zT^vIay#54Dn|QeEf7Qo*d;dRYo_id0`G&o~#QljUGt&>Id-NxH@&#SWXZ?F+(#y6f znk^4Hs+f5e9Oq*2k6WCzcH^O*XqQ!9=9Mod9MNTn<9}cdK9}wK)kTnlP(EsORH`=o z(QDZM@YhW7-KOdp%g#94vA@pyoL`pdbF*${uKa;tX~yxHzQ);y7kR$9zv*n|AL9g_ z6Ja8}(XJ=_roB0|iD#+aO^Il32YnU|?_3sBMW#g`LTlG8UhN{1b-AE_lThWg`>{+7 zoi1$F|Ajn+xSY@rNb9Z`u(%CK+fz??Br#>ZK_;hX61q-7cCoA?TxmV773U#Z#uKPRq1$%Xn44t4Q6-eG+W&KyRtYF_7p6a4TBbNrzSJ7o_b|kJm9a+43?Ml1%r;g9N zl7D+s;_KD6nsVE&NS*(llJ@FPc4^ zj=hoF+!nKzi6P~U(Ib^f%wJ}mnVxZDj<#+4u3d?Rdk%BOXdckxC|micYkKVd%1yu3 z9T_+pK#9Wc`iTPyUv5qg7c{wkzEam?R^zFODiSA|@(X88`Mo@s>16S=j=!!FV1!60>plcp?w$8LR(?s?4ckD+*OL-wtAtHF1BWL$hSQI&C?!i4+mAHp*wwU)8I zShk@+O=oKEr%iU>G+sP^`s~j%qb441HV`xkZXoEW`CIOC;03WJ!Z;))(IEtrw-8i;=id)4g9!MSAwl4ZdeRXYNRUS^9f- zownG`zpm5jzn@-r|IW?7p^t0RbN-rj)X1#5-+QEUp~@0bebw(*ZBiE%sWbgM=%mm1 zS0P)H`S_}x5vsf8E4qf|DR#cJ|5pTuX-heefH*0I;-V48zN?^ zOuVs*g~|59_RlwNf3Exx*RE85V4UU7+jk znw;*dO_;w$`^=QT_pcngp7yuhcl*Zwr)%z|zTEit+SOIJ{41Mx+m-EZoSv%n`wrWN zawZ3j_V}eKrnl$lUk+kW^p@xh%(36Cxwg;tNT5gogULgeJ&T#=Gi;lGovV3gnb7B- z6KAZ@Jvi;>L1oscO`BGzOv*0$?)m)GAEg_tC-fNCRlIy`u)97;<-p9_^VAPKXPmS1 zRPB_6z+=~@Z8;ym+_S-FW$?6y?|0r!3^yp)E;v(VDwn~^N16{kXDO|f=oGE~Z7ig) z_Jju~=evl6>o@Cs*WMMF_PWextIE;$t2$bKcE*)nyk~2@f2!pl(Akla2cEN5Y-Iia zFIF+`jK09VZ!)?9{Zn(Io1TGA!kyNkx@P|4Dzh-{2Ak+Jt_~kN7`w6=W7r;)Ur*bd zoXeUEYn|`#Y%tztC)l-J^TVw~X2y7@eW%69hjxUu>70w^k~st-lg;IwkLc)z5f37O~2LsnPNB| zY-X~VJ8inK^(h`6s|~YO{O)J)3OXV&|NP{WKfX(e+}s?yK6KNZ2QgXmXKk6|!FwnG>I2ye(Qw^gs2=^%YN+4eeGoU7qGDYW}d7|(LwE9jc*y({=MtMpK!^qm+4lZ>YS-t z(-X{?_Ib4{aNM3cAyMjB^B1c%kER@8$c%Dq6geF-yWXegx`;-4vgq&JnF0zPo(65n zRYA*EF*Lm2`QCG`#xb$eQMH`w0;=twcNsXc=$Kt=w>~)-wnX=M0q$>!{iwIX)TzHk1XiOMp*6{+1Tuf6ix(a?8iIYRaxJIrGE%UC>i z_w%p!U&;JCa;>;yX8eBi%-6HyGRG_1 z&Ig|N+XERsq&zlw)~B>SdiL48EbUD2m6R739X;&H#Bpz7*ZvlUYp1wY_uc(ax=p`& zT4$)^MFy4d(~>16wP!H!Sp0Y7n?~TCTBB zX1$g2$y0xKR^FfTVcwbrec>M`3(hhKG((KAV(EazQ*UZosqvi9OId1$3-Z10)!A1J3 zUKlS@+ImhT{_LT3o$GcBUo~XP3qLU@>`m!WEu{r&N(}4S51m`8q%-kFk43lpOa+<4 zQu>!Pzp#qGz5DrVe(ArutlNE;MQ$h`Fjm#vpZ@gABQ1s*8LBVOvcJE6+$q07@RA=( zz@PJP9~@cL=ycDx|IrVo25-ha$+>3M7sIYX?s#(TZZ`n6{_IloxY*=t2d`bv25+^fRJDFt?NGo3V!-&ac$o#=V|l!wOJ$n zJbxdzqx^injYRQ};M-+?Od0B5nCN&M4V<{1L1D;KfWhi6Z@o0B+ z+5bRU`I?L0^2Hw*bH(snkrG~WN~Ky1Gy?VR$}axO*BsqWQ9==_lTObY5554{_cJ6+Xoqt7Pqgh8w zMCJe1>h(Xn`LD_R`?5_ozxBcLq@T8j{!Gf6vxhYy?2>%6yUtJ52fIwKbT&*9=www; zOqN$Jly8V<|IoJe=9_QZ4#6%HuwnT)Z|hory{2-_4~ti8T>9;6tH1W`YNi}DPmUS9 zeqoB*94UwDMP{_mKkjRG`cHV=Ww+k$p9TIa6T)3wPh2}VQRedAx4|tAZdFG%{a+)b zeEY{{{Yg(evQEtue3yQeufbEcJvxQ)3*#H1iFfbc-SoTPRp`N&R@(>M?f;&CD7ap zvIp`Q^ph6sartd$BzKLKfpO3G|8WWnm&D87JfOwVW$7SbC423WuINLBFFz}Lj>1kx z3%e->-s22f90$&IjC{@JzPrr+-ac&cQR=GFj`V$FVa^eLItz{}l~$ARR)dT?i zo$T;cx0}wCc832-Z=NK%Y}V^v(&F#-KI4~P^Yi!1x7Pc_52!Ov5z1v~{vj9edh(4` z4H1HZ&r`27X)c?7pNoSp)a2ps#V-^Lbai%cJ`$esnq^OYuG!^nx8P~WWm`n|mrt8u-fSoX*>r)!@Ug5ZyXm_tZ9?N7G38G4u6nhE z9bE_JPk0`3a);+qCa0>`53k?VHClT5;psb#FQ=_r)q5!Aqi*F3J8v)PMFmQo_B#^Z zo7R6mIA{O-oBJM%vwSL^z_Bg4vwrU?E5-c@+$WB$i(fsnR{qfUDMuSNaWVYk&wfx`*dztK%;tu%T$p-o)%TfwV#$wpvL;OW^7?jmf+%0`0~Kb`ykw7#o*kC@>tc5P zEAyUXU=SMiQrBSVSyRVF%^Eiz-RI*jc85Ja`;^aqs|r6bt#Ezyb)Ug;hKi5j>t`N{V)`RK-NC`IwpVGklv9oD0ewdB)Y{i= zuV87X=C#TJO$NR2quHB$<#XhJKYCy5xj1;a-=6K+yKRh-=57#+Ql8YnS?$zF0dO>^N`(>}A%l5lU)fZj+rq1=mnX9&R%dIU7 zT$!_`bFG=xwIJo3`v&1o3pIhH_^ zDzodq&9!;FuSW9xrsUwY3=P*kI>JRg8@SHj$m)!`@j-0ssXr5@-Oc~#;L-4Yf@R{C zX3N|NCWSPcyTX&@wd_5wn$?g=*3Z#*{0m@QY#6n)<8TzrU4Ra;vkc{)ZOJa($yeT#AB!;`eJESo!?z&Sljc z9u41_e{2-eiJ5yNzQW$Xao;~Xk&oAEHeSC!ktNXO!nFUhH>S0;sC@raC=#BiC-Gz3 z)|+egZiii_;AeKP{MfbSFXlx4XEe0l5NLVpdNQBgg=5E7ImdDyc=JEvzIxVgb*ZUb z-zMeQUuNt$-k*9(sOH^9mLJEvI?w#m-=*rZY4LyAXx+g4SG}(DSF%hv^6zxct>>ry zbj5PL5pq2JZhOUrM~BnrZVp`-&hf9r#3 zFS{t|7cA6#5Z8L9(> z>QNEr1M}JbU7m^Q!B2*793Sq~*=ap%>NI%Lf8vMVh6B5IToYXREcJ>= z$CEAjiX18HuIMrg{(1d)J(t3 z)%Ioc2yPU{8XT_Ul#@YgJhh^__%_p7~ z`xRQ1))?VtQ>T<>zMJvD12MrjL9r>{S$FRT<&SAgjyk(D&8a>2o#}^$h`$qq{^@7d z+EdF_7>ktjntW7VU)XSNMsauTSJ4Lb&T>x~7s(I3uO0WOMX$VkyIRca*VWff{1a4# zrf-<}{HSQq@2fATscY-4>b}%sX&_d0mP_x-D;c&;TV=JkI>%Pso0t9XsIy_Yefhac z`#_g_u`j)D%=`E7{nliMYyJ86GlRd?vYK)}c;6VN%ha=_Zq9K=hW(5Wc(XU(oQ}8& zVU5Il>*CwNpFjjpbc_1w^mD^)Z$MD9rEkN6p(Cw_?yj~S>J1dtGt)* z@^%s1`}@Yy>GJL*i`g75(Jj+79XrDf~ptC9EulA(%>jf?Pvpr*316E}Al%E1ufxvuy_lqQul(7z<&IySl|FHqKB~|8 z`07CGZ?$T#$wA*{sIuQQ@y~7f&6^jJQudaC^GCYmF0I)SH`6k?7?e5VS|jFV^u8iRg-LSpivteF zrPlmR`gd8Vp?>Y&0D1GPnT-Gb_Sx?Kf7sbHf4#-`Kku~;q>EHEi88kA&cCzo{JEoC zM|Kz0$At=TmZl|U9yK;r?-VoH$MK+)p)Nbu%=!-8|4N;pbB#?H|4As_zx@7M%A%VE zr}}4e->NKqn>d;Ko|MAreKWX5pT_qai}$pA`l56Aj8;kw+wJYDj0cW zQ!kX2@V=bt6v2P8Y75T<*N4vfOP2e|h_bkZiHfkSN*{pkyHk{jcIeWXP zTqmES+N}tWqoSw(wU;&CeIB>@_oViscmH1QeE#2>@tQ)U2xS(PjIOrgehi z`m@3I88)Yxrs+hleX#eRPpBOI5_ z9g3jd*=5!r!h%2b!tY6#Ep%36xwESKa53-f{WhyUgEAu zIQ3MtknzrB&s)E0zVO8K4bPn?`3B^-dVbNLlqD1YNq+N9 zu@~R{w`?t6U9f@imO@Jl%lRKG#aedQl}fGstrEgM!!&P4+sE?buP+qX6|R*%uD5oT z(cX6(y|kGB8$54WH8ttqcA+gkT~}VeWO(to-1DiGbmx`-kMCrc#eWMpcl-Q%i~7|J z;mn`jezaNS@Ydj8clL@~mK+}$8&>>UoV8W^psT{Rxl`O&Y$QG&pTW&mw}TftAF!wu z9J`VXc05<7uf4^#AkA2sl_A-3y>T335S$YhoPyOeWEQknQ zucNfvfc((Z~7(Gvy!<(fuZ)$Ux!aQ_AhR!h%P+oG0m$+pdhJyvGK_W(TR~8L@w_;`XVec zs&nG{)86Zz8iOMEx7@4B-#=xa|Ceptb9Ao$%a{F4wOdy=o_`Uo&QhjR?Zc_mwQiAb z*!o==8-rq)9~d$0-)}ZsHXnZdmZ3W1KIaC0?GKllqSol&J`=sQ=6Cw+v)<+tPlWDS zt6$3Q+j693-HvyEri3u>IBS?+&T*At`-_;F_0t)4TV2hLD?Z(;yZip4qjOk(urvMn zWOQ7B^XBDLX*I>}R{go^(@H<^Z}iyLW~tz>RVQ%0b;8f>k!ABt*RN&~$obOHS;qc( zxsuH4<_T(oKhkxBHvVOLB6rlQF=|C2=gnj-lQnG4b$eeh?D;S!yR820!g<@n-|cuX zmm%);!9C)xG7Y;#>v(3?-0l5I++%qVel2ZtHM|0s z;w(6J?Y+Rneuf`@M|d|Kf9744xHB}2?T;$Q-=n>%+Vy8Qd7D)qdh4}uKVn|ZaE|K4FT*!a8Y{Jcm; z$F0&nXU)%Yd^ngJbokk|x=NA1!4IbCD($X1z`r2%d-N8IlRs`;EAD1^&-7t>kQ&!77y7T^dXpX#tg5WIX1Baz#8_JW{34hp$@L=wq_h)j? zGkp+bj5B(Af9}`TXSWZ(JQEW(Nhb`HMvEZ@xSDbvMLs~1KMl2_P1}& zTwl#v@H=~@@&CZL`&If>WBH}pU&p;`5;}fup1TaI_8lqXJ3ILtbM+-S1+rdC%w)Uz zm|@=Tzq9Usx0m_+?bK(zAFho53R!-0B;2)hkqA6cIIs0zz4dz!RtFhnoqO3nU$z}R zEELYLL*&5jYiXN>;n(@}@2>bi^Y%Q|1MZ?bSU4TNCsqDSR|=dMJ@>-&NxrW(DEifW zi6jd1gm_Jks&avuhI;F5oUFqG=_(tP3 zZ~iX2F_-mC><{bJE*)I|6&9F?@ry39eX!{+Tk_^C7GIA}#u%vycQWJH-mQ<;YINca zTYYAwf{=EwXxzq_`)S)}o}I7E70|6-6zCBwYt-~~|IXa+SL;6*2r?|^_>k`UWY0gF znrrjJSt^_(CGp?BoXKKe{nkX;H*XBQRieOoB0XZV z1OK;QWvsvF2Hz|)bqM(_x9UMKf5F2;aS!iT-WC=-z)^7XyMN>VH^oOMC_1;zxj%b* z?)}=Y|GyNRy=ia#zG=G1MElUI>TZGu8kZOruU+pH?Zyxw&d@2!TBjrZul~xBy$p4{ z2c)m3ZMKG&G;;nb2Z~Sa5qfZR&7b?<-~Q6Mo586OQgc36Z03jf8#yc6g|;VXJe?lv z0QOWyr+<#^cXgL1a~ZnM?g*EB(7ERSk2{N*;=`0%Zod3#`@ct|V_U_foI5rA)%Tvi z&-H(8Y9u5jm(u?~C}q}+g#QVrFB-Qqa|p9PIj1vgj{CJ^3|AJle~ZcrXVByDzU9KF z@!`(f-RteX6`Z|!vr_zzw%||yZ~wRjx1{PZl;vy^Yf##n=F)kU=`7=eixRIH?zQdo zJ8%_|AiKc{Qu(u2LwAI|{rlhRuFYN9V8wi6`l_x6VzRBj%2qy_CI9b| zFSuGu*0I}~dwf09kNa8%+1{5|U#i#lQ!i8(bx38OpZoQe%BB+MG*6G{vr}%qJevGf z;dVCP6&JQ*y$w$^HfxrI@*Hf^n-{DS`iASwwba)t3mCR_l>4pt%HHvqOVZoynqP?F zKc!3O_oV)QxBCCR!(b@Qrrdm*Q!Rg4Y4?s06C$@w^= zqn06#{XzLP&=frEGRWCx_v)W*dwy~bi^cu)RVp{CdqWvjZ?2ie`!JCq{1ww1=YpgB z+uzi6i_KQD+nIY@nCpWhL;bp2qM0GT)ekKUO1~=^!4}ycQ?~QptA(=^nC|VW%XHGv z@0ecIXp`S+-dLSEzdqkP{r7LtH!-#|vp9R09L1;nOa8gbcKexI>znx^-&rOu2(ecX zlE~uViGC%2S8-BV&w9~=+~@cGdiCz%oXz3$>mUASdQh&TFrDF^_lh|hX*z5l-7ghQ z+A0viy;)!yd^4`fJao-OqqEO>V4FIq;eF#}1Bj!JD|{TUILERI2D^+Re3L z_3Y+<*>y`m)z*zIA6MpD&tpso7o2mvvHHy<_fRg|yQ|~V|ID1fTll9pi?7>-XNj7{ z+5#UB*vI*=u}g5+S;n$rE#vd}g`sAHC}#O&vURLN=X4`p8GqR2btF4jdP~aZrZw%(9OL3gKMO%xaioJ}Sp&-TW)2E7z`a z;HJ^{n{|4h7s|i+yC|!6>pGPO<_vml%U1W!te9X^$G`nS@}gFs8+t;*MuG3n8T|~N z`Tx})Q;qMz53fXB-N*ia-BhR7cBN@w)jK^NOc85lGgy-l*3=Ti7`OfFtJU@29?n}2 z3Vq}56Q*3YcZKxBBrZ&nxBbz7UEKJe($|QvJg#1r3Y~VQ3i)SEjq`J0w^G~)`PgW@ zeJ{fSb%r_FRiXKsO1rJD#wr!3{*%uIIXsHt$Cq!i>sdeeahDxC^G(J`lqrBQY?|G_ zJt_{ngR;VZ&s^~?{`GVBwUanz*xvYTaCaL+ggDFG8#1?ww>)u-Kjk0zl|jP&(gOMW zJ`o1mH~X)x`nX@|=QFd@&ytzGxH}$8`oiHe?T>eQZ0*&^{v$PaYY(=r7dzq3B4C;j z>$J0ek9o76gM`8QV8-kJ?_c?Ep87}fSyN+v{Oq&0>{fvHlw@qo^k@)g`f*(8N0ZjN z9~<@SK|?HCG7cX2|Jm?5zh(X%nU8lia-6@B&GpVR(#marWuy3>f4s zxu@#8bnlnd)dx~%)~J1APY^nBJ(Ml%OaEWH@Ynha&)94KoL^*f;=un+zJ}7%mELWS zFZy;hJoc~0ncLZVJ6;4a*k|WzB&)h`N^vHwx1V6|daOFw<7fT)*o#TQM{~i$ZP(K_ z|AyU{pc}O%<6_e0=Kqd1S603Dc4%-Glc?OkpY?C;{r#f9i@p9ZzUYsPd2eJOYCA)J zihzXipB3kFEju5$aEq&-IKkuYJ7fQs$ol(bQ>|rJ82x38T=mNSs@4Xs5B-t#4bie* z87B>zD(vg8T@C-c+r5LKViUuB_79IfUaDEzrTb9clhMW7xqSYc^KWc28WMw#|7Ezx z1Rnj$&9yMApJK)WcHJV^?&GpQ?r(d%lfll4{lCrb`-_)sJaX&%ac{1yr9lzvLq5gc z{C^{2USqxCbHfRODzDeR`(ZSP-zmR*4;wq%YOfXs2| ze)Rh}rP*?SDCG4Z&}D^_0LJ>MqI+ONN_?7SiCziAwOmcDFHqeS1# z%9dp<>Q`_mo_hby#}Wp6?g!8QT9^O(2RfDaR$EH3yYd%MP%Z*(#L)k+zxMcM#u}d5 zZzB8T_sp17!+qoOn@w-K&2RqaS;Mq%k%RNj`uT?I8;qL%Ias*A^HB($HaGWQ)m{;8 zwc|z~0_zXdC4Nzp_#YW7+VIxAKe9&MO2X@3@>GV+a$ly3{W~;$D|0-tT;{Xnx}ZqwMeD9d8p=tbQ44maRE+r|0JXG{zr0x?y`SuW2ms z6(Ur!_(RyX14mhAu{bq1-E3A8w}qVqN?oKJt&x#EGn? zGsK?%SHGgi|EiOjJIsB8I^%~j?+Kjp0m_t zd6^Ao&U;gaUzK{c8x7Byn>JrN@c*&VKKTRH3^AZ%66-hAKR*|I3v|N!`C^FkFFq<1 z1WoGAWU%8p;r&SMMC8jrCWjdRy=P}cZM1&RlrZIO;Pf-)ZV_j-Uac;a3pkK|W3t@8 z3cJrebt_B~66{vIH$I^8Q2*LIfvLY4#GlVz<*;Dp50?hR;8*Jn-~Bmsw7`>|nYt`G2iP?%Qyt8E=fAY&#S0lv(=! zKHt`@Qp^tp^P-~dC7cdzWthM_M@2z*Gds)1JDXGgvrb|v&d)z#HZ5lV0{i(sK82ze z?Ij-En^`?2ltJakJ&G39;*ox#s*@w0hmH*AwU5zaIDF(SEK6 zZ=E_;TiDO#ZfGeJG*E^`pPkW?dE4LjeLu6apI&4Br!>!oA!(WQsqYhg=eZ~) z2ePfdXFZSUM+U#fvvlSk{Y6dlTnrdZf^ z8NR){zwSZk|6gYO)5&oEDzkj-isyz;|Iaw6zis{; zhI;*|=Lf?U%6*S}v3}E~-}Se5f3EOc_iNwp`@xH48HG4lR_N_EnI+hrdD|o*=S*7j zStZN3WS&FcCfgKxJUaeS_;}@`<2HV8COlz1vQhSpP6hj!q<)74vCT8jp1tJMVCeK_ zdk#;c;A(+M?<)Vjh^l*jW#zu_=SoV$%j@s$X_GvA=bc^X)$e70>z+ zvEDB!D&O_n^s+v`0_TT<=U<-r=&hclUH002_LZzjOmAKKd?f@79yI(5yOi(oYwp~a zU)cPP7i?r8f#x^TC`QGz;!uQ-t zUUPo^<$G^7rhEMQr?}_6{_g|7@4Z^`Kco5ok4bFx+d?(<-fexr@uyHi+_P%hlDl^= zzPMiQzPP&3%Y%V|fk8+4$Nt_W;g-wa7nFV6+h>~szrU$mraa$ z_N>QwRnya5Z|v7G-1vO<^O@Iq0$(yL4)AO(PTc<6qVeIQR?gxwy$=W1M;<=%>0>z0 zi|7Z_=iaGal^l@t=Hd6I@IPD6ntoJaEQomS_3Qbhb@yd^<2G4K*|r25>D2f$Gc@pW z{nNK~FIqq8OGlW%9l;AnRX=^)Ru?P#r#YxJp7r{^*k|&`F0YmR^MyA`^vmwBbKcHf>Na5!1pRfNe{b|i|hWE>9{WZr@rpK4WPPUDY zJ#R6Ce|?+mtwSJSg$f}#a*5&o3;R}8haOVf z_~+2}U#>r{&40c2%baslzsy)zqaX9@U-tT9zyIZXdlbFiRkZFlvM4_D@%GFI^4uQ` zJoP7kd3g8Y3(4J!FXmdPs({jn->utvc4gZp$0@#?Sa#cNciHZlA9I@Kg}DFJdf_+q zS2*L-i7PJ7HGcgheJ@kZT%QdGi?40eeK5~cl;!o0)$^D-kG1Lv&Ph#GdHrP3Qa-&| zf#Iv~*xz^`_cpEmqfWi)>3O#%Y}nhPxJGQlbG@xC3vbq4SQ@6iicifPF>P@bxli1Xw$6vqxp6jvPCH()V?>kffXXWqBh`$^bQBkT}{i2RP zLpGjS25b*x! z>#0BG%bd9{ztqm@d%6IWfYua$s9!eO&!Z~mDyO|@$g#N(a^3%2n?F@Ab^BG8tHR-m z`5XFcWajSr_NHj{#)PX!@0q4PEp@nEx9gXh-iryS9)!>}uA9kiiDrHG zb6LxsFr^zppVqut7H`U#vu$2?8P|tpNlw1ZhnF!f%-$B?BgJh|`dw_rx!}K3*WEmL z@SlI+A(e6e4D%$<- zK3nJ7b3fM26__xybbYgn@W!&QycyTIcRcyTu>Cx5beOJX$Fkoge$lj;7`B}5thxI~?c0PU~jOiOf7aAL1eCp85*7I%FSxJ|<2MQ9ij;adlJ`Jqe zTBeYp-Z#suYmJxMj&}!k)Z7tu{%yDONA2}}F_->t5dU=T)2!>e{Zu9e`@NjY*f7r~ z?9%FT_r>4e_qqAsm+d|GV9J-~S8@yt8|EF{fBE#D>%uW6rguWWy1pn-k;9SN_l8wiJIe?Sa*~td-`u#gu;p=Gm2$iRrGJ^)4r&A zex>zIm6wyPFTb>H|Ms`&FSA^QwB`3W^}FF*)4ftI{#IMPN@G{QU_{&g>0f3~nz!9} zZe8PLM^GBdS-Cx~=H<(o#rj|4{EK8&|9_nS_`#)hn*MByxtf1wU9%|uY{u53b-lLg z^!}`D`{yDmDnY-`EkFMFRq_g{e>Y3NNAB4gJAtRbvGhRV^`pzrhX%izf0eUSYlqL5 zID_*W)i-}l`nl+H-(I_UpY&r);^nu=_FVtCynpe!r~u(V*WL?mUh`Ps;D_z+e3oB6 zsLCk!LpND{?^Vy`CtW#LS}-bj_Bk*%e<=0bul{nU_2rlD7P8CxR2di;5_0$aos_&h z_1xc+^R7>x^5VsN>!#z^cqe3Pq-%eB+z`C1$F{hz;^moZjlL&KY=!R%p837$*}dOs zZ1!^w=CQv|6nL9%ExKb_ceUvxt%k2=4c*&|Kb!sd?sy=6`pff~H>SJF{(HQv`JT=7 zdErJ9<)M=g8hxI)^Jg~iqql6cKVOV-T)yGs!bjOsQ~zxD{+qj>X}5@Ct?ct1NgemC z#p8e9>zw|tHq`Lp-X<3JXM7)enRV`4PO5XeRJwcd#rbdh-1whQnIk1s&A^bLyXWns z2u ztEr?gMTocWySSxtZ^!|c(v_F~ulPPsNMCl(zr<}_#Vd>FMf4@EW_fk}L+oz-Bh~5} z87?>W@cT?sw(3jZY+iY1!}Es|mVT(;YdrT}e#d=h`N{{|WhQ6+jlx&0gWw45Jb__z{-j;;9|KF1(a-HGqzq`5D@ z{8Fsbul>?^zewKmed)Qm(rU|ReeXU~EiJLZ-{V)Q=l|?wxxno$s z!i3|>OUso$Bwm=c_4)5+VZpr6>t9$s=5D`MRwmmkvigAi4XX?0$EV*>Gw{k|@tmaf zLtkDx+&kr2dGyx@i?lbVi`CtT<^Pub?YWQ9(wFuZ?97)x=vr83fA{&V?{y)U&M(`x zW6gFOl^@5eb}V1=-0Rj|+1`Jb-(^fG_WE{wyBPz6MBaz`j~kWGz2sN<>l|-h=RN(_ z_39JTH`OXhSV!Nbz(!9OKbK?%b1SgJbnm_hGiFmf;{`WZllV{Ep$uMYhnLJ;+dOg$AtT0t8>yV*2#0aH-dm)d`kc z&)(lN+pGLQs>CagtQ)Vz^b$GxPrsdf#^dat@aM+&9_1f2KN@$*)%xDlW** z{Zi*yp8M6UpihDE^}F6#UpXtTo-6V4_Wm7tSd)Q)p_%)izTGs>s(sVv1s%<-?sT}g zGqSuc{GS)=|Cx)P<%e!~@5BGIitUE^!KJ$0<%u8S|JGjPnh`tKV+FJ3a}jleRqHu+ zU%Acqh3gj!OE1sa9Z%nEto*#EOvksfZo-FvtYh(N2fjIeu-E_aK4-&=*`}NyKi+a_ z>poXr8k>In)neV(hvGO^K7Y}3YH$83mzs*)$FGaK<}6X?|5^R!-uu1JKF3wh;$?;jL}ZrK^+dc34aOU3~ZA3mrdBP=Cn4A%Fjq8I!-*&;4RDox|_3eS7ws*mUzs zdDnSg%`(!W_e36$V_liLW$w;*5$j*sy+6B-@muAp+~;pT-pJ*i`}5IF!zHs>v;hxtIH^*Uw+qBy>ANZ`=K-rxn?It{f{o%Tt`h|1-qcGC%$9 zQEX}t4E)c*?UJr!kps$zs=cAw+>zw+~}I|miA zL>|oXp7yBy`h_X4%XN-=yjK#KxBN<2>)Kf1In#D-`OSauF8BWRZ(;rYyPs!e=S}(Y*zaB1vVR*{&rSMLpRvv4!K=F$UrYoyxWgWF zT+a9Ub$qk^ZUup@uOG~QaBVx2V?L9ors$qsVKe6B^gS1OWAVV6>1@H>U9avj79M!h zw7^#M#4f9e6I@fjU$y%GLt%GQxwxr}&s(brk6tgh&CbcI%JlDyibl@O`Yd;b`4a9Q zPMc=Vc(yTA=s-^Bif?7Dc3!hsyjf1M?_6=G{^Yud_V;_MV~Wq3R)6}xKIZ!-;e^8$ zXN5}gZ^-uE+iWfM_s6@8l3UwkEEpILcu2i@uu|O(ZtMlQR>$@`^9-0@qX~Hbo z?-$KlukL?4^FQCV>d%1zcOwlG>h$9m+-x$4wVG$cZ}jwMnq>2wAgS`tnQjwtu!iI@xVCPCvQ#V$Qzq`5rfdT9^FSdb$6-&+_Nwff5rZ}$0RnvKO~djoO}uluoVxjt$6VP9#3^mUw@CN~yb zc(E?i&3t`ktgOcGWu~*umwsG%{Kf-Y`}j zrkzs#tM0jb_u`Aipq@Fng&eV&%!GuG~1QKj&1)qRuCn@_g7Xx1xj@H@IJbYmm`t81~VmFq5CwBPvV;Oqyx ze(hG)d-HDo*_G=yr2bj=_|I`s2D@M7(Vl`TDW{6(&RqL9%9?-2PvifQCAF{l{$KpT zzl&#)dia{t-yhqq+xcwr%;NJ8)P=X*$yNQkW=a3MKDT;MhrD7kUmv)Erh2dLb2_DrypPO^nn<0ofi2(d&?VDp&rYPMu)z7%)W&lQeI z#;@Pk?#NBtBkicYF>zXw#xA|9>up&*u|4v)t|F+NVe_grBuG70@8N3-77!DXU|Bo-c zq<{0=pU?&GPA6>qRlJJDb_J8c!TH4xb9?{JYMwsj_VebbG{4j&XrVsFa2G2SGISa?#t&tPO_Hl^1Q^YVq2YV^*37x6xqHX{-2&S z&oaNZ=GC(!(_Wum^RV1+F5|lH<+n~BU-oT%e$&%5pUr*$?wxsd{=H~`y0OpagFhl_ zo`19q{rn|zub+KwN~|YCwMDyycSyCzmI==H*?#}*l9O&0;%bI_EcaP_m_NN| z!lBQZ!VLF*FFgP2_`ce7tJ?3gR2j}q`Qqov|3F=0!}{w}IvcL@R!-0XHK+GhA6Gs8 zZ!Pb?*x0srukQ!HK9}3M=TTAR=cy~dzP{&j$1Gvmu5FXD=cS%^KP@QaxIXr>=G6@YdYimqq;n{1wY?wEqruF^wb%Nw=*_n za5`yaDjCnwa-3|rJ@4zw@HMx;zdct{HF=5r^_*$K2WswXzXWx|LHKf+`(k6z@LxkN z&%gS>OZ&T<>#cv!cjbL%B+MAbm>;o7ZtaEbxA#~^D+;h4QcK`t{*jet8GGzrSE=u_ z1-EvcTX*;VX5ar)-bqgIC|41dSQ+{0+3Q7h%pc9FicYTm(zNwoS$NZ`_f0>orB9?^ zd>GFAC+0)7v6DROkFvLQ8(I@T#h5qlTNLzv-C9oecb`iC{JT5T&tBoB_)kwZnH$V1 zf9Eaff8Xb}e}}cyT>B*l!NaXzB>()^_WU2%*`T|1?Yz6&Z8d)PGo7e>7=JZF@7^o@ zbqoa;uQgx2^|>N{wj>C z8th9CU$Bn5oKh2U~Gj<te?;7 z`*Ut<+VrIcH@-VgcyZ?a%boXkcpYH77&<}bn>5Gsi|Lym6kgt0HhHg4pm^2JU;AUH z%-i7qWUAiN@JFUGN!ojD@B1}bv~sg=(pWetYf;4Cay8@6^18=2`0_qxYkug*nab)= z%W&1JUOpuL23Ok-r316CpE^^m;FI{%euUVTEcWQ}q<`H@o`V_>vB$VKfl6wfGq?3Ezxk{F-KG0^ebe2Lgy)M_oY&-Q^4(c0 z*>ZcqhAgM)no;xTajBga-+Wr|)%6}Zd3C05d-6^1++J;ccXxu$*J2l5o}34Ad-lDS zE59LlfBUI_xt|pNSx?__v-l(PqNNfu4=v?C`|IB`nOjSl_Qg$_822dPYhl5x>k%7I zUfa@_{CS`2oNHSo7koUgQrk4Y?10l9@69bg-@VKDvgYo^7mHH=2rw})Sfsw+@#Kd6 z#4q=Q&i;Mn5cP81k8?*`zq~d2pP*akKC}Azzi){`3o7@>PVR3?UB7|fQS`_1wBOIC z@814hpMxpo`duFVx?ESzhKg$EnG5!Fo!#tm;C^Xs&8zz{zr8{>|6i%%@@hwr=Y$_S zUqAkyz5iUjef>t`xprl9`4h@bs&*_f?>_00a4~P%7bVa0_h$O7S7l^iU|@T>zEAGI z`=q+t)$dn*y;C;7Y&wV5Vf$SP+Sbx-)~$k{?gV{$aV_my>Amff7(fHVeY;K_xcxjM zf9rLw*JtZ3KFgQ=Y|{N1K1Jt7etz?-jrVN)_ndL;EPlJ1#X}@?dznkXlz_ss8$-Nh zMA%;iy0=z@9^4Zv{wn#^4$Zp-S4 z3=9uKn*Yz=c5we&h4(^?%feT2Etnb0-~8C%()On>AMX3&Yi$=_y0H9W@s$3vG1dB& z;pMOMPu*O-?u)PH-r%r(UaKtQu77F`G5_;m`m^`h@1I2Za=h(hb)31EcUi8o?R2Z# z7ya1vyf`dauOG?Y_U2%p_Ujkl*8lo-<8l7Bm^FPXt@2|%dw5G{Em6-oQ21xllJ6gc z1zwz8th(3h5__5Z;`z5^d(XujnH&TPNxxgxdY0cxJpX5lUEg`_O>x0t!LyTYzx!9_ zU!A}EqBq&HlNs<-|Z zqS`z+wZH$kx1(wU@0aE-rpY-UI+seE+^AL-kf9rEFq855rIQ`HpVF-_zvN%@+wo1G zo4cy7>fFQr&I`)tPy7-M8C>iG<&2235C20v_s_PRewO=DQ{G>-AO5VnPv*YQG2ZDS z5L^E8`(4MCm;ac)D?E^E{cn5IlML-W7P^A@{1WSb&fo4kzk8a~k*mK8FT{T}I3cpv zV=nbZDW zRczBmB0AsSl2euS0WMar?OqsVrEwY@sK*0I05l|R||?NZ_B_uaGJvK4SIXF9NH z12+Q$gGI)N|IO!i+OKM=SHInA-^C_+?$G(B3t84X%Yyg3+CP`u`quH+cVlm^+y8RW z`!hWy5-htz7;@M`r*BYqx}>m!_u49JV>j`>-LGc7H%Yg25{|fj_v_-K)+<4b*2@;` zoL~I*-T#XlcOT)spX2R#HJba_Z?PZeuHVUj?HJyl`%T+tp1>dWbJM?Y_%Snp6H&mw zS1&%wpO{mnFzMEm|vWuTs zeJD4pyuh+Da*N$Qz8!NVr*}{0Pu%J-%`0h!A=~Tci`g2l2DMz<)}U9bvo`tbzPvB# z>95{y3~&A(7^J#--9*{^3mewg#>76q5tlr3E!X2s^-cemXj`x{OzWI~lz|~(9jHrK z^!!fu+>&2+a=$M6R3)8r{dgR|JkQ`|1yKc z$<>4Zg;n-0ne~&u$!m9KjKexM@&b-Nc~>913IhX=xcw?d1_zlx_3M|co>Q_+$Z?^NW1b2B+H2uQUSFu4 zA+llh#bD!CGhe?`6!a$;;x^RITjbW*ne5ej zWM^6WzXujI6@06XxPnJK*Zjp+c2_$apII0^-}1b6F3Zb^&W6dwIq6n^1(q{9 z++P9eaGCw6U$aEm?1w+ws(souYn|e*_oYqElDHvyZgzs@#-(uQbQ9kb#4_x7Us-G8yKErX5=oq09;?cXOcs~H#NFO57?Z2kMbo>$zC z1j{yCyW8yw#g`_2DosCacxo+U?dD>KtCJfa)F-ZBVsHQr=jfb&^5UcW?we=+M|L%p zNGBYN{b2%|Qw2^eN@-c^ zFk|YD-wz76>Dcj2T7BU5Y{Qh!b^lgw{Z}aPUifC4LWcQmk!6$QXKuFUJHq?pkX6ST zz6Y0kx#w~p->NR3B2{xUV!O4vQ-H&%CpMdF zafcG-FJ7fEqq=ySMPJCtI?=_;=dIVgTfR1xf933hKW>Hmf3SDGu<}PG{yZh|Q`y^O z6ArFqxS$Tor#Fh~OTYXm_uLhA$#UN=%MEv5o^CL?cSbMo)+e! z=~>|tH#oLrIY^i<^L`tZP%VDrSY37LOy3k|2_1*oxl~u9#MNhi={>x!Lyx?Wx)GZymUcNOy{Z2Sq>Q~k3LuFQK zafcLIJ$rSgUNQ7md31b{xehbK1#6)l3=BCdPhNb?KlzK4`rO-R4p|GoIsW&<;dS2% zjrWICR$I@QyT9yCsqHnkzp0T`>79FC&%4VvUFSzZn>E*z$4gx1$Ye6T58-bpJ6WTq z84-8!qWeL2&Z!2O0=0AVS7|;g{r)~GDKNau#gpsz)|Ib#zC0516o2QlJpMrl!wYUv z1_p+l^bh|7Jl9Vv$-6t@T&V1q-C-AZTU{^_EXZDMCtvz!d-2~wW~<*^h2{Sr=)ano zA)nK!zI3`2izmCh{q}6uPan6Ht>kL^u;Flu$JZGZ)^ukqqp{%rAOYOhuo-n`3w=<}1;#nS3ADoy`Yt$Z&DTk#5+}@z<$m?~!KKdjumx{xZ9jwNy4N0enJT*Sh)bzU^~$Fr>#CnKs)wrw z&hdPea!z%!P=wYrMur!nmaz;B+q8fDFY{bKxuja!;8xM64`vH_gng&Ptt-JGzuWS|#c9F4SLaQ(uAcR+vi0tV$12XEJKnqUe$2_N7W=B(;r%^#gRH(J zNBrvQv-`67_WiTv+wpkQf1O|K&mX0@RGfR`eT1{+n^{xh)5CFFc@2IRh(hF`W z?mxGZ;Q~82f6ROEKYH$$TUI}|M}OP;?N9dfliFMhR_lFvt6&^+GCzH>@pCKhZ@Ehy zpT+FFUSq+xK4b6hw*mRfF4XQU-)r8^~2a5_w1!=0~iJD-zh}@TKbK3%Tyl6 z18;A?{(Tq}4^yH(-@p3SKKSx|#WgPq*52c0`LA8PZOQRMDF*P+?sB0&_9ra&p7Va5 zTDEuBU9a_g9<{3(=kr?~S;~|u{o{AR?p=M-6LvhY?U}rnb3*NfDF$D6q^)+kdYfrg z-VgCUGf|c3ZA}X~r_|2))3NW`@^kK2LNBN>2Sxw6Da)UBvj57BwDVh^TTe1FJHNo7 zFhN*q-#xd93H1#TYzzy`|D0iGNI1Or^QFi4mDXSP-sSxD<^6Z|?+*)o-nGR}=jQrT z&vO6F+*uI4f7#9X`K7!3O;=@Kd$c<&yf%K??{LR5F>}E;Hy-KVku%`hR9n5b{_BsB zV*B4!A2%NN>@B$xckb8p^;@TVh=m*vWBq>h=XxROZxxScu zyG2Hy;?>m${>6ne%vjZ9`&lDjNaw0hOM+(et*3wP{oeI4Ugpo`C;1c3P5yFs4jTh# z*5yFs-p?;S{9Q-jn<>blDW$_NY{!g++M%&>60>52hl&~olN0uOV-uJ$gm%; zzIpq_&C{oU7aX&XlfN$)etBkmXTm+UKL?YizRSNb^-jlp?U`o^)@|lYP&*r&{(jN_ z?`l6Ep7G=P`qIdg_x;<ffYlw@d#`|w$wp@G-Lvg*%{;;O}a-n}{H zaeMaH4_D6=Z8{nMv))m1=Nq0~nwsX0Md8U-zkj^isP`*&9cRVvcVUNef9|$8@L?>~2EE~C)%nAuIdSINPe?xW%09<&wE*$ zzm!k{qjG=m2cbpVzd2?(kF=*W-pbx#?JfX*1`I( zKOPjuG8Tz$v;JJYmvt_;)T^tHS6w@#emFW@&1_M9=dRz?^3!%#n|jMVx>@*J#_WLK z7Y7qx_QP5&A;||SemYLbS&@J0(E4*xr*#iG*c*FJ*3tU6zW?;{a`OWZ?)qM8hLu@< zlNTTFKlPG#lHQqDxxZp$HypqFV0BvYw#qqo6%X7F{aX6ry%n=pdY)dBgJod(yF+;` zbLakCUD%@guf~8)dc*anAMeSzSKY0*?d!W9`l!%xM%=yxZOsY4HXB|Lbm8nI#mK8S?Qh*Wum10i$h@8pr*;@zTvTT2w&9bQXJEr1^!QFfY_ZA z^`ZXd$KO`V%}>3|yQl8_H=(xj?{4ndpKmhUEBiV>mwiRpVcXrN3rt>5if7$Bv-quw zQ~3SL_18qI=Sp<+sTQwXut(DQ#*>2oY4v4)KKj&&R@~k7knFoyYmK?$ z8sYoj@G+m;I_q!cR&73!FLDK?8)j?9oCrAE$G-nc&dTRg@+>m?i?;dgySwDVScoxiPMoOg&}*T3&Y+IxJ?nVkImQsJiQ<{M?Pzvo#_ zJ5%=Qd*XsSqA#{LJzTNGE^p2CttkpI?;pH!afs1;DC{{^XU4(#s-_{ju^eKlM?Bj< z>@?bZ%zkQNfzFrvYC6me8w_fy7#KGA9sIxaxc;Q;v*%u}ebiqfp4*wfT(Ng6+Kj=FBX8&$aFG{x7M| zE#v>`%PwfY`)~E68u>Ns9Kx(+wfl8{mv<(wX!@VU^D(TodYNV1b3Vqav+BjCy$X;0 z7VKF5_31fQ^^|uXZ>KUvmd=T-=^y0m4xuN~dJ%I5Cb`&R3;%IzP;WN*8*?sNIYZMAQYzDsq` zTfetzJJaNnfU0Nqby~AOop`nNBiAt{;ScHS_NF*;rC)#jUoU>oI)#8cQ}kme22A~x zzOH&}eYR)Qs*SC_T*l9va{tXa`M`qdf9_Eu1_thf=^P9Uhxz~Mm-yvRDp{G^BhIpD z-`>7E+IfEI*MBTe|M~ds-=_a&b3d-0`RAN8x44?}qXXAx7T8>^FyNSBEhJG`kgNXT z@umM36@1&C6|XCv&OG14&g9?@<66F$*C&Dw?w5^zo~<&Azsla;v$^*>uc!DMpXKq7 zLl`VXL2U$sg!j9?Y_hg~e$RmW-{DW6Emmyf{T0+$thJ+0`n6?o@q@_|_eS0Rx^$n* zzM6Llm5w`N6u17mU-m11e@>O#-P7hzf2c+HsTt>Z)|>8Lck|b;zj;$u-Q}9~{PWq5 zp39aksHYmuyh4BScW+j)?Sn>wwDceO{ganm_x@M0>c{Pw4%Wpl z`M+wN`1W>!9f!_aFntA@|?_Rvb+@s3DXkS^NWVKeo*3_4U$$KBXp0)q>YNn?v4%cqgjlJ4= zZ{~VWRneNCM@r{2wr0P2y!GF?tlb1Tj`<4-m&Y? zZp&mZ)vy}vor3RT9>fH-Rp(&5N}d=IDSL%@Q-p`I#^{dS*f)w=9 z^Vi-E-<4dqM(bz4_y6egfm2`4zAq~4yxQx)(eo4I_65APOXy#|dV5pUaZ$GaMxI?~ zc3#nBRe5RS+5f}@Jl1lc4U`AxzJK!1=@b8&-GAKYzRBsV-1F{#hjz2~^*16D-U>VJ zQm80hCUf`d>pO36eGkd3+G@A2a^I%Q`xk9}^E5kj{dCo73O_;)M&L?8;Nbt%?bGkPRx#f+ah2}H z^D&}-b}#U`JM;g|TqaTW2Zc(GX=!(C{I`nTRd4!ec0Y%A2FIz@h0D`Uin2a@o1D47 zEInw+u9YjTeox;Ybg=&G*0ow~3ohKhTFQR4V%6u2=KtSr8a&_1^Jn#1rni+vfs0+5 z>SZp(s@k?db3!&KC(NB3r~UHwoKBV13WmkoG~VeKy|>zZ?RfQ#w@cU(F;%I)jLxez^#D|^FZF7`X$TKb_d@EUx&!t&*El3gR^;S z{vNz1sPWsSAgb2Urg?sr!}MF{_eCZ>h>~Xdk>PXCMCVJV!XBs9H+hq*10{`2#fl&R;;D|w9UnFSmZ7#J?7+to8LM8tlmU-u;b z?UQ}VTi?bk3pu%awfCv?k86!LUwdfvbHU;Lym4o{x2E0YulSyD{lx80KPs~A=5x%- zwXeM$t#Hpx|6THhy>}Nz-Trkn`fsUhcvu?as#RTAuD{>DH-6Xp2JO{sF?&^$YGe** z?)ZPMZ!O{_UqVyNpdv@s)eV_ z()gutaDV^5jk6TXFN)QNE_ReQQUAoYY-Zf$0)v@L0;<~?qFDpY9ePf^dcCRsxs~wCwm<&HUaU`x0o((MnEc?sjOY3izx$EwEqaE< z>q`V|v-gOvb?k5Y77||lzE-u&WqP!!EZQo+Tylf)v$C)|Q)U0Z{`)St zlWFtT`FGtm{CdAe%KOR_f3EG?TaG7e|9M&{^`G6whJ$8$TeAPoo~plCg#7gD&AKi33ow>U5{;aS4-hXE|?6IBwev$I`r)Tzu zS4B3iWq4tC|Jfaj=`q3w&WcqPt)Khyi|`yahIU6#pU3;tyX5I}-!2J%Q)#=2%j^3p zg^hovav3~+U}1c)QtLt4#r@X8t-liDe?M!y$9Br`vR!!j%k|A=uDx8sk3CF;lh4h+p|i3>m^D!8SZk5~zsPHyA``h6) zPQkhY?-zxion*Z;rRbo#5ThN}x3~XuR_^8fx7qUUzrD5RHhsBodEHOQB|dvH)4eT! z&-;9Kse%+ z-_=e`In)pm8eaK%>&!=zZwspJ;>%xtKRD~_f=db>9wv8xM)UrDCCk36`Sz8ZdaVcV zql^M%gSD0X=O|CFdfTTey6&sTe80956_ZJ!JYV0~ZxGtAM?eqUP%=Wg)d9R<(Eq*H0Sg^O=w)*|; z+Yh$Z=eHleXL5D6_@DOELPD~vSL413)a=at6h3eLnycF`u-+E9^;z27C?{{)tY>vs z*X&=rYDF0*!?ZUYOVpvmE(r|xN?)d?TP&Y`^5w@uV+-jIVa6vN8RFR=KD<_3cyoVm z*J=h+W7SWg40h{Z#!q%w@r!v!Rrc;MgZH!JSigR&=u~mYTJ2EUqiESYZ^p6mPH748 zx$OmO>q?)Tz4c!w>b87N?1~V6d*L_LtXBoL#WRF5LzY%($?;a zy`PtUyLQX!y}IAa4^~x)zhMxVemq?-=a+f@vwf9!H<;|>TCm!yE#yPIY;uh6gT3o# zE3)wlElxS|X8&H#v?=ZnXFb1bygpXfmE+j+LmN}SO8s9ZbU@9RuFWaz+MD z1_p+(2Y08(mED?my?ahcrHtyW$al*OY<2S2r>)Ihx&Q5p_aUZ_wVC5uUw;c_TmLbv z=IUhA+xJX4o7Y5{3CNy~GfAEoBP8%QS4QLZ6t`zqW!4iseQvz_ceU_VN+b7lmn+tC zE3{6QuiY%QXI;mtbJ%=K9wkTQ+NnxW})B z77hGq6CW$wF+XskI9GE!sM30#?ftw7;>&qf zUHWhFAuRUmay_ zH|jp`Pyg^*l{IZ|RT|fy$6J4VOkTReF>cG912csx(|5f)ey}XysDNyj@ma3bM*nx5 zO7KsVZ+g{PBXTUz9u+gpbd-^Gx6BnT28EZ24>FqxI5Hyt>PEi(6z>;nBSuF;iMT zq+JLNTD*0y(n0&S-c$w#zLxVw3=Dn;clXCmvwZn|@0Tedkvr$s&I{f3J8b&z9Y^dV z9jGFwmMc-@#@}IMu`>YJ$BtbSF-E) zN(KXd(7^nhCEw39{l6b7`6vAKpV>3B?X#8CcW=AL+PLm@-~FerTN?O<7$f)i&f~0_ z`}6dU9$TIzhZkJebDeO@mYc66IMM6f>q$Qqn)1b-g`ecPZn&-DZS4%1jP=+1&pY1H zR>=4gzAx|Ds%PzbJ98K#l*PTOG@z;f7w5mZOa5!VT=}ql6@S;8T!DEzH%yGXBY1!M z|L3O;Y~l3V{e0o=)Nkwb64%e-J?8sw)y5-^@8{)Lv8JSLv+v%MD$!g1m-%fVmeShPk(o8(pHm0?48{eJ_lwcK!>xwi2V7_ zuWuW>lEJ2@cy{gct9sq}taH+i-LJmS^(|J3IbeMx|KXCOvv1wx`~TVc_3yCE+B*;O z&u{Nv{Oa5MS&rqh`)_-(FW=Cm!1Lkosm^QPIy!UzUh))@zw+buvsR@SpdH+x@l%JV zcc;faQ~A4Xdfh3u?yEhuqHf2cFC4x7=&0lNoaI%Y%dhIxty&l-dgNAGdER^nGrfu1 z&r9kh8!&F)Zp(AXj&bd>=E9)ECSoh58_j5OT(;r6LujjjnGVnKnK#+mI?w$xbDS_! z#c4w|V}5GRyz2LTZu}3RJ%lEU<@Y~bvOo1opsaP9 zydC{Q;@dPAo?6OLIBAjT>-W2kO^C=3+}n1jj{QK}0xkw{i6-{Y_PE|}U(f$4tDXO= zMVvon`!-g@M7}fWf=@_%EmU#s2r4rkiz+;e?y^VSR-08kYwA_@ zt6Oh=-dEhou;H2Ba}kCa?dNS682H5g{NJ^t{+^cm`t2{Wr(e6?xcb(?Vq@vN?OVL- zEpE@u&u5B>U&iz3=DP&Z#>^|vpWk6P68-z<3eNepG1ae~cE=nruMa=>>;2KkoqQ%& zSvLNfePzd^k4yWGss-oNv&^-s&)fR^^@qK(PmT*#rOo2B`rN-xXJUErsVA#H-duj>iO}Ysab5E1Z9?JtEU*8* z)@$Ekd2elF&o#>3LM zHCtUdM*BzE+P8manSRuJ@n*hPPRY92`tf&EXZ_jg=aL=s)>U}he#h`4)prX6b440F?|1O_dyg#G4@_7z}OxcF= zwGXbm==sJPZy(^E(+BB;MPV-87#2 z<@D8>ZL7CUFlOBFo}=dRA_i;g*uV2?_=IJx#oJyNy4T?$1_{a`!lWHyC1A~S8XtsWC`E?D%(E)Yt^@p zS6|=WzkN4zO6g;V`(7$%f>rJJe0N-Izu*7T0xON_8C)+!%6_h&uKMH4&vR!CZ>Tug zDs4V;Xr6z<>A9LOe?tRw0^h&?y-(_op4%4w^k3o6-H#G3&z|(J=-Vwd!KTRU`BhCJ zj}JUEjJ$HOPM>R1b1ci08LIlfIaAJ^wR-WpOz2SF$MpW~zlzhe7^7Z)hz&XU;B0oe zPV9 zP;!3Sj&hsGU_}8tcN@p~uBx9Rl?ny)EjMKUe*L_o@34F0{_js8U(q{w{z?w(3X8wnoNzc*U3c>duJ-PpdODTxI+7+@q>v z$$PDOTbD~WxobM}J$}75lKf!jdEIMPU-u*LIkgiQ7}`E3eyH&LE^#2>o~d5fcbykA z-s!#kJ%~pJb*tJ|FlT{HXcPDDCS0 zJN}o-`4TkD`@0|27r9pLK9}zC>trL(^Rtf^{g7UF>e!y`eI8Y7mbg!2{J-7PD);2! z9j=$8Rp(A9xw=E+-!$#!P^;cxh8N3K{x&oAJbtdaH@)%rm;ZW&Z|oOG9;+7ow{c0m zWy9-_(UUwFzLW=p+Ei&vr#qKTUE*JSH0+t?q`E|g$3G^h2r>NK>2m2ao6)r6o=S`x z{>?W`_ujQ>&-@+d86K@YK5c(p_N3?UwI(yFtNcB?L&GMVM}?u`>8?VB$3Jc{&3}E; zTkf}#{T?~v39mmg?K7=1jcR@nKWpt@6~+x#)A>?lSXyou&RrV0iT$QmmIO5 zTyoH%{pZ`K>*J?>`R6(B|E?wCJ>8Go)+u-}Fr5DQwXx^%YVKbjb}wJTu2=b{np^63 ztF}b-DRq^-&H24?u{+fs?_r+abzs7R4dut#O6)hBej0K5!2h^Ob$*+0vC%v<0<`D|1DYbMYADlaEbw)x-e zIj?`mE(J!0FX@Z57_Qkcez?&X!+q-i@2@SUTx&cT)|{(VkyT{eAiCnqfs-u%pL_ob z_WbX9>7{g0#B%RnoSyGzKKU8E(lo;E`i*UJXwoj zU;OHshS4sp2bNCKlR8kE@NNJ7+1qw!T}z$K!oc^*IFX~PFtDce^u^h`vn^6@hcNK` zH$IZN?b`pyXo2H36SVn+7#!@|f*3b+upF2iZt~4_%}g1upZ~jmOnY&)KieYpt_nk2 zu7)VX8Lscy9@Y#6Yujc2%wKu)+aCX0O^5$3T5`VN>P7Y{1_tR(ED4jIr)QQLukK#K zAmPOHAoua2A1wEU_TJrNxz_)Cy$}OSn`m0=Z__C*=jScyFR*0$`}5-;UCw{1FY`0p zc!U@n>djI)4=h%_nLPi{H^)8IDiVi+T9Ne=Fw$0U?Hx|L?C0tIqXjVqiC!vgw1gi}E_V=H1*Xu?C>D zXRzn{@xLm2eQw{}G6y`1T4mD0)es!}|Nj%w{{Ks~8PqE4<}G1gU-8G>Ygbo(Yh3Kk zWsmp8-dxOd+H}UI0;$5UU9t=pO7jb5Et&4M>#msGzi`#JpY#|w85Z1skbl*0D^o(Q zFvBD{%ZB-`;l16DR@Z2MDN`;FUz^w7(l?U-=~=V-?LMBdO>p+?-nyO3G@HEn+zaLncfOyg zob=9U!b1b?JNjh|4yTM&?)I{Pmj1msz3V$e#BG)XD(By8zTBrR_uKoJ>qp;xyj7py zN`=kT=WKW=9duJ)l;QS7h6h&sE;AYa9M!ew-6Icnuz(hWpBAIR$VId%yA439c5n=IA|4)|XtdR==zx#dsw zE8{#Mth$qN&aug{OdDRY9JudQ#eJW3@7)LURbL+WV0bX0ZIj-g!;cs3n0or+Y;U$t zKUFufBxuZ+ET8seb99|lo=~Uz1O|p_NmoxZfXtfAUi6P|E-1$fdiKYC+z}t4)^MR; zJ=56g#bkyEy;FyFo{M??_KS;Wdj3z#9eqcXL51SRSE&r`>p+@zO1W|V^;Bh0vCUv; z6n*;t@2(=}zGjvKMH^Wau2;_7w<^+9BJ6$P9HvwM9hn#+rj@Q?_#x++zOIld;p)k5 ze$OiX{J(WRpZ+L$-uGr=Xs@|HNAaZ{vm{^Y!@p8z_!!>owCi~P_p-?xPhKI=v{_E$ z*3}Fb3QqlBIyswZ$1DC{;suwluU?*WA)SY_;pxuxOO%--nQhq>pju+6I$yjHFCxsB&#`l^#g0Zd?*CBYt!_--n;&;-2@_U;Z}D zzEbl}F}@pIW=+eOtHtn6|K&Vp>w5M)rieO+d-bi!wTE|T*qx2uXFfgqvy|n|Pc!x% zc>4Cd%6a3BtO}eBPm_+7O1!f&6 zPu64>hG|W53} z;!8v6a>jd?{~Sqd`tM@&U|C_{p0XH`>Dk*%9(*^6e(Vp5AO<0ZNqpB?K72CuXIQi8 z&wn+~`ct>}%1^f0?=gFKzcFXSKUwJu5ga_fe_K9uSss!;Yx|Pt=XO4S@|Q!1;egQEqe2ay^WJ+%t<7dyu;*iRYD2}>9UA+N+}>+$zwzLF zZ54)J=2Idcp6~5`R2w+P>`>?Z@<(G7f;JC>+>{8ID`^F&w!K!j(h&YZ}HZ+D!FdHql#i1ol$@1F;Bxa{@1 zrcb-izhCnu^B&#}I&YX5ra1oKivR8K`oB7;Xn!yF;-_^6>j5oc2L0F8tM@;hx3B5? zpCwDGCotTQ2w|AO5V35(wD{5KJ7t;;mT)yJRck$!+W9|c((~<)a~o0@GBM1EOl3Xb zSk6$fr)~C@+vcF+&)DR)PPTPikT%@wtfr%kv-@$N(j2%z^vwJakRILcxe)M{}%HE0FEA#cHZ+UaG z`|cq>CI$w{m7Xq+A;RAOc$678$T}``iLAIE@v8AgI=jiV{O3gtEDRfD*}I8FKb53}>j>zT`IFk3X_YI3H*UGfesaz1(^J`UkiE&0SKi|I_$QU(DM$ z-la?rb`=J`DYUFIUgEY86lNZlzL(Aydpa;N+^BJW&sgyD!1?+2)je$DFKu6&kt09# zi{8CQdn;F|Y=3gSrc!cAAmav04esYw`rxu;*Pk~k=k=d#0{P@-SR~_ztF=wfeJ)MD zX341VGEn#itz>0g1y3J1(FTXnF|NMx9=@Og`br&W2UhnaV58V9U%7fv^xrtx? z7esYdn;Eg=?*V={BK#P3d5-s8L>5Q3XA49 z^0ad`)Pa1I@4+*f;l}avKA-+r?=%4g$GU@I3>iP3{&)6ch%wgVO8fGw_$gQ1=kv#1 z3xj_?Pt{{QVe-aK=JlI>%)8_tK0jKf!r<{`0>h2-f}Z-bp8TA<(?)?2l$^Hw)nb^p zhwb_L&6(F!&cD}vc~4tP{OtcKqm!SDRsNpfiu-kh%l>c#+lHHt59cj;4JxV6Sj28l zIWI8bh2%7TuU&}^k9W;pVn6H2PeDCF4+e(W=@Wbz)GO=aJ*Tfd_;YqR?liWO~BKcZ(z2zbY&tF9MJd-}|TG;&aed_sB6Bus1VPV*O=x-7` z!ft*b0vq?FhYO9{%N1d~6ZZgSV%>7^b8a_eWi59f`ed8^ zyO+4Hf3S3Y)JIU9o#o@<fgJYgcxSMO(^)sb?)WaNpZ)bcbVHOo?QE&G~SOXVe=GgZ5~yF zB|3ZJojt$A*z0x8-YIj~NUzJ*v)<-`qTIwUk38qu&sxnY#BktQM5uhjI<5xwFCT2H z7A-%pHaqg*s#E{tZS}g&f1dVEHK91l_xu0vJ>5y>h0bnF345Q;db`t>C4?czovFd) ze8Jy~2acDwEm^HrY4=5!A1dzZ%ce+F1={RWlyTYCO7c(XN-%~lCul&+I?87Db>0cTdYuY9?T+deH}W))?Nl{+c}L`S%H5R*3HT^4#>cd=WoCD6T@G^z{SENAfgLE@x; zDU+TrFT4qg5Bb$A7&y}YpMLP@lU&^6uikzPYZm?aKRIifWkTbr?@y;{SN&Z5?9c5@ z(;4P0eE25PKVXMN{KPNYWBTsZ)y+|VsmCnIC(4k$Bxc>m$x{E;F-%qW`1M|;3)J)k zncQ(*Np5<{eAfNPRv&jQe7s4B;VJulEiHyP3%xGed&l-xRPet)-Tb3%$#uRr#yzPF z-NrM%{+IPt+ZcI0auHL4>|}=gNniZ0XPoe#{v|ucasmUxwZo^h8Ls4i|G!j)LFKOh z>X~mB{@HIIzV1b7{Py$H`rN||)Pxwiog*!-SKeH~5OH4Rz-N`em!x=q#`}NzlfJVE zRC(VQ&|(mq%djK#lJ@io3>%E!uh#hg|G*B7d*`DoKB`sLNqgGwSv1|=@W6QkkXgwV zLJX(BsCv$SShQws{M0Y6vrX|+)u+SgBd z{{8u@MivHxnAPhTDuVdW*C%=2|9PlDKzg3NOZGns%B%Ei8?sL854l3t)EWJaj z5;l4^%r=dl_HCM}8zh=`4(?+bTU9&S!+#{_HfBc&9q+t3GIb z3-hK)Y7MDwKYok<*&{#w%fD1L29s#*eQze^ocjN}_$gQXZx+smv!P+rWmFkAh_(g2 zEd0AeBky5RPKwZj;HQ7xH?keBeWr5${L@vSxRqJGilL%q$!&eBhFP2M2F7zXq)z`| z|G1%1iBEpP+|`kjmxlh>vZP%8!Rx*?88s>les}w(-PhT|?alDZbt(I_i7Y=VX0rVF za-h9x;gbK8wb_Ii4iv1(l0J|+?SFm{(}Smv7yaPMza967*>ij3#q9Xdyssu#&g%;? zEPr>2vA31Q!JjSc<-yW>e^d^9ou$hz@oUoo`6pQrhpk}vQN_>MaNe`(_oV&r-!FZ- zUVJ$?UwzoR-s-{iK*kOG+KjaKSnGAIFS4vEF8565PtgHYJwgxiRczfZJ#V);<2mns zFSsT%ShI-fLDJb%iQ+F`)n2pu7RdPFh3fq6(kgprZGZE~_tT%aN&Bi@_5X`{=F9we ze*NZT8~fSir!*7U8{Qf$k!9F%?e=7riv4M#o#s3hGyETUft<**dIdv;5C8efr1|yb z*+nv+_msqln17u1_GobUk6ZP19j|wtI=}vNuLD4X1pj2McXw4!;hYz)*2x()ru+pUYzR6rFu{In1JEHQ&dr?qL>w(-?Ey zAjV93@$JUqwC{EJEm^W(x12Q(Dk~@J2dhX7&m-u z3lZ~6*dcp;mRG-S=sS(iA)fQ49(;HK+HQWp;m(d@$@eFhd=*n+c=7Lkv**0|tFPwy zmpqyfe_n{8=}>TCbKCyd8&>~qb~;>QWtQaYocGp`sV43cf96lodB1n^hl6$n3o$Hz zrTdiqu9`Z-y2&NH`IqDVELd`T&4;h?``qTot1$T8OE`7txa-56GSc;PRkavAm_&|R ztNwj=psiFfoK1zHAu-~)DuX)TkJ8t37%CXe-|pR6)VkhQR{ZEYMR{k|165L9tPGnE z-7cKF^V$lV^bF1h&w18*+#U=JtGAyMWeCqb`28<;Ww+ivaFbL}Tjo%w>F+;Ej0K0{TRNU?nhR#`!22VPxsuV8_u@6Kx#Py$C_-`16v<2`tgHte_5>Y zx%X1yN5AfIt^RmLbpOAzlWq3@nb5yenzP}n(aF!7x9o~lOFF}q@6Ob)RBpq(wTY(p zcL!XWzEcO(D7dyOjA4$&k?ZTSnHrwe|7A&?85aFd-}8UsSwCschRMYn+kzWim=?sp zVQ5gS>Rxg_!{YV(_e!0eygIVp3=J1{g)!t*F&*&!C46t*-inqb)df->3^{=T6_c0v z7l8XZ#cW@UTV43GQcX{kGD`{dGB`3ZNHl=PY?ds^Hn(B?&{h~&Gi!Ug{<<4b;>-sB%7k_04bf7IUnN zxcs=R84Bi3?^R`xC}IK)>+l?~0{QI8_4UzA4`xsLH)VU8eqF#N%QzA4lt|z+sR){&arSd==w0!G|kuCyKDK9g=@YqV@i;ao4|44zVXS=^)@FzFTL0A^XU)M z*;NzU9(~?p>i`Pe0*UpYcC48Vqr=a7`+e03=8h^1X7aoYJI}>r3o%UHtnzo;5_7*# zH8Z_0&NE){`P0$Dz&mGdGpjH(T#a6?%AoG|sqpnAh97H|n17h|=IGQpOhOFa$HW>` z7^a={{$(&dSwPO>`F%OXm-_0J|7Lm4v)^&v(dW}2E>C;I1)mT70*!vNCBuz!`0zj-o*>~p`AGU@sH8BcyT zS4kY7tNQoc0YCoN|2G;fFXU=CuTx#MKYM$lTmDkPu8or!ZuBWU z=$rJ;WWvJ$v3nqM-x;0!%>V6=RK2}kmwVyK=eq(fv9|yCrS4I6NacLI?#rc<;_A4* zTU|Xr|G4+B^~}E{Lw>U4^MfYT5@WR({N@}=zOKml!O-*lleagzwJljy7^dZT{LTwz zyfC?FTe${j!{%uQ)Am1K_5O9E`p+H5r|$ozR{8JRr+LrMA9MZK>AXk&z3$7MljfOR zDE@49PY%@JJG?7|A!h4C&Ia+G?n9r;Vt(-csx`gcF9`|_#t-|CyE+yDIiJnOAP;g&y@#UYoPRp(khD0T*o zgEcfpv~xA^_jEs6y!=O_)ejbi{G)LjzRGhpgeI^vtoy9CXjV!+f6Rx^v0?wB%H<`* zkKX_E?ZB!FECL*Bommfb2G{(#pv`d4T8}Gljabg4=aQTZLJZo6_!v|e%mg`?{>1RI$2GQOBXRc&_C|F@$~J2hmJSis{Un2Px|P|;CFDJ zp5%q|GFl8C3_7RUGeUOjpZdT1eR19slLi(B1A)hjcDP>BWtMvs%3aZ?s17QYj`Mq3 z&Az;$K!^Fp{eV-4_OFXPUhpMh((~<8OD>wJGVFMz!r*slHN@%X1Ew?9cwU-qZoyd4 zy=3~QZ?7SlLEC6bnZ0_t7;e>-#)!l}1-sS8c`bv*Mo5|T*vpTR zlYz-OEvNdJSi=h6Pk)>|#f#LKc2BBnzucg>z*_x+*%7XW*;{txCbvZ}ekk?Sf4+A6 zhuIsHC(W~JSXkqCNnY=V<$SXShB+(;{(O&Dd-=kl?QoASXM^j_$zKHZe#V^nx81fl zM#Q{O%7KYNVwqwX!yiy*a??T12I0qxen{o-ZLOZNq=w;f#myZWb$JI5K7H)Lz;o}e z>6~YiRTzG4_4Q`3b5n3fUMF?;grOm9PJjoy}m1wCdi4?aytE8j=??CG1;xhO2&xByNW*r@AIQp2O*RNnG`>M)ZUx76yYF=hX}r8y`HEjsp9`rdHwcj;dz+{T>W! z+!H(wT+=UOaQIVOZ?)Xf+;jTns`CDh$)wKmDIMUrPMwY)g=nCoov7;qU8y^o!SzVb6q1JK}6|6&_c- z-=WdP`|pnum7n|#Aj(Rkb6zk3R!r!hR(yJdgweZ~i@ zljfbg4Vr5FYP5u_LD<&jd4Lwfzo<*UD|YMNS*#kng_W~Gv8FC{Qr_|CybGKS{{7vL zykq+AJ(+aw?xM#_XQkBNj$!-|=4o%K$8{cR&=jtQ{gc1E19_!^|70A`(x3O!Rrh9d z+wG5Fn{e#c|F;MD7(nUSZ_>M6OWXe&dHN@u4g__oF9&Ebtb3JN`zJt%LI26xZ69W@ z|Ev;gIN{-*P0#=Fxw93`QDJD4l@QwSwVSPB!?wb2|7U{^0c>Akc4(JHZ!p6ao~29= zT>Q^lx3C)I%F3|K5>&R^+vs(DFL=4p zZv_Lxt+oKh52>E{w;r%Coc;f+@TtSG!p%#rPh_~^H`&HM`jRatsE7(>xTEnhIObC= z^P}_mCpYd3xzzChG`D!xpoOaeG?zJBdKRcl?_Dul*XG5pkW0>NMsv)2yB}%W?q~C6 zXnUQ+o4!&IG&>~r)N0$>x%n|7;hwwtm;Ber48DFST=l=b&q;gG_+>JOD1&-c&AZV1 zGyWglp<#FUcFx0jW(zjP>}|QefT>|YfqneNH8ZuUKqJ$tu{&JbeN0atoWu|>C4O}O zw33iZ^0^ll);eGMtP*Rc*L8nUry$1u>qq0qi+*r~ zi@)wuYjC)|N}D0hUaw34`;R}X*D(BO`?WUjMp*yUlI@K>PxFtte!QruuEMWscHu(4p!K8*(Pw?4Q5H-Aiif ze!a_|rd8C2U5ZxuoBH$j?_;io+TpCARlp1k3;wqph@A8;Ux!C8<`)MX8A;sSHL2Mn<{@7P`iUA%-Sa zCWcnV=Gq1ZRt5(1r7m4Y(U6;;l9^VCMT0R!gA|8f4Fdy%8pwvsq# YX1YdthT&^(xq~9o)78&qol`;+0L`~`^Z)<= literal 0 HcmV?d00001 diff --git a/v2/examples/customlayout/myfrontend/src/main.js b/v2/examples/customlayout/myfrontend/src/main.js new file mode 100644 index 00000000..4ad5a2ca --- /dev/null +++ b/v2/examples/customlayout/myfrontend/src/main.js @@ -0,0 +1,43 @@ +import './style.css'; +import './app.css'; + +import logo from './assets/images/logo-universal.png'; +import {Greet} from '../wailsjs/go/main/App'; + +document.querySelector('#app').innerHTML = ` + +

+
+ + +
+ +`; +document.getElementById('logo').src = logo; + +let nameElement = document.getElementById("name"); +nameElement.focus(); +let resultElement = document.getElementById("result"); + +// Setup the greet function +window.greet = function () { + // Get name + let name = nameElement.value; + + // Check if the input is empty + if (name === "") return; + + // Call App.Greet(name) + try { + Greet(name) + .then((result) => { + // Update result with data back from App.Greet() + resultElement.innerText = result; + }) + .catch((err) => { + console.error(err); + }); + } catch (err) { + console.error(err); + } +}; diff --git a/v2/examples/customlayout/myfrontend/src/style.css b/v2/examples/customlayout/myfrontend/src/style.css new file mode 100644 index 00000000..3940d6c6 --- /dev/null +++ b/v2/examples/customlayout/myfrontend/src/style.css @@ -0,0 +1,26 @@ +html { + background-color: rgba(27, 38, 54, 1); + text-align: center; + color: white; +} + +body { + margin: 0; + color: white; + font-family: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", + "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", + sans-serif; +} + +@font-face { + font-family: "Nunito"; + font-style: normal; + font-weight: 400; + src: local(""), + url("assets/fonts/nunito-v16-latin-regular.woff2") format("woff2"); +} + +#app { + height: 100vh; + text-align: center; +} diff --git a/v2/internal/app/app_bindings.go b/v2/internal/app/app_bindings.go index b87f41cd..14438126 100644 --- a/v2/internal/app/app_bindings.go +++ b/v2/internal/app/app_bindings.go @@ -60,29 +60,27 @@ func generateBindings(bindings *binding.Bindings) error { return err } - if projectConfig.WailsJSDir == "" { - projectConfig.WailsJSDir = filepath.Join(cwd, "frontend") - } - wrapperDir := filepath.Join(projectConfig.WailsJSDir, "wailsjs", "runtime") - _ = os.RemoveAll(wrapperDir) + wailsjsbasedir := filepath.Join(projectConfig.GetWailsJSDir(), "wailsjs") + + runtimeDir := filepath.Join(wailsjsbasedir, "runtime") + _ = os.RemoveAll(runtimeDir) extractor := gosod.New(wrapper.RuntimeWrapper) - err = extractor.Extract(wrapperDir, nil) + err = extractor.Extract(runtimeDir, nil) if err != nil { return err } - targetDir := filepath.Join(projectConfig.WailsJSDir, "wailsjs", "go") - err = os.RemoveAll(targetDir) + goBindingsDir := filepath.Join(wailsjsbasedir, "go") + err = os.RemoveAll(goBindingsDir) if err != nil { return err } - _ = fs.MkDirs(targetDir) + _ = fs.MkDirs(goBindingsDir) - err = bindings.GenerateGoBindings(targetDir) + err = bindings.GenerateGoBindings(goBindingsDir) if err != nil { return err } - wailsJSDir := filepath.Join(projectConfig.WailsJSDir, "wailsjs") - return fs.SetPermissions(wailsJSDir, 0755) + return fs.SetPermissions(wailsjsbasedir, 0755) } diff --git a/v2/internal/fs/fs.go b/v2/internal/fs/fs.go index 84e42a39..7deae981 100644 --- a/v2/internal/fs/fs.go +++ b/v2/internal/fs/fs.go @@ -378,3 +378,27 @@ func FindPathToFile(fsys fs.FS, file string) (string, error) { } return "", fmt.Errorf("no index.html found") } + +// FindFileInParents searches for a file in the current directory and all parent directories. +// Returns the absolute path to the file if found, otherwise an empty string +func FindFileInParents(path string, filename string) string { + + // Check for bad paths + if _, err := os.Stat(path); err != nil { + return "" + } + + var pathToFile string + for { + pathToFile = filepath.Join(path, filename) + if _, err := os.Stat(pathToFile); err == nil { + break + } + parent := filepath.Dir(path) + if parent == path { + return "" + } + path = parent + } + return pathToFile +} diff --git a/v2/internal/fs/fs_test.go b/v2/internal/fs/fs_test.go index 2cc52412..efc4929e 100644 --- a/v2/internal/fs/fs_test.go +++ b/v2/internal/fs/fs_test.go @@ -1,6 +1,7 @@ package fs import ( + "github.com/samber/lo" "os" "path/filepath" "testing" @@ -10,22 +11,80 @@ import ( func TestRelativePath(t *testing.T) { - is := is.New(t) + i := is.New(t) cwd, err := os.Getwd() - is.Equal(err, nil) + i.Equal(err, nil) // Check current directory actual := RelativePath(".") - is.Equal(actual, cwd) + i.Equal(actual, cwd) // Check 2 parameters actual = RelativePath("..", "fs") - is.Equal(actual, cwd) + i.Equal(actual, cwd) // Check 3 parameters including filename actual = RelativePath("..", "fs", "fs.go") expected := filepath.Join(cwd, "fs.go") - is.Equal(actual, expected) + i.Equal(actual, expected) } + +func Test_FindFileInParents(t *testing.T) { + tests := []struct { + name string + setup func() (startDir string, configDir string) + wantErr bool + }{ + { + name: "should error when no wails.json file is found in local or parent dirs", + setup: func() (string, string) { + tempDir := os.TempDir() + testDir := lo.Must(os.MkdirTemp(tempDir, "projectPath")) + _ = os.MkdirAll(testDir, 0755) + return testDir, "" + }, + wantErr: true, + }, + { + name: "should find wails.json in local path", + setup: func() (string, string) { + tempDir := os.TempDir() + testDir := lo.Must(os.MkdirTemp(tempDir, "projectPath")) + _ = os.MkdirAll(testDir, 0755) + configFile := filepath.Join(testDir, "wails.json") + _ = os.WriteFile(configFile, []byte("{}"), 0755) + return testDir, configFile + }, + wantErr: false, + }, + { + name: "should find wails.json in parent path", + setup: func() (string, string) { + tempDir := os.TempDir() + testDir := lo.Must(os.MkdirTemp(tempDir, "projectPath")) + _ = os.MkdirAll(testDir, 0755) + parentDir := filepath.Dir(testDir) + configFile := filepath.Join(parentDir, "wails.json") + _ = os.WriteFile(configFile, []byte("{}"), 0755) + return testDir, configFile + }, + wantErr: false, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + path, expectedPath := tt.setup() + defer func() { + if expectedPath != "" { + _ = os.Remove(expectedPath) + } + }() + got := FindFileInParents(path, "wails.json") + if got != expectedPath { + t.Errorf("FindFileInParents() got = %v, want %v", got, expectedPath) + } + }) + } +} diff --git a/v2/internal/project/project.go b/v2/internal/project/project.go index 0e3c8f32..7e2e7ffd 100644 --- a/v2/internal/project/project.go +++ b/v2/internal/project/project.go @@ -2,6 +2,7 @@ package project import ( "encoding/json" + "github.com/samber/lo" "os" "path/filepath" "runtime" @@ -39,7 +40,7 @@ type Project struct { Path string // Build directory - BuildDir string + BuildDir string `json:"build:dir"` // The output filename OutputFilename string `json:"outputfilename"` @@ -88,6 +89,30 @@ type Project struct { // Garble Obfuscated bool `json:"obfuscated"` GarbleArgs string `json:"garbleargs"` + + // Frontend directory + FrontendDir string `json:"frontend:dir"` +} + +func (p *Project) GetFrontendDir() string { + if filepath.IsAbs(p.FrontendDir) { + return p.FrontendDir + } + return filepath.Join(p.Path, p.FrontendDir) +} + +func (p *Project) GetWailsJSDir() string { + if filepath.IsAbs(p.WailsJSDir) { + return p.WailsJSDir + } + return filepath.Join(p.Path, p.WailsJSDir) +} + +func (p *Project) GetBuildDir() string { + if filepath.IsAbs(p.BuildDir) { + return p.BuildDir + } + return filepath.Join(p.Path, p.BuildDir) } func (p *Project) GetDevBuildCommand() string { @@ -119,6 +144,70 @@ func (p *Project) Save() error { return os.WriteFile(p.filename, data, 0755) } +func (p *Project) setDefaults() { + + if p.Path == "" { + p.Path = lo.Must(os.Getwd()) + } + if p.Version == "" { + p.Version = "2" + } + // Create default name if not given + if p.Name == "" { + p.Name = "wailsapp" + } + if p.OutputFilename == "" { + p.OutputFilename = p.Name + } + if p.FrontendDir == "" { + p.FrontendDir = "frontend" + } + if p.WailsJSDir == "" { + p.WailsJSDir = p.FrontendDir + } + if p.BuildDir == "" { + p.BuildDir = "build" + } + if p.DebounceMS == 0 { + p.DebounceMS = 100 + } + if p.DevServer == "" { + p.DevServer = "localhost:34115" + } + if p.NSISType == "" { + p.NSISType = "multiple" + } + if p.Info.CompanyName == "" { + p.Info.CompanyName = p.Name + } + if p.Info.ProductName == "" { + p.Info.ProductName = p.Name + } + if p.Info.ProductVersion == "" { + p.Info.ProductVersion = "1.0.0" + } + if p.Info.Copyright == nil { + v := "Copyright........." + p.Info.Copyright = &v + } + if p.Info.Comments == nil { + v := "Built using Wails (https://wails.io)" + p.Info.Comments = &v + } + + // Fix up OutputFilename + switch runtime.GOOS { + case "windows": + if !strings.HasSuffix(p.OutputFilename, ".exe") { + p.OutputFilename += ".exe" + } + case "darwin", "linux": + if strings.HasSuffix(p.OutputFilename, ".exe") { + p.OutputFilename = strings.TrimSuffix(p.OutputFilename, ".exe") + } + } +} + // Author stores details about the application author type Author struct { Name string `json:"name"` @@ -133,69 +222,28 @@ type Info struct { Comments *string `json:"comments"` } +// Parse the given JSON data into a Project struct +func Parse(projectData []byte) (*Project, error) { + project := &Project{} + err := json.Unmarshal(projectData, project) + if err != nil { + return nil, err + } + project.setDefaults() + return project, nil +} + // Load the project from the current working directory func Load(projectPath string) (*Project, error) { - - // Attempt to load project.json projectFile := filepath.Join(projectPath, "wails.json") rawBytes, err := os.ReadFile(projectFile) if err != nil { return nil, err } - - // Unmarshal JSON - var result Project - err = json.Unmarshal(rawBytes, &result) + result, err := Parse(rawBytes) if err != nil { return nil, err } - - // Fix up our project paths result.filename = projectFile - - if result.Version == "" { - result.Version = "2" - } - - // Create default name if not given - if result.Name == "" { - result.Name = "wailsapp" - } - - // Fix up OutputFilename - switch runtime.GOOS { - case "windows": - if !strings.HasSuffix(result.OutputFilename, ".exe") { - result.OutputFilename += ".exe" - } - case "darwin", "linux": - if strings.HasSuffix(result.OutputFilename, ".exe") { - result.OutputFilename = strings.TrimSuffix(result.OutputFilename, ".exe") - } - } - - if result.Info.CompanyName == "" { - result.Info.CompanyName = result.Name - } - if result.Info.ProductName == "" { - result.Info.ProductName = result.Name - } - if result.Info.ProductVersion == "" { - result.Info.ProductVersion = "1.0.0" - } - if result.Info.Copyright == nil { - v := "Copyright........." - result.Info.Copyright = &v - } - if result.Info.Comments == nil { - v := "Built using Wails (https://wails.io)" - result.Info.Comments = &v - } - - if result.DevServer == "" { - result.DevServer = "localhost:34115" - } - - // Return our project data - return &result, nil + return result, nil } diff --git a/v2/internal/project/project_test.go b/v2/internal/project/project_test.go new file mode 100644 index 00000000..0ad29d96 --- /dev/null +++ b/v2/internal/project/project_test.go @@ -0,0 +1,129 @@ +package project_test + +import ( + "github.com/samber/lo" + "github.com/wailsapp/wails/v2/internal/project" + "os" + "path/filepath" + "runtime" + "testing" +) + +func TestProject_GetFrontendDir(t *testing.T) { + cwd := lo.Must(os.Getwd()) + tests := []struct { + name string + inputJSON string + want string + wantError bool + }{ + { + name: "Should use 'frontend' by default", + inputJSON: "{}", + want: filepath.ToSlash(filepath.Join(cwd, "frontend")), + wantError: false, + }, + { + name: "Should resolve a relative path with no project path", + inputJSON: `{"frontend:dir": "./frontend"}`, + want: filepath.ToSlash(filepath.Join(cwd, "frontend")), + wantError: false, + }, + { + name: "Should resolve a relative path with project path set", + inputJSON: `{"frontend:dir": "./frontend", "projectdir": "/home/user/project"}`, + want: "/home/user/project/frontend", + wantError: false, + }, + { + name: "Should honour an absolute path", + inputJSON: func() string { + if runtime.GOOS == "windows" { + return `{"frontend:dir": "C:\\frontend", "projectdir": "C:\\project"}` + } else { + return `{"frontend:dir": "/home/myproject/frontend", "projectdir": "/home/user/project"}` + } + }(), + want: func() string { + if runtime.GOOS == "windows" { + return `C:/frontend` + } else { + return `/home/myproject/frontend` + } + }(), + wantError: false, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + proj, err := project.Parse([]byte(tt.inputJSON)) + if err != nil && !tt.wantError { + t.Errorf("Error parsing project: %s", err) + } + got := proj.GetFrontendDir() + got = filepath.ToSlash(got) + if got != tt.want { + t.Errorf("GetFrontendDir() = %v, want %v", got, tt.want) + } + }) + } +} +func TestProject_GetBuildDir(t *testing.T) { + cwd := lo.Must(os.Getwd()) + tests := []struct { + name string + inputJSON string + want string + wantError bool + }{ + { + name: "Should use 'build' by default", + inputJSON: "{}", + want: filepath.ToSlash(filepath.Join(cwd, "build")), + wantError: false, + }, + { + name: "Should resolve a relative path with no project path", + inputJSON: `{"build:dir": "./build"}`, + want: filepath.ToSlash(filepath.Join(cwd, "build")), + wantError: false, + }, + { + name: "Should resolve a relative path with project path set", + inputJSON: `{"build:dir": "./build", "projectdir": "/home/user/project"}`, + want: "/home/user/project/build", + wantError: false, + }, + { + name: "Should honour an absolute path", + inputJSON: func() string { + if runtime.GOOS == "windows" { + return `{"build:dir": "C:\\build", "projectdir": "C:\\project"}` + } else { + return `{"build:dir": "/home/myproject/build", "projectdir": "/home/user/project"}` + } + }(), + want: func() string { + if runtime.GOOS == "windows" { + return `C:/build` + } else { + return `/home/myproject/build` + } + }(), + wantError: false, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + proj, err := project.Parse([]byte(tt.inputJSON)) + if err != nil && !tt.wantError { + t.Errorf("Error parsing project: %s", err) + } + got := proj.GetBuildDir() + got = filepath.ToSlash(got) + if got != tt.want { + t.Errorf("GetFrontendDir() = %v, want %v", got, tt.want) + } + }) + } +} diff --git a/v2/pkg/buildassets/buildassets.go b/v2/pkg/buildassets/buildassets.go index 5cd12879..26401745 100644 --- a/v2/pkg/buildassets/buildassets.go +++ b/v2/pkg/buildassets/buildassets.go @@ -7,11 +7,11 @@ import ( "fmt" iofs "io/fs" "os" - "path" "path/filepath" "text/template" "github.com/leaanthony/gosod" + "github.com/samber/lo" "github.com/wailsapp/wails/v2/internal/fs" "github.com/wailsapp/wails/v2/internal/project" ) @@ -19,9 +19,12 @@ import ( //go:embed build var assets embed.FS -const ( - rootFolder = "build" -) +// Same as assets but chrooted into /build/ +var buildAssets iofs.FS + +func init() { + buildAssets = lo.Must(iofs.Sub(assets, "build")) +} // Install will install all default project assets func Install(targetDir string) error { @@ -36,20 +39,19 @@ func Install(targetDir string) error { // GetLocalPath returns the local path of the requested build asset file func GetLocalPath(projectData *project.Project, file string) string { - return filepath.Clean(filepath.Join(projectData.Path, rootFolder, filepath.FromSlash(file))) + return filepath.Clean(filepath.Join(projectData.GetBuildDir(), filepath.FromSlash(file))) } // ReadFile reads the file from the project build folder. // If the file does not exist it falls back to the embedded file and the file will be written // to the disk for customisation. func ReadFile(projectData *project.Project, file string) ([]byte, error) { - fs := os.DirFS(filepath.ToSlash(projectData.Path)) // os.DirFs always operates on "/" as separatator - file = path.Join(rootFolder, file) + localFilePath := GetLocalPath(projectData, file) - content, err := iofs.ReadFile(fs, file) + content, err := os.ReadFile(localFilePath) if errors.Is(err, iofs.ErrNotExist) { // The file does not exist, let's read it from the assets FS and write it to disk - content, err := iofs.ReadFile(assets, file) + content, err := iofs.ReadFile(buildAssets, file) if err != nil { return nil, err } @@ -83,8 +85,7 @@ func ReadFileWithProjectData(projectData *project.Project, file string) ([]byte, // ProjectInfo if necessary. // It will also write the resolved final file back to the project build folder. func ReadOriginalFileWithProjectDataAndSave(projectData *project.Project, file string) ([]byte, error) { - file = path.Join(rootFolder, file) - content, err := iofs.ReadFile(assets, file) + content, err := iofs.ReadFile(buildAssets, file) if err != nil { return nil, fmt.Errorf("Unable to read file %s: %w", file, err) } @@ -124,15 +125,15 @@ func resolveProjectData(content []byte, projectData *project.Project) ([]byte, e } func writeFileSystemFile(projectData *project.Project, file string, content []byte) error { - path := filepath.Clean(filepath.Join(projectData.Path, filepath.FromSlash(file))) + targetPath := GetLocalPath(projectData, file) - if dir := filepath.Dir(path); !fs.DirExists(dir) { + if dir := filepath.Dir(targetPath); !fs.DirExists(dir) { if err := fs.MkDirs(dir, 0755); err != nil { return fmt.Errorf("Unable to create directory: %w", err) } } - if err := os.WriteFile(path, content, 0644); err != nil { + if err := os.WriteFile(targetPath, content, 0644); err != nil { return err } return nil diff --git a/v2/pkg/commands/build/base.go b/v2/pkg/commands/build/base.go index 71bc11d6..4dc46caf 100644 --- a/v2/pkg/commands/build/base.go +++ b/v2/pkg/commands/build/base.go @@ -263,9 +263,9 @@ func (b *BaseBuilder) CompileProject(options *Options) error { } // Get application build directory - appDir := options.BuildDirectory - if options.CleanBuildDirectory { - err = cleanBuildDirectory(options) + appDir := options.BinDirectory + if options.CleanBinDirectory { + err = cleanBinDirectory(options) if err != nil { return err } @@ -291,6 +291,7 @@ func (b *BaseBuilder) CompileProject(options *Options) error { cmd.Dir = b.projectData.Path // Add CGO flags + // TODO: Remove this as we don't generate headers any more // We use the project/build dir as a temporary place for our generated c headers buildBaseDir, err := fs.RelativeToCwd("build") if err != nil { @@ -487,6 +488,9 @@ func (b *BaseBuilder) NpmInstallUsingCommand(sourceDir string, installCommand st // Shortcut installation if install == false { + if verbose { + println("Skipping npm install") + } return nil } @@ -543,7 +547,10 @@ func (b *BaseBuilder) BuildFrontend(outputLogger *clilogger.CLILogger) error { verbose := b.options.Verbosity == VERBOSE - frontendDir := filepath.Join(b.projectData.Path, "frontend") + frontendDir := b.projectData.GetFrontendDir() + if !fs.DirExists(frontendDir) { + return fmt.Errorf("frontend directory '%s' does not exist", frontendDir) + } // Check there is an 'InstallCommand' provided in wails.json installCommand := b.projectData.InstallCommand diff --git a/v2/pkg/commands/build/build.go b/v2/pkg/commands/build/build.go index 2c85565a..28704f37 100644 --- a/v2/pkg/commands/build/build.go +++ b/v2/pkg/commands/build/build.go @@ -35,38 +35,38 @@ const ( // Options contains all the build options as well as the project data type Options struct { - LDFlags string // Optional flags to pass to linker - UserTags []string // Tags to pass to the Go compiler - Logger *clilogger.CLILogger // All output to the logger - OutputType string // EG: desktop, server.... - Mode Mode // release or dev - ProjectData *project.Project // The project data - Pack bool // Create a package for the app after building - Platform string // The platform to build for - Arch string // The architecture to build for - Compiler string // The compiler command to use - SkipModTidy bool // Skip mod tidy before compile - IgnoreFrontend bool // Indicates if the frontend does not need building - IgnoreApplication bool // Indicates if the application does not need building - OutputFile string // Override the output filename - BuildDirectory string // Directory to use for building the application - CleanBuildDirectory bool // Indicates if the build directory should be cleaned before building - CompiledBinary string // Fully qualified path to the compiled binary - KeepAssets bool // Keep the generated assets/files - Verbosity int // Verbosity level (0 - silent, 1 - default, 2 - verbose) - Compress bool // Compress the final binary - CompressFlags string // Flags to pass to UPX - WebView2Strategy string // WebView2 installer strategy - RunDelve bool // Indicates if we should run delve after the build - WailsJSDir string // Directory to generate the wailsjs module - ForceBuild bool // Force - BundleName string // Bundlename for Mac - TrimPath bool // Use Go's trimpath compiler flag - RaceDetector bool // Build with Go's race detector - WindowsConsole bool // Indicates that the windows console should be kept - Obfuscated bool // Indicates that bound methods should be obfuscated - GarbleArgs string // The arguments for Garble - SkipBindings bool // Skip binding generation + LDFlags string // Optional flags to pass to linker + UserTags []string // Tags to pass to the Go compiler + Logger *clilogger.CLILogger // All output to the logger + OutputType string // EG: desktop, server.... + Mode Mode // release or dev + ProjectData *project.Project // The project data + Pack bool // Create a package for the app after building + Platform string // The platform to build for + Arch string // The architecture to build for + Compiler string // The compiler command to use + SkipModTidy bool // Skip mod tidy before compile + IgnoreFrontend bool // Indicates if the frontend does not need building + IgnoreApplication bool // Indicates if the application does not need building + OutputFile string // Override the output filename + BinDirectory string // Directory to use to write the built applications + CleanBinDirectory bool // Indicates if the bin output directory should be cleaned before building + CompiledBinary string // Fully qualified path to the compiled binary + KeepAssets bool // Keep the generated assets/files + Verbosity int // Verbosity level (0 - silent, 1 - default, 2 - verbose) + Compress bool // Compress the final binary + CompressFlags string // Flags to pass to UPX + WebView2Strategy string // WebView2 installer strategy + RunDelve bool // Indicates if we should run delve after the build + WailsJSDir string // Directory to generate the wailsjs module + ForceBuild bool // Force + BundleName string // Bundlename for Mac + TrimPath bool // Use Go's trimpath compiler flag + RaceDetector bool // Build with Go's race detector + WindowsConsole bool // Indicates that the windows console should be kept + Obfuscated bool // Indicates that bound methods should be obfuscated + GarbleArgs string // The arguments for Garble + SkipBindings bool // Skip binding generation } // Build the project! @@ -81,48 +81,32 @@ func Build(options *Options) (string, error) { return "", err } - // Load project - projectData, err := project.Load(cwd) - if err != nil { - return "", err - } - options.ProjectData = projectData - - // Add default path if it doesn't exist - if projectData.Path == "" { - projectData.Path = cwd - } - // wails js dir - if projectData.WailsJSDir != "" { - options.WailsJSDir = projectData.WailsJSDir - } else { - options.WailsJSDir = filepath.Join(cwd, "frontend") - } + options.WailsJSDir = options.ProjectData.GetWailsJSDir() // Set build directory - options.BuildDirectory = filepath.Join(options.ProjectData.Path, "build", "bin") + options.BinDirectory = filepath.Join(options.ProjectData.GetBuildDir(), "bin") // Save the project type - projectData.OutputType = options.OutputType + options.ProjectData.OutputType = options.OutputType // Create builder var builder Builder - switch projectData.OutputType { + switch options.OutputType { case "desktop": builder = newDesktopBuilder(options) case "dev": builder = newDesktopBuilder(options) default: - return "", fmt.Errorf("cannot build assets for output type %s", projectData.OutputType) + return "", fmt.Errorf("cannot build assets for output type %s", options.ProjectData.OutputType) } // Set up our clean up method defer builder.CleanUp() // Initialise Builder - builder.SetProjectData(projectData) + builder.SetProjectData(options.ProjectData) hookArgs := map[string]string{ "${platform}": options.Platform + "/" + options.Arch, @@ -263,9 +247,9 @@ func execBuildApplication(builder Builder, options *Options) (string, error) { // Build amd64 first options.Arch = "amd64" options.OutputFile = amd64Filename - options.CleanBuildDirectory = false + options.CleanBinDirectory = false if options.Verbosity == VERBOSE { - outputLogger.Println("\nBuilding AMD64 Target: %s", filepath.Join(options.BuildDirectory, options.OutputFile)) + outputLogger.Println("\nBuilding AMD64 Target: %s", filepath.Join(options.BinDirectory, options.OutputFile)) } err := builder.CompileProject(options) if err != nil { @@ -274,9 +258,9 @@ func execBuildApplication(builder Builder, options *Options) (string, error) { // Build arm64 options.Arch = "arm64" options.OutputFile = arm64Filename - options.CleanBuildDirectory = false + options.CleanBinDirectory = false if options.Verbosity == VERBOSE { - outputLogger.Println("Building ARM64 Target: %s", filepath.Join(options.BuildDirectory, options.OutputFile)) + outputLogger.Println("Building ARM64 Target: %s", filepath.Join(options.BinDirectory, options.OutputFile)) } err = builder.CompileProject(options) @@ -287,21 +271,21 @@ func execBuildApplication(builder Builder, options *Options) (string, error) { if options.Verbosity == VERBOSE { outputLogger.Println(" Running lipo: lipo -create -output %s %s %s", outputFile, amd64Filename, arm64Filename) } - _, stderr, err := shell.RunCommand(options.BuildDirectory, "lipo", "-create", "-output", outputFile, amd64Filename, arm64Filename) + _, stderr, err := shell.RunCommand(options.BinDirectory, "lipo", "-create", "-output", outputFile, amd64Filename, arm64Filename) if err != nil { return "", fmt.Errorf("%s - %s", err.Error(), stderr) } // Remove temp binaries - err = fs.DeleteFile(filepath.Join(options.BuildDirectory, amd64Filename)) + err = fs.DeleteFile(filepath.Join(options.BinDirectory, amd64Filename)) if err != nil { return "", err } - err = fs.DeleteFile(filepath.Join(options.BuildDirectory, arm64Filename)) + err = fs.DeleteFile(filepath.Join(options.BinDirectory, arm64Filename)) if err != nil { return "", err } options.ProjectData.OutputFilename = outputFile - options.CompiledBinary = filepath.Join(options.BuildDirectory, outputFile) + options.CompiledBinary = filepath.Join(options.BinDirectory, outputFile) } else { err := builder.CompileProject(options) if err != nil { @@ -392,7 +376,7 @@ func executeBuildHook(outputLogger *clilogger.CLILogger, options *Options, hookI outputLogger.Println("%s", strings.Join(args, " ")) } - stdout, stderr, err := shell.RunCommand(options.BuildDirectory, args[0], args[1:]...) + stdout, stderr, err := shell.RunCommand(options.BinDirectory, args[0], args[1:]...) if options.Verbosity == VERBOSE { println(stdout) } diff --git a/v2/pkg/commands/build/builder.go b/v2/pkg/commands/build/builder.go index 725e9871..4840341c 100644 --- a/v2/pkg/commands/build/builder.go +++ b/v2/pkg/commands/build/builder.go @@ -8,7 +8,6 @@ import ( // Builder defines a builder that can build Wails applications type Builder interface { SetProjectData(projectData *project.Project) - BuildAssets(*Options) error BuildFrontend(*clilogger.CLILogger) error CompileProject(*Options) error OutputFilename(*Options) string diff --git a/v2/pkg/commands/build/desktop.go b/v2/pkg/commands/build/desktop.go index 218866bf..c54eb303 100644 --- a/v2/pkg/commands/build/desktop.go +++ b/v2/pkg/commands/build/desktop.go @@ -1,10 +1,5 @@ package build -import ( - "github.com/wailsapp/wails/v2/internal/fs" - "github.com/wailsapp/wails/v2/pkg/buildassets" -) - // DesktopBuilder builds applications for the desktop type DesktopBuilder struct { *BaseBuilder @@ -15,18 +10,3 @@ func newDesktopBuilder(options *Options) *DesktopBuilder { BaseBuilder: NewBaseBuilder(options), } } - -// BuildAssets builds the assets for the desktop application -func (d *DesktopBuilder) BuildAssets(options *Options) error { - - // Check assets directory exists - if !fs.DirExists(options.ProjectData.BuildDir) { - // Path to default assets - err := buildassets.Install(options.ProjectData.Path) - if err != nil { - return err - } - } - - return nil -} diff --git a/v2/pkg/commands/build/packager.go b/v2/pkg/commands/build/packager.go index 9e2681a2..92ce37e9 100644 --- a/v2/pkg/commands/build/packager.go +++ b/v2/pkg/commands/build/packager.go @@ -3,14 +3,12 @@ package build import ( "bytes" "fmt" - "image" - "os" - "path/filepath" - "runtime" - "github.com/leaanthony/winicon" "github.com/tc-hib/winres" "github.com/tc-hib/winres/version" + "image" + "os" + "path/filepath" "github.com/jackmordaunt/icns" "github.com/pkg/errors" @@ -41,10 +39,10 @@ func packageProject(options *Options, platform string) error { return nil } -// cleanBuildDirectory will remove an existing build directory and recreate it -func cleanBuildDirectory(options *Options) error { +// cleanBinDirectory will remove an existing bin directory and recreate it +func cleanBinDirectory(options *Options) error { - buildDirectory := options.BuildDirectory + buildDirectory := options.BinDirectory // Clear out old builds if fs.DirExists(buildDirectory) { @@ -63,11 +61,6 @@ func cleanBuildDirectory(options *Options) error { return nil } -// Gets the platform dependent package assets directory -func getPackageAssetsDirectory() string { - return fs.RelativePath("internal/packager", runtime.GOOS) -} - func packageApplicationForDarwin(options *Options) error { var err error @@ -78,7 +71,7 @@ func packageApplicationForDarwin(options *Options) error { bundlename = options.ProjectData.Name + ".app" } - contentsDirectory := filepath.Join(options.BuildDirectory, bundlename, "/Contents") + contentsDirectory := filepath.Join(options.BinDirectory, bundlename, "/Contents") exeDir := filepath.Join(contentsDirectory, "/MacOS") err = fs.MkDirs(exeDir, 0755) if err != nil { @@ -174,30 +167,7 @@ func packageApplicationForWindows(options *Options) error { return nil } -func packageApplicationForLinux(options *Options) error { - // Generate icon - //var err error - //err = generateIcoFile(options) - //if err != nil { - // return err - //} - // - //// Ensure Manifest is present - //err = generateManifest(options) - //if err != nil { - // return err - //} - // - //// Create syso file - //err = compileResources(options) - //if err != nil { - // return err - //} - - return nil -} - -func generateManifest(options *Options) error { +func packageApplicationForLinux(_ *Options) error { return nil } @@ -238,7 +208,7 @@ func compileResources(options *Options) error { defer func() { os.Chdir(currentDir) }() - windowsDir := filepath.Join(options.ProjectData.Path, "build", "windows") + windowsDir := filepath.Join(options.ProjectData.GetBuildDir(), "windows") err = os.Chdir(windowsDir) if err != nil { return err diff --git a/website/static/schemas/config.v2.json b/website/static/schemas/config.v2.json index f5a6935a..0f90bd15 100644 --- a/website/static/schemas/config.v2.json +++ b/website/static/schemas/config.v2.json @@ -19,15 +19,39 @@ "type": "string", "description": "Additional directories to trigger reloads (comma separated). Often, this is only used for advanced asset configurations." }, + "build:dir": { + "type": "string", + "description": "The directory where the build files reside.", + "default": "build", + "examples": [ + "./build", + "/absolute/path/to/build", + "C:\\absolute\\path\\to\\build" + ] + }, + "frontend:dir": { + "type": "string", + "description": "The directory where the frontend files reside.", + "default": "frontend", + "examples": [ + "./src", + "/absolute/path/to/frontend", + "C:\\absolute\\path\\to\\frontend" + ] + }, "frontend:install": { "type": "string", "description": "The command to install dependencies. Run in the frontend directory.", - "examples": [ "npm install" ] + "examples": [ + "npm install" + ] }, "frontend:build": { "type": "string", "description": "The command to build the assets. Run in the frontend directory.", - "examples": ["npm run build"] + "examples": [ + "npm run build" + ] }, "frontend:dev": { "type": "string", @@ -58,7 +82,7 @@ "type": "string", "description": "Relative path to the directory where the auto-generated JS modules will be created.", "format": "uri-reference", - "default": "./frontend" + "default": "The value of frontend:dir" }, "version": { "description": "Project config version",