From 71f113a5e68f9b4fc56ab1711fd888a48cf3e9f7 Mon Sep 17 00:00:00 2001 From: Mahesh Sharma Date: Tue, 13 Dec 2022 12:52:38 +0545 Subject: [PATCH] rebase-17 --- .../Controllers/Admin/AboutUsController.php | 6 + .../Admin/VisaServiceController.php | 241 +++++++++++++++ .../Admin/VisaServiceSectionController.php | 281 ++++++++++++++++++ app/Http/Controllers/HomeController.php | 2 + app/Http/Controllers/ServiceController.php | 17 +- app/Models/User.php | 6 + app/Models/VisaService.php | 4 + app/Models/VisaServiceSection.php | 18 ++ app/Models/VisaServiceSectionPoint.php | 16 + config/custom.php | 2 +- ...22_050244_add_point_title_to_abouts_us.php | 33 ++ ...944_create_visa_service_sections_table.php | 45 +++ ...eate_visa_service_section_points_table.php | 34 +++ public/cd20e81c0285e201b4badb6adb9db934.jpeg | Bin 0 -> 32027 bytes .../13/a7cb5c685493b0351d53a1da0e34dc77.svg | 10 + resources/views/about.blade.php | 18 +- .../views/admin/layouts/menubar.blade.php | 18 +- .../views/admin/visa_service/create.blade.php | 197 ++++++++++++ .../views/admin/visa_service/edit.blade.php | 193 ++++++++++++ .../views/admin/visa_service/index.blade.php | 131 ++++++++ .../views/admin/visa_service/show.blade.php | 172 +++++++++++ .../visa_service_section/create.blade.php | 163 ++++++++++ .../admin/visa_service_section/edit.blade.php | 186 ++++++++++++ .../visa_service_section/index.blade.php | 113 +++++++ .../admin/visa_service_section/show.blade.php | 146 +++++++++ resources/views/layout/app.blade.php | 2 +- resources/views/service_detail.blade.php | 56 ++-- resources/views/services.blade.php | 24 +- routes/web.php | 39 ++- 29 files changed, 2105 insertions(+), 68 deletions(-) create mode 100644 app/Http/Controllers/Admin/VisaServiceController.php create mode 100644 app/Http/Controllers/Admin/VisaServiceSectionController.php create mode 100644 app/Models/VisaServiceSection.php create mode 100644 app/Models/VisaServiceSectionPoint.php create mode 100644 database/migrations/2022_11_22_050244_add_point_title_to_abouts_us.php create mode 100644 database/migrations/2022_12_13_035944_create_visa_service_sections_table.php create mode 100644 database/migrations/2022_12_13_043238_create_visa_service_section_points_table.php create mode 100644 public/cd20e81c0285e201b4badb6adb9db934.jpeg create mode 100644 public/images/visa_service/2022/12/13/a7cb5c685493b0351d53a1da0e34dc77.svg create mode 100644 resources/views/admin/visa_service/create.blade.php create mode 100644 resources/views/admin/visa_service/edit.blade.php create mode 100644 resources/views/admin/visa_service/index.blade.php create mode 100644 resources/views/admin/visa_service/show.blade.php create mode 100644 resources/views/admin/visa_service_section/create.blade.php create mode 100644 resources/views/admin/visa_service_section/edit.blade.php create mode 100644 resources/views/admin/visa_service_section/index.blade.php create mode 100644 resources/views/admin/visa_service_section/show.blade.php diff --git a/app/Http/Controllers/Admin/AboutUsController.php b/app/Http/Controllers/Admin/AboutUsController.php index 3f20c7b..61875ac 100644 --- a/app/Http/Controllers/Admin/AboutUsController.php +++ b/app/Http/Controllers/Admin/AboutUsController.php @@ -58,6 +58,7 @@ class AboutUsController extends Controller 'description' => 'required', + 'sub_description' => 'required', 'image' => 'required|file|mimes:jpeg,png,jpg', 'keyword' => 'required' ]); @@ -67,7 +68,10 @@ class AboutUsController extends Controller $setting->description = strip_tags(\request('description')); $setting->sub_description = strip_tags(\request('sub_description')); $setting->status = \request('status'); + $setting->title = \request('title'); + $setting->bottom_title = \request('bottom_title'); $setting->keyword = \request('keyword'); + $setting->point_title = strip_tags(\request('point_title')); $setting->seo_title = \request('seo_title'); $setting->meta_keyword = strip_tags(\request('meta_keyword')); $setting->seo_description = strip_tags(\request('seo_description')); @@ -155,6 +159,8 @@ class AboutUsController extends Controller $setting->description = strip_tags(\request('description')); $setting->sub_description = strip_tags(\request('sub_description')); $setting->status = \request('status'); + $setting->title = \request('title'); + $setting->bottom_title = \request('bottom_title'); $setting->keyword = \request('keyword'); $setting->seo_title = \request('seo_title'); $setting->meta_keyword = strip_tags(\request('meta_keyword')); diff --git a/app/Http/Controllers/Admin/VisaServiceController.php b/app/Http/Controllers/Admin/VisaServiceController.php new file mode 100644 index 0000000..557ad36 --- /dev/null +++ b/app/Http/Controllers/Admin/VisaServiceController.php @@ -0,0 +1,241 @@ +where('name','like','%'.$key.'%'); + } + if(\request('status')){ + $key = \request('status'); + $services = $services->where('status',$key); + } + $services = $services->paginate(config('custom.per_page')); + return view($this->view.'index',compact('services')); + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create() + { + return view($this->view.'create'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + + $this->validate(\request(),[ + 'name' => 'required', + 'seo_title' => 'required', + 'short_description' => 'required', + 'keywords'=>'required', + 'icon' => 'file|mimes:jpeg,png,jpg,svg,' + ]); + $service = new VisaService(); + $service->name = \request('name'); + // $service->image = \request('image'); + // $service->image_title = \request('image_title'); + // $service->top_description = \request('top_description'); + // $service->image_description = \request('image_description'); + // $service->bottom_description = \request('bottom_description'); + $service->seo_description = strip_tags(\request('seo_description')); + $service->seo_title = \request('seo_title'); + $service->keywords = \request('keywords'); + // $service->icon = \request('icon'); + $service->meta_keywords = strip_tags(\request('meta_keywords')); + $service->short_description = strip_tags(\request('short_description')); + // $service->point_title = \request('point_title'); + // $service->description_title = \request('description_title'); + $service->status = \request('status'); + $service->order_by = \request('order_by'); + // $service->image_alt = \request('image_alt'); + $service->slug = Setting::create_slug(\request('seo_title')); + + + if($request->hasFile('icon')){ + $extension = \request()->file('icon')->getClientOriginalExtension(); + $image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder + + $count = rand(100,999); + + $out_put_path = User::save_image(\request('icon'),$extension,$count,$image_folder_type); + is_array($out_put_path) ? $service->icon = $out_put_path[0] : $service->icon = $out_put_path; + } + + + if($service->save()){ + // $points = $request->points; + // foreach($points as $point){ + // $service_point = new ServicePoint(); + // $service_point->service_id = $service->id; + // $service_point->point = $point; + // $service_point->save(); + // } + Session::flash('success','Service has been created!'); + return redirect($this->redirect); + + } + + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id) + { + $service = new VisaService(); + + + $service = $service->findorfail($id); + + + return view($this->view . 'show', compact('service')); + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id) + { + $service = new VisaService(); + + + $service = $service->findorfail($id); + + + return view($this->view . 'edit', compact('service')); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + $this->validate(\request(),[ + + 'name' => 'required', + 'short_description' => 'required', + 'seo_title' => 'required', + 'keywords'=>'required', + + ]); + $service = new VisaService(); + $service = $service->findorfail($id); + $service->name = \request('name'); + $service->short_description = \request('short_description'); + $service->seo_description = \request('seo_description'); + $service->seo_title = \request('seo_title'); + $service->keywords = \request('keywords'); + + $service->meta_keywords = \request('meta_keywords'); + $service->status = \request('status'); + $service->order_by = \request('order_by'); + $service->slug = Setting::create_slug(\request('seo_title')); + + if($request->hasFile('icon')){ + + $extension = \request()->file('icon')->getClientOriginalExtension(); + + $image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder + $count = rand(100,999); + $out_put_path = User::save_image(\request('icon'),$extension,$count,$image_folder_type); + + + if (is_file(public_path().'/'.$service->icon) && file_exists(public_path().'/'.$service->icon)){ + unlink(public_path().'/'.$service->icon); + } + is_array($out_put_path) ? $service->icon = $out_put_path[0] : $service->icon = $out_put_path; + + + } + if($service->update()){ + Session::flash('success','Visa Service has been successfully updated!'); + return redirect($this->redirect); + // $service_point = $service->service_point(); + // $service_point->delete(); + // $points = $request->points; + // foreach($points as $point){ + // $service_point = new ServicePoint(); + // $service_point->service_id = $service->id; + // $service_point->point = $point; + // $service_point->save(); + + + + + } + + + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function delete($id) + { + $setting=VisaService::findorfail($id); + if (is_file(public_path().'/'.$setting->icon) && file_exists(public_path().'/'.$setting->icon)){ + unlink(public_path().'/'.$setting->icon); + } + $setting->delete(); + Session::flash('success','Service has been sucessfully deleted!'); + return redirect($this->redirect); + //dd("here"); + } + + + public function service_point($service_point_id){ + if(Auth::user()){ + $setting = VisaServicePoint::findorfail($service_point_id); + $setting->delete(); + return response()->json(['service_point_id' => $service_point_id]); + } + + } +} diff --git a/app/Http/Controllers/Admin/VisaServiceSectionController.php b/app/Http/Controllers/Admin/VisaServiceSectionController.php new file mode 100644 index 0000000..c93b748 --- /dev/null +++ b/app/Http/Controllers/Admin/VisaServiceSectionController.php @@ -0,0 +1,281 @@ +name; + $service_section = VisaServiceSection::where('visa_service_id',$id); + + + // if(\request('name')){ + // $key = \request('name'); + // $services = $services->where('name','like','%'.$key.'%'); + // } + // if(\request('status')){ + // $key = \request('status'); + // $services = $services->where('status',$key); + // } + $service_sections = $service_section->paginate(config('custom.per_page')); + return view($this->view.'index',compact('service_sections','service_name','id')); + } + + /** + * Show the form for creating a new resource. + * + * @return \Illuminate\Http\Response + */ + public function create($id) + { + $service_name = VisaService::findorfail($id)->name; + return view($this->view.'create',compact('service_name','id')); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request,$id) + { + + + $this->validate(\request(),[ + + // 'title' => 'required', + 'status' => 'required', + 'order_by' => 'required' + + ]); + $service_section = new VisaServiceSection(); + + $service_section->right_title = \request('right_title'); + $service_section->right_sub_title = \request('right_sub_title'); + $service_section->left_title = \request('left_title'); + $service_section->left_sub_title = \request('left_sub_title'); + $service_section->top_description = strip_tags(\request('top_description')); + $service_section->left_description = strip_tags(\request('left_description')); + $service_section->point_title = strip_tags(\request('point_title')); + $service_section->visa_length = strip_tags(\request('visa_length')); + + $service_section->visa_service_id = $id; + $service_section->status = \request('status'); + $service_section->order_by = \request('order_by'); + // $service->image_alt = \request('image_alt'); + // $service->slug = Setting::create_slug(\request('seo_title')); + + + if($request->hasFile('image')){ + $extension = \request()->file('image')->getClientOriginalExtension(); + $image_folder_type = array_search('visa_service',config('custom.image_folders')); //for image saved in folder + // dd($image_folder_type); + $count = rand(100,999); + $out_put_path = User::save_image(\request('image'),$extension,$count,$image_folder_type); + $image_path = $out_put_path[0]; + $service_section->image = $image_path; + } + + + if($service_section->save()){ + $points = $request->points; + // $point_descriptions = $request->point_descriptions ?? []; + // $icons = $request->icons ?? []; + + if($points[0] != null){ + + foreach($points as $key => $point){ + + $service_section_point = new VisaServiceSectionPoint(); + + $service_section_point->visa_service_section_id = $service_section->id; + + $service_section_point->point = $point; + $service_section_point->save(); + } + } + Session::flash('success','Visa Service Section has been created!'); + return redirect('admin/visa_services/'.$id.'/sections'); + + } + + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show($id,$secId) + { + + + // $service = new Service(); + // $service_section = new ServiceSection(); + $service = VisaService::findorfail($id); + + $service_section = VisaServiceSection::findorfail($secId); + + + + return view($this->view . 'show', compact('service','service_section')); + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit($id,$secId) + { + $service = new VisaService(); + $service_section = new VisaServiceSection(); + $service = $service->findorfail($id); + $service_section = $service_section->findorfail($secId); + + + + + return view($this->view . 'edit', compact('service','service_section')); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id, $secId) + { + $this->validate(\request(),[ + 'top_description' => 'required', + 'status' => 'required', + 'order_by' => 'required' + ]); + $service_section = VisaServiceSection::findOrFail($secId); + $service_section->right_title = \request('right_title'); + $service_section->right_sub_title = \request('right_sub_title'); + $service_section->left_title = \request('left_title'); + $service_section->left_sub_title = \request('left_sub_title'); + $service_section->top_description = strip_tags(\request('top_description')); + $service_section->left_description = strip_tags(\request('left_description')); + $service_section->point_title = strip_tags(\request('point_title')); + $service_section->visa_length = strip_tags(\request('visa_length')); + + $service_section->visa_service_id = $id; + $service_section->status = \request('status'); + $service_section->order_by = \request('order_by'); + + // if($request->hasFile('image')){ + // $extension = \request()->file('image')->getClientOriginalExtension(); + // $image_folder_type = array_search('service',config('custom.image_folders')); //for image saved in folder + // $count = rand(100,999); + // $out_put_path = User::save_image(\request('image'),$extension,$count,$image_folder_type); + // $image_path = $out_put_path[0]; + // if (is_file(public_path().'/'.$service_section->image) && file_exists(public_path().'/'.$service_section->image)){ + // unlink(public_path().'/'.$service_section->image); + // } + // $service_section->image = $image_path; + // } + if($service_section->update()){ + $points = $request->points; + if($points[0] != null){ + + if($request['point_ids'] !== null){ + + foreach($request['point_ids'] as $key => $pid){ + $service_section_point = new VisaServiceSectionPoint(); + $service_section_point = $service_section_point->find($pid); + // $service_section_point = ServiceSectionPoint::find($id); + + $service_section_point->point = $points[$key]; + $service_section_point->update(); + } + }else{ + foreach($points as $key => $point){ + + $service_section_point = new VisaServiceSectionPoint(); + + $service_section_point->visa_service_section_id = $service_section->id; + + $service_section_point->point = $point; + $service_section_point->save(); + } + } + + } + // $service_point = $service_section->service_section_point(); + // $service_point->delete(); + // foreach($points as $key => $point){ + + // $service_section_point = new ServiceSectionPoint(); + // $service_section_point->service_section_id = $service_section->id; + // if(array_key_exists($key,$point_descriptions)){ + // $service_section_point->point_description = $point_descriptions[$key]; + // } + // if(array_key_exists($key,$icons)){ + // $extension = $icons[$key]->getClientOriginalExtension(); + // $image_folder_type = array_search('service',config('custom.image_folders')); //for image saved in folder + + // $count = rand(100,999); + + // $out_put_path = User::save_image($icons[$key],$extension,$count,$image_folder_type); + // is_array($out_put_path) ? $service_section_point->icon = $out_put_path[0] : $service_section_point->icon = $out_put_path; + // // $service_section_point->icon = $points_descriptions[$key]; + // } + // $service_section_point->point = $point; + // $service_section_point->update(); + // } + + Session::flash('success','Visa Service Section has been successfully updated!'); + return redirect('admin/visa_services/'.$id.'/sections'); + + } + + + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + } + + public function service_point($service_point_id){ + if(Auth::user()){ + $setting = ServiceSectionPoint::findorfail($service_point_id); + $setting->delete(); + return response()->json(['service_point_id' => $service_point_id]); + } + + } +} diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index dc439c1..bf53c3d 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -326,5 +326,7 @@ class HomeController extends Controller $news_and_updates = NewsAndUpdate::where('status',1)->get(); return view('news',compact('news_and_updates')); } + + } diff --git a/app/Http/Controllers/ServiceController.php b/app/Http/Controllers/ServiceController.php index 1b5c1f3..6ba4154 100644 --- a/app/Http/Controllers/ServiceController.php +++ b/app/Http/Controllers/ServiceController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use App\Models\Service; use App\Models\Accomodation; +use App\Models\VisaService; use Illuminate\Http\Request; class ServiceController extends Controller @@ -12,7 +13,21 @@ class ServiceController extends Controller $service = Service::where(['slug' => $slug,'status' => 1])->orderby('order_by','asc')->first(); $services = Service::where('status',1)->get(); // $accomodations = Accomodation::where('status',1)->get(); - + return view('service_view',compact('service','services')); } + + public function list(){ + $services = Service::where('status',1)->get(); + $visa_services = VisaService::where('status',1)->get(); + return view('services',compact('services','visa_services')); + } + + public function single_visa_service($slug){ + $service = VisaService::where(['slug' => $slug,'status' => 1])->orderby('order_by','asc')->first(); + $services = VisaService::where('status',1)->get(); + // $accomodations = Accomodation::where('status',1)->get(); + + return view('service_detail',compact('service','services')); + } } diff --git a/app/Models/User.php b/app/Models/User.php index 924d141..d3a60c9 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -156,6 +156,12 @@ class User extends Authenticatable } return $directory = 'images/partner/' . $year . '/' . $month . '/' . $day . '/'; } + if(config('custom.image_folders')[$image_folder_type] == 'visa_service') { + if (!is_dir(public_path() . '/images/visa_service/' . $year . '/' . $month . '/' . $day)) { + mkdir(public_path() . '/images/visa_service/' . $year . '/' . $month . '/' . $day, 0755, true); + } + return $directory = 'images/visa_service/' . $year . '/' . $month . '/' . $day . '/'; + } } diff --git a/app/Models/VisaService.php b/app/Models/VisaService.php index 75d8fec..9be4ce8 100644 --- a/app/Models/VisaService.php +++ b/app/Models/VisaService.php @@ -8,4 +8,8 @@ use Illuminate\Database\Eloquent\Model; class VisaService extends Model { use HasFactory; + + public function visa_service_sections(){ + return $this->hasMany(VisaServiceSection::class); + } } diff --git a/app/Models/VisaServiceSection.php b/app/Models/VisaServiceSection.php new file mode 100644 index 0000000..5eeaf3f --- /dev/null +++ b/app/Models/VisaServiceSection.php @@ -0,0 +1,18 @@ +belongsTo(VisaService::class); + } + public function visa_service_section_point(){ + return $this->hasMany(VisaServiceSectionPoint::class); + } +} diff --git a/app/Models/VisaServiceSectionPoint.php b/app/Models/VisaServiceSectionPoint.php new file mode 100644 index 0000000..777595e --- /dev/null +++ b/app/Models/VisaServiceSectionPoint.php @@ -0,0 +1,16 @@ +belongsTo(VisaServiceSection::class); + } +} diff --git a/config/custom.php b/config/custom.php index 07db205..af9d47c 100644 --- a/config/custom.php +++ b/config/custom.php @@ -48,7 +48,7 @@ return [ '7'=>'gallery', '8'=>'ndis_plan', '9' => 'testimonial', - '10' => 'accomodation', + '10' => 'visa_service', '11'=>'applicant', '12'=>'partner' diff --git a/database/migrations/2022_11_22_050244_add_point_title_to_abouts_us.php b/database/migrations/2022_11_22_050244_add_point_title_to_abouts_us.php new file mode 100644 index 0000000..a9a8cd7 --- /dev/null +++ b/database/migrations/2022_11_22_050244_add_point_title_to_abouts_us.php @@ -0,0 +1,33 @@ +string('point_title')->nullable(); + $table->string('bottom_title')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('about_us', function (Blueprint $table) { + // + }); + } +}; diff --git a/database/migrations/2022_12_13_035944_create_visa_service_sections_table.php b/database/migrations/2022_12_13_035944_create_visa_service_sections_table.php new file mode 100644 index 0000000..10f5fcd --- /dev/null +++ b/database/migrations/2022_12_13_035944_create_visa_service_sections_table.php @@ -0,0 +1,45 @@ +id(); + $table->bigInteger('visa_service_id')->unsigned(); + $table->foreign('visa_service_id')->references('id')->on('visa_services')->onDelete('cascade'); + $table->longText('top_description')->nullable(); + $table->string('image')->nullable(); + $table->string('left_title'); + $table->string('left_sub_title'); + $table->longText('left_description'); + $table->string('right_title')->nullable(); + $table->string('right_sub_title')->nullable(); + // $table->longText('sub_description')->nullable(); + $table->longText('point_title')->nullable(); + $table->string('visa_length')->nullable(); + $table->enum('status',[1,2]); + $table->string('order_by'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('visa_service_sections'); + } +}; diff --git a/database/migrations/2022_12_13_043238_create_visa_service_section_points_table.php b/database/migrations/2022_12_13_043238_create_visa_service_section_points_table.php new file mode 100644 index 0000000..6ff25f1 --- /dev/null +++ b/database/migrations/2022_12_13_043238_create_visa_service_section_points_table.php @@ -0,0 +1,34 @@ +id(); + $table->bigInteger('visa_service_section_id')->unsigned(); + $table->foreign('visa_service_section_id')->references('id')->on('visa_service_sections')->onDelete('cascade'); + $table->text('point'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('visa_service_section_points'); + } +}; diff --git a/public/cd20e81c0285e201b4badb6adb9db934.jpeg b/public/cd20e81c0285e201b4badb6adb9db934.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..7263a3a69667709f0be442867e94a3b9c8041db4 GIT binary patch literal 32027 zcmeFY1yr2N)+qSl4#8a#2oT&I8ba`(!8N!A3lhAMAR#yb5`qPH0yJ*HAwbYTaCdFA zfd*dZoOACz_s;xp{WI&WS#Qluv#PsT-~M*h-c_}|?tk4c0}qttmE-{=BqZP^;t#mL z1EgfNeXqXrn7+6@C*tjHkxHvetltjb?B(zlYbhK17Gz?5! zEDVo07-?u&g`aTn@CpbB(6fk2ittHr@eA<%MuLQeg@ucQOM!<+!S|5nA>aSy&;2)m z5ED5FNgD;}5r9mHghGgP-wn_M01_I4+TR5K^+7^LK}AEyz{JAFK>*Y~0FaSTP>@kk z(9lp(5zqmM=Kv}p8qq^u8FXSzbBsrBBz(aMUoaV;R&|hSjU6-bTf7dz!X_i9prm@t z%)DN;3%);Bh{ zws&@+C#PrU7niWB>)&)C0Vscx^-s$FgDye@UC5}YD5w~}=|Vz&gJ>v(sAvy)(TQX< zG0feFAMpiak~~fLQq_UQ$gg!wYVmpun~X_dw%>uY6 zNQlKlAp}6cqt-c9Qyb%{m$Qln1JqLU5%qVRVM@x~a<>5f+PUG`?}Nl$MM+xVe6H{&>Fa+b%* z%JJ&v>C5!_RG8tHy=`2LQ2E;2?G!PUiY!~a=}#U%3h^jxC@?me5;3HC2g?1-XjB7^ zGu6ra>`GsAtbZOrO(uH6xL3~zQl5Yu2ZW_GmpJT5c4TSR#m;JTH0x+S4Qa6zp;=F> zTDb>s^I{yyx{Q}bys@zB*wDJ$!dSR^39MI=US<3h9g3~J5BvB10+M)kDW9u2CRV_GVAv>b z`5uTE*H&oxX+1%tF6hz7HBg6_zUIuQQ0JHrIj&7keedG0K#~+tayY}8$%X1r8vPO} z-kWy2Ay#komDEGOVP+%VQk5?XExUwvC;N>oF!f^1ZOPML)AZmnWA$urJ`--Erl|rG zkM0<6yq3>FsB&CbEU3{{Bj~N_-EDZ)P=Sj#uT7Q=%nS}sxXKDn)-`-%-x9)fJ?L>E zDk_r9i-^AgxXL%MH z^QRK?%&Q1_v!U}yGhFm=N3;+)uH4)Mb@zb7?rii9c>=*)#rsIhyWOI1a7E@AV7DkI zN){U-UH+>^EMSu)U=u|Czu@OnHik{~guA>Q(oC+v{8$>`Wj8F0z)hRRuR2Wm-+ws1 ziI|R-O%(8aQkYM`t>`IAGb(Cya3<_XYm(gL3jX=-%IuCgu6p1e040H!*zbYvpJ}Yf^)puYK-NI}QSv>o zYWLrMapU}mJcCg`LK!lC=t;fvP#B$6pX&h;AOGaBH_a&eJ@8+lwNhEVr5kw;X`MU- z)wGTCeO)M4lA(E^SBcTCoOanGMwVgkip>(Tkgy`yF7>WhPFVOPu?vyeXFq5c-(WC-z0c*g4?1g27ijT z&MWJwSQJomVF21Xak<$5!_uVwj#$?&8+*w*>0g}8-LD3ZtS?=DzXza#h(##>+nehD z#>x^_%wcrcN^tw(moiG#kSH1@l zgNyHhInXUxZJ3WBb?)T%Cr|U=Q0Dz?f=7Tm2ca&vXbQKmIK+D9-jSKT2XC{1j=I5c z)z{j3^pGs~9jW|?JGo27@_QgGb#>_)JMIQb|C>2*j&`zpU{o8t6nPK8($^d@Q;L+6fUH5cv0Lm9^u0d$|xA&p$F&a6&7Sx6e;danjt*P4vCfDYah?4k$J@ zoO2j8$@x_~uVsk0`4kfg^M`h#0?p69StS!8cWr&P*KQwlrmpe+g9Md-pH-D}i)gul ziIL&_PCeng@jXx!=d6;sY$*}DR_~j+*Gb1vtuZa8)9qlTA4=O`V*vnL>4|9Ulc(G> zFCpV%2UUn=K~R}{XYqedb@g1Q@3l#n!>nq5rbVX!8=u!2O9hWGzOTD>EhpEFLeq`V z7stnt=GUZsi*(tsnAcjbi|SvwehE#2Xt}I=m>pNcjqU*%&3hn_@%JJ64{D5)Nm}!6 z(gIWn;O`F=5RiZ8cpS_iknlFGc@_Apg(7=a#my0ab zUniZ3HWxQqs&SR`)v!=WQ6|1rS`GWJEW2FM3AkKe(O=`}jopTMuB>m6d--p=$di;l zMzflhahH2cI_mROn_TiwvEuM*QkeEH34?r&uzb+|(Ola^#<^Q8%JY|06e81NTf4G`N>{AmrTpXOSbm>u^nOh?YEvVLh48uT=2a`}2Q zFRN>IBPBn_@qwMMb$7gx1hM_GNR-H@k6&4h7~5H3aRLN?dewU1MIIhp}V*>z8{bCL|Sq zx7CpKe%u2@_rQ9#1NdU(9*`>!AT$$)BR1T>4&(4Um|pR|Rr?Xa==yd})T&e-E5cO$ z-L@s@i{|Xpnupy=Ozrc!b;aL%;Frv7@5;=#E#^Wi8sSFSUF9YwM)Ry0kYdjDmZ+H= za^ghHhYE~e*00Z3TY96W1dVkPdW=x8YiZUOi_TOrdJVlk7kFDcZzbCAZ)7+lX$=#J zyv!q>rldhhx5>L(8Wp%D-Y0aNHVn2)7PR)3xu(y|yuYX8_$)EY9^ zy0kKX=4VE2Ku_WLdcmY6Enr`s+9yvw!GZ>iE;H*F9Qy5giXi&D+2r}oMaql3V}obk zs})|E8>d^bB^sg7?xo~>DEY2bV6Tp%mOi=Gqixe@I%_%jzRD^G2vVPxLdT+?NM*ig>V>s@yXQ^G_`QICnrfjPi76>LDbSfqtpsF z1UvnK!c&5B5JCk$Iypp$U$dJPaA!=?JutGKb=iqHGs<5+TI(@RLe)-|ZgNkvF@@9- znko^zgmXvoD(eo+givnea5gaFv^0UlBS6KM6RABB6Dl5i!fZ{3u&FhAKG|;2@_g9*huHAUD z!FZ~mu#L|M{K*3GU5HrRW)@tP{8F@kE`?byF){=qK|bIIMN%5fl6ad(q2IDu~(KV+mt zk{;-gbgUj`_F)LY+_!hvqbMq6a-S>}tKKX+>=`Ecl=JE1r-EgH$kulQ*Vu;ScT$Yk z^c&J-2+8(`O#6py`}g0_@gSn8lLeK&wCY{r@)}tZ)(vd|9}x^nrpy){Gnl&PyzNLR z{rUHn0hkMP{sD=ik`}Kr2$y;H?(=%WZ@@#JXs|2P6^hTKm(&8`FradG2!A zq4TCcp%9z51@tG_VQbv^F?i{V`X4~_h7q6kJoFO5oqm;;xBduJ8WI7O&Xj2=`xZ2J z5U}Iu=}qXK#;K%pN{xr=v)v}S+C2vOWE4^i2D%8knR2SL+{a9Lb+%9KOTXCVM1A>( z2>Yk@LWr~n#sK5eg8I($VI}u_fbQt*u9g(wvdhZ}B6@od#C^PrxYDxuM^6K7_Ow0P zFt(=9Tes^5{m{thCPt0g!|pR$Jvx$ll?c3ajGf(Jv`lcj+;Z}fz3$Wo*J@Yt9Gk8E z@@aG?0SVIDbzgUky6KbzRTJlA%2e;_n4l)H<>iD@{ebyCqkEh@X<-0Vwg;!cbZ^R6 zH~BUyE%n0xseRS~B_5=P^-57HD1?6=clvcZL5ooIPzoB3gJVgRfxgX(du`Jhb==@Y zQjbt8kIWF-6P+6sb1yr8L35|VG$RCO`SD^X(stdbF98MKt&bSZK~xA?KA*X~UI~f~*1=RN|$yT>7hN{J2LF8$m3Vk3KxN z&CPV{%lA5k(aSV_o#M!cc-2p_kdv2g@o+7N#=9r<)8Oj(A)Mww@}Gh(2kfmP1L7on z-03TiS$XnDY0Km>G|#hfsoUutg%-u*lv2KbpH@v-r7(9K5fW~|N8(6C<2^)O8x*nd zzIGQQi1B~%WoLW|VOsj-)<;@bCmeDyIVLn73!$8ZnSM(;LrFV(9|w59-ZG^cs^fBQ zId6Db)9`M?teH`s+TMIuP6S5Wb&xOg(TPc@Jm5B4@5if8_0B)s({1aOfz38%)m4#N zT2aVNhO*?thslRY3f?`x%rA``U-yd#AEmoGqDjb9F2UkDF}h}3d?BfZs$D+y%?B%= zk|Q~p?6W?()uXhFBDXSj2jY#wwMM0i?Z#DI5=h3B#}u=VV>$O`52B2pS>H=ZU+ov@7 zr@3DVO(;n`c4oql-r^3&YsP5!AwtTPb$rxiXlRh19QrKfO?d$FyZN`tL0Uc%(EyKk zHomMTENqQkrIIj@N;ewn9mx8)g-?aSW{JW^yAK1y3#$)sRVuy*R%{%7od%W4cgU3N z-Sd=6W*(Ofjic$zGsb^KaYMBV4n8tTU&J5dqBr*8G|q6+;coZs8p3Xt7rpY9tWx0) z^-wzG*i0K467q7geBeV-nK)ScA$obkdtft2h!&e#6aI_$t$ScD#3eOr9HAnIUo6enN>OJ{xnr*vkAHYH+MH&FzzVDhmfPF)gD< zd3z)({77-h16^5{%3oRLb+rbH+2ljSqnT8R?$#3tYZB5u)^GWH*o+;jwq7RVMT zuv?Bao*fXuKo?mW6px^!z{NTWj_T$v7EmRY6P15w&Nv{ElU}qlA@J-vnwQC~PvqGm zi4V&LKF>mPl6w@{x1BKxM(rg9&Gro5%A9P4ae@$f6b^8hK$rdiWM4C8?2) ziX+8Z6=W#nDHj#O;zqS5KYo$4t6r;R)#hk-FiSb4S;L1y?4MtiPGg&n|HL}#dRNY# zA!D9Z?smc!05DKSv46aF-jUmL4oPy7BrrI3fk&l*Zz8VJ7Rusq4F|1P2C02U^GfN5 z3X7PwFqYD$E6chHishvG&t8_3gylrBTXaUTW+VSc!*m9(&D>>8eJQT^vy(jxa3Zu| z5V1fJc-#`9`;^iUUfLfbUIT5HwJb)~z(o8-O>H8Pd4_RIN5gyE5-hs6Unvg~q^Zty zZ7*6h2Ldjl zu(E}$r2t_xl zzi#@#`C;u+llc3X4s#u@*X6a1DA}N%37W~{-3wuI=0(wWNgNpc9r~4v*xlxlMD=kvaf{PA?72KgpRBW0hzc3kOPUeBy|;P5&}M+ei&XW*DOw9o%W z13jNqc}=^fmhat`_Q_L9K7zs4s7mK`LY)b-iTq?sgE>FNM_td>9OGAo0wf9M{8P z6(f9sRJ_a^@-H8p*)TjPJ#>AdkN0P~p{)Mr8dccOcs&D#dSVwVrwH-p;5qtO?{zAp zVbyXEjLDEbMvh0)CEe^q7*FNhMhfhzQPls)Sg=2u)=52Z?+BnF{Ahj}{Z-inc|C+8 zp2vHn;adB6kBnbNBFEw#Hb&C0d~`{A{I8ez`1l01;z+r2mg=iG&uaO*d+LTsv^b*1 zsxe+7&2~xRE6}W#an)E%B^tl`Y~{@8YWZ>{mPaTdJv|!N9kDY7bS3*DIT`B0H=b3q z|KR*yrrJo6{$MaVL=to0V5;0fZ|UV%;YX4%?`eCHn;)fFU831Ile#q5dyg|V;2P-F z^#DiNjsMgSidd=b^Fx_Fn$K=~WZY=onLax8D8u;C`7+zC(oA&S_d4%({h73)Ow3st`gVV_af=?-G=J|IY=ZKz=H zn+?ym#><&i;ouQ<;Zq#IaP386%=NYQ zAmAHvu(J)!+q5FsP7n_f0meE#y7@KG8vu=-Dkst4qt1d|B<Po?z~10uu&+86jWpmwv3%+*A2FmiMIX_jsNkR;OByE{+Z!du~jX)`BBQ# zd^I#7*^wjP3vp$3#g=iQ<73hkDPpQU^%pjmvKK~V_5Q?zv>zE`v!2|tefIX+DSJle z@o-u_>KC2j>4PnnxaNt)CSO*R3@3JtrnF7JxElFW!D8*0nUKgljv0$wrqDk6HQmSK z6->f;65#gM@D=w=Qi+z(KC}3><8nj@G&YxZC}qWIYEicNGC>W0h8%-E9-lxqoi0PP z%=;|hDf^S2#;9K^uGQ}qnXTod0X7;g?W6%V;9x#&rzji$^`LBH=pdK5R#R{jgW^aS zZ*uSE#%D=HpvJIFA#eU+C^!8;k&2fO$g_UgWABt;s%|?Qmz|Stb?%1SPd>2Unmfd2 zDcv&8H+D{Wl0&NNabsPgVr~j0YV3EOLkhlle8suZ;Pi9S(J^V7yH7duGaQffB0o&@ zl#;Tfpr*%)xoaPu(JGq=a_H)>tAEXJ3U!6%sg=mmmPomJ?@iFMmmyYfbK)>&qw7m# zkDCpHg?_lM$u9;=RNA{=eg0!_@<%{npP#=V&vbfgVBwVl;H&Y+O0ru-0h?>%+&YH^ zA>xv}>veV?3==!j6Kdx+G?P0}LVTn;bIk}AzH>*1ix_(6XrsSL50|$Yw{ZtNhI}vZi_H5~O)Wbp5LL%6Sa8;#=6HB4I;FhK)z+h?4FTV*#(=MV1f8 zW%b4~xsC6ek#DeV2T`l0ET z=atV(F3D1+&E{XaG`> z7?O(g0~2r`BujlyXSZh>?mK|+3k`$FqLf*Y)oTV2PCpTuO60HLXu7+fuXA0_6YfCY zgP6)3PaiMVpl59jqtdCUZL+ZakikY@=|^Eo_tPELXq))bb}}o=@w!_{$^3O}<6ek3 z-7@q_1D)yAw1@T}+I>NVw6@!5L$=8r2lp%LYsGVVp^067jlQCJlE#{FM@Vqx!|*2s z{RvvqSRLk>-N^IsuGxBU)vKN)!(cAj?sD#r{#^{c^j_|n7|Xm9QJT54IFwHM%B#Ak zbPDmGD0_M4n!>5&F?WKafLv7fPv^7(W<&8k8;VK%&WVDrQcQ+Nj?;+~h5fLL>dEP6 zjxPK@^wTik}H&I45nCqUChbHRB zMz>-ud_$QWcO;8>{If;q@=e0Rf+BEoNU1~UYErjFD{}p{G}Vwv*f7-e^XG&rJX5=l9)Xym8pmU;Jsgl5^->iqoMSvGEl#pr;a3u)`Z{u@0lloMkf z{WW89r^deL+&{w<%5HOhY>L-5v|JUaFQOx35;O2shyIZF=@4a%M{|0w7WK+Q~W!{m|vD?sb97wV?~Dno5g^FX}z?Q18%9# z$I*;Eo?&vG(H}e3omr$7VpRQT#&*XrD+?134U)%6Un$Tq1l^>5q39o2PXRniYwYS$ z$(_VMef?1Z#Zru!aSLZ3O$gq1k0zbu;{`FH7R3N2;20HR$x($!dglycg%k|D>XpboYi$Z~si)W}6 zi-O)5cZ&oGxOry!BwBE?lBRC_Yedld+FTUC6U4iIeNkRgF;ykF|HdltoYC&XR!o_U zM1Z!=|15I#@6W7Y%)H zex5aMzGA-s0MUNPq(&Ob?X;knGN(u=l@#|vEsgy zH$OmA(qys{+7kbKMz5UmXD0pW)95tAn7AY2U2rlWg6x|f@Wk!V-kv`S;61eKYb@{? z1CMAU!uMfx9%iRMK}TPt3Hlmy={7%Y$syu{FYc~M{s{qq=r*JM(rh!x;pgf%+nWD` z0N{RUyodIge_>Gg3qS(}`v2A;#{QF0#D6jB*>6_OirQXs{<^Abn|E2Hpiso*uz;P$p zSnNcrq(22eIXUxPq*O6}Bv?rJRnH+FL>}Zlz;s4hZ{U@6!s`G&?fHk_&@9R^!4s|j;E6S9%p{3 zw4bWiT=VBQF5z28=ELgmXSfq=Hl-B`&Ginw2!cMN`Wa$6CsUvx);rXNOGKCuBHFw$k+6)a_(6*ze|!)09btFn{Cb=Wxqg)daTt2t!%Qj4k`92df%94@bL7Qz zDo&{Z1&5jSWQa98jxB{{)`zXB+#0A^#5uKJ>3dFxPDC8xl#3~9!@$CrIE4Y88#-_% z7+eVxmvtf76QfJH@O8RqPO)Tq`^n5}bxvvEXkx0xwzKZd;)5or+1pBiy#aDP6g3ki zb9NVkC0TYNspUm#(QP~+fH2?tv+Oi;A}70ERa=VS{GN+gzqTzU10A}fnc$ik&K=#r ziesyViaOEGn~C|EkCsAl4c#;S7JT05xzM9X35Dg#2ru0e?;P>02L;)s5?}X;1fJ6d zvC2#LF1qbV(`6NVS9V=*2QzYGBEYk3i zR8Wr7oj!}fd^THGXm3%S$SBOuVGfO6V@bCP^jsCbW2!s0DK__8qlQVC`u{zu21&6%)%2p;J4ay8I2y zOAJs?bIOPo5}XxfI;lqt#a?UoeYw6+7H+0?>Z29^+CV9-nQs!Yl0Arng4oPU*Hj*V zZ01T3EUv(gO0Ppwjh;Z^RZ5&EZX%Aoe-9tIw34XAGB@Q}83AEoR~DN7cEYX{o^aCQ zF9p|eIeyjwfF@+YeHie)2jCnaL^;^#L@q+MTYzJn4NPYpblps5jOE;2*ft)&3uPzJ zP(W|e$I>)2$G@H2;)A^LZlxSnwm>kK7H)jhrJkLVp<4#msK=**@(ha`` zhV6fxWx$cW3w*-$3p`C){=&eN8gcNwy6zgv0lVQptv+pcaH&hz)#L|2Qx0MGIo(x* z`mVH-sljD&&^v9U$JVpp{vJfCW10eV;X7H@tbRpN3%XvzxEqnC`k*NXAPOS>*+|!} z?Feq3!D?|zQpd(*Y`zWX%lV;sgSy#W!pWsTZDxeVdr!)E-&q^E-LzS1G+e14AB?ow zp&(ROcmP!47R`ejjs?DZ)Jm@=7qzRo3$Hp;34r6cnD(?&vrMBrJGjIG;?;#aGbicKB-#CF{Zk%m$iBmGae+_-nj@IkAzloaS5orKt1VY`~ca%2Utb7yVufAse<$u9959Zz z(F+K~;1$|8a-L#JwEEXNand3cE`8VF?z3aALaz3T?P*_S)SG9z+rsrnsVnPI( zxRP^D8p5%=`nTG(qbJA`?iK=vLP)cW1Ta*iR45$0sFtk@Q1OjTV@UTa+|!&Wah2M|vR84{dB@X-_8e>u>l` z7)~zSMr|um(nrx$9XrVvac;9}GlVrVr|k14Ez<={Q%v%6G_V-lPcj#izpQ0Nh*idx z`3rg$nC?_@)}@lDaamh4#S>6#Lk$AaOt9|I92t8E-042uR`_p1C|!TOcNURw?(y_$ zM}iah*`iHymwYUcOTbY>n*BzYP#=p2yxeX>ne@jxp6+8WUetf?@(Sd^S-=@na`j__ zevzWraa@Y{9vI+4Xxdvp@cyuIVCk{!H$$$ZH^qxerJS{8svP;Ys9~B(!S!ip1jsRu z{mJuVu(kqtWba}pZcm!yOfe9?xQEBzM8I!xfL`4qd=ET2h`4n#{Q3WYxnhb2Thq*9Bq1zo)QY9_F)!^~bKGe7k00d59{1oq`D6k}T800&{SJim_F*LCDdrO}j# zmfyjCDvdE6dZmHvuQ?V-X9nvjfO5Zcf!s>ZG4RM@S1Z-&7!+GHVJ##84obAoq@pl!0UEg2~eJ$mss!TB8TbXa)rVshZNj53U+Uk z8Wpwj4j7J&%C$$cOvld}%Kb4`hC$s@H1f=}$}qO!hb&x}9EIWY7=xquwS%xkJu@=> zJ@Bl%zGGAEnWjS;jkES#Uos$$EX>aOB82x;F9-h0=6I>ARA)4O$MH7j{d?kdys|_h zDPvc4<{)9`+EORSPOaTV&58{nn=0^5iDKdMA`=Ot+|85@_Hp*`Q^3nKvRHrP znveS)KZD+W#3kqGK0pPwjtH8sP7y9u3sMm*t5Y59xQ3^v6m22_wym|nR>Xee+Le^0 z_H*8QWFQ==x$~ox-C4Bg8ZyQq8!h}z&d_PmJ!v`_`+}ZTRa>+7I<1Wm zsNq7>PLoq};QkMTdU=XmMWGb7*B!(7 zIaOGXetSyFU9pP)!50lWbTte>1N|;+b&o#6RHF5B=V?K1z6zCeJ$YnD9c|fg5Xm|Z zW1);HtaSAz;7y+}`7C~^L<%>qaz!*Wro%PxMd-DjUWLEdPb--C%AlhYT`S(H?4~zkBW8KZ~KhnvLgz z2d6(ai-Op537C;M3JX2bN<^D2-9*!p(UnOGH+3^fjgWd^e@8XVajp{JXOK~@pB&=z zp?5~Bfq```ZRM~+-nmdV}-4gdKrUtr?`K9{xm*H0?FzlQHTQ8KG zJL{14mf0(9T08Dx1xb3@mzwmiUACf|ZJ&>E4fETBAs=fK+-`Heu7V*|_QF=Tt4d63 zBuEp#EvLUXs_(~3@b`7}=RJQ}O?4Y$enD<+%M}I+6ZqZ0S7y z%W(sg{vIZ%W#^i>ljl^wYv{NKYDUrX|50!Jk6-uMh!6?h(p~kUU8={)!+Y_D_KbtH z*+@zI0DYK;;M#S2x07X;8JVDw_?(mc&C>_nDaS@ePp}v{UKx2IF{T{)-e{mzMzPK^ zm9I*gx7Wg@P+e*9)srPA(v=$4t=xOXe{xgI?tlm@_s>+>Rl?siLNwYQhF(JT4{Y3V zNY|KfUm~c}7pdT0y9XlA!7yd|uBBI?8Pn(dw^>ghLv4Q()O`E1go>bh&qSe{ zc+Zq!tk%S0b$lmFC2;`|O5kO&$JQo}_8d`O_~|dYIzsC(>(xx~UZ7bg)}_|o>y7xc zsjx_EU5%Enogw%>BuK@ppAS&&t`#B$3DEM}YAcMdkP5GCYEzR9sM)X>f#BfTmiE4> zKtUHG^%eFQJuN8tOfr|30x?L3UZ^9Hx0&*?0#W?lcTo|y!i^!+{8|uCe(nW<#AuP3 zK=fB^9?@P5nPDDS&YThy5q=`Bc$Dnq$ts_gX3tjd#xoaT%|Z?K@Y~un1U5X>@%&}S zr07&j?B84uzb{{r$&+(rNT`8O0()^?FyE4cSHfnSi} z;?yJFaF?diFj~bO)56u}_6RDPG^e(A=3iPj&I%~baa7*^NQa}PFK0FNz0th%oo2DO z_FM*qUrq^=)i@BW4w9tJl;v{NEpxdsE10EwjK~_A5wwx-5PCZxoEs=7gsRM9$hglM zHId`^0N21k#_VGdfYFeR=ci7x;EjKQ^LdF{ZjGch!HH~~IvE{VQOf@6GlQjzOY2nq zouGH^88;4xm>Q%mt)c0?hsKXm*632JjgaT{JK5ql!uKi-dS&sO4ba zCmWZ54w1?G0)3;@Tt8t6HL2b)Hyt1Ao}1$Xdk8Z=jO_6;oDM(VmU`eFf^~R!{-jd( zi4(^Z8TYHO_(&Ze7Q3||F^>vHqvqq0&ZYO)CKsu;&Fb&fI61tMe8Tcvc$Efu`(%0@ z8(|Sp6M;d+UeqZpj|J9i?-$$cT4&C`OS9`@bp zJ}A$|dd!L5epgm|T7(*%ZfRfX2WhTvtBu_p_pV@wcUCfY{oXZ6*irepMHtF%1btjk zin#3eV1C3spe(GaIw41KYG&?rm1{PQRi%Zu;E^fL=+^Oc=-C3@rv66C6lXNl)?Sn) z`gAc!_&@7t@vOaF?&RhOu2*YI{^gKn<59N%tY3leD#yB&Zziq?NrJ0Z7(>cPI=QNU_S?3%jzuO(ccajw+| z8%*iy&vDFP(DMgcv<9|-pS#f?kgjeasW8Vzqu`#95lfQfN5KCi(JKJjx$ zr}zt5!qmQj0wXXz5Z)K4Q1VLSz94_G16j_d5OGyBt1b(R1bsX-PIut`H4@0yc-2uh6@}Kc$;a}K}iBxU`F&8nHeNbNU1srIxU@2ZjgNupn{-r&k*#0 zJCLp+OJZBZDwj%9ELPebh6@mg5S zbN13`x1wyC>f0u%o}B3~$1Bl%msdMR`gWBXqVU4#?g_LorWSGeiPFwjHzQvqf5%NZ zl}Ic(QN)0n1M4NuOWtL#9ckL7uogW(Kgq2yPf=31Uf~?1p078^D6yMl)(>9sY56st zkH7-x+ z@90X55(z!Na4@cf=9&wQN(pRtjN_%B(`U$B*o#J2l9#C>j9zvqDaU5v60|H`0kS=G z?6oZ)<{Z#xV)EY7<}uH+G6ZZ&Ov@64K|r{0%VW{ehneh-+jPtC@;Lfff9*|#ju*`c zcZ1)W5;S2bkGEI%jHDfjztiV;(%`8Oxl(X3lu!`v&TpIue7I|8=x|hGwlL_EEm=dZzo1`dgMm`2&^J6fUF(gZ-vY%5 zhGe|Zuy!o{_@@8+7a8%$W&Cs`Q{Kvqr(H_p)AF(G?-8bn1|@gm`UYciNcz*)Lb%_T zyz6ClOh=aS9-Tft=1R)nB`kZRJG!4h+6BBJo^R4*lJfo67&U*cvdIgShkm_f{zgWv*FM43h+^z30#~S_206*p`+9PJ^FZ%ee#lVEw z1PXP~tk8Wp?`^Fk*bzN$>&nzagRkmIqX9=cffNua7Jf%KVwT5GC z{@JH^#W%Rl8%-CQ2Bt*Nf`|&(zCx+NFS|Pmp)$2k0#Q?$uD$g38qKl3YZ9J?Bdg-= zg!bgN9Uy$N&W*<>xj)YmZu%n`;>#lQtkno4se(io$h$5!!4G!G=os2VjY6R1XL}SB zg>%@6eBCcmf_xK9D|6{d^!<6D5>%VPbjgARiJjEluGWp#F(*I1cOOzGzz|1AY z$ipQ}R-IlbMP2HRSCDozYCP5x#TAY>P*WOdRrzA(5XdlXGc94XYBWNyE&QUqry?VO zU$Awbqq{|=p`)l4b#MnpwyFEDO1ZaQ=e0{Prvy$BZ1(&3X6MmC3{!u}K}PqJr}I`I zdpz5V;_cGD10rsHMAYf0QY9z?nU(&YFySY>N^7{P4r^RE z$Opp3fK_~y;=o3XS0*Q{y>!Pl!$@YlT#x{-rc85}YyV3g!=XtdMhJn(fvNi{H}-1D1w!ry3UiOpF&KlC2z7OS`+=`PDD9a+AM?{9|MFzD4^>nn8 zBzcPaO2l|`;jV=+aO9~p-RBihWF6h(W4x_Mi5F-Y86U{AY+vf+#RY{ap%SOpiTUdB zniua1y$c`@Dp!bx3^qpBt9sw)E)4X?=tRXdbnIxrB04p^9ao$XR|+8u&m7W*&xhU| z&-76ke8Mt5kXB;A{I&J#S`Y6yGr(OAsx8c~>Sw!hW0Yc|I`fHh?PWBO`c;%o^e770 z{3rWy5n(<-FD|-Af(XB&bT4&|<>8Z|WId|pRj=)}Vl1EB4ks)Iuj}po#UB>^> z#sdEC*BTc5E#e1^{Urm7Htzx5rHIqwKc(7VDe_`Ap?ko9ehprP{O@_l^WwjIy+MNi ze)lR0V2`SH5_5^7>S;J0I$jKj@n10caP@}m8MqmvK$-#k4bQ7~E07tA-dYL^U+WBf z&>-eqX+^f_*W9l?H-M#iQrty5;|cNzm>34!GDVKn!&!b3gzpQe1fbP%_Fb&sgf;Aa zJW-^Mo35o2s$veU*Bg7qGQq)#6>El5Bo&zZkUDTQC_1?d;Z9jF8tZi*sITIZV{}O| zPUcKn%qC@3&lVY<#(jL09_u)ppV~DD3{#}_?(q~dysbzr-xC`NOWucMNL|QQ8VtT;X-#zp%yErSn4pb; z$^A=nu%tD$s=&b_BZHk;kD&{VUB!piN=o0*v=12=ekk?PL4Xkw@3`(vI;f?+DfLg= z2??HwJR!dB>^Zjh{HR9M2NYEzEUiYc)I7wlCHt|tW<259PTYFkCkZEhlCU~^BcsC- zgdDy0wZcfd9*Rm;_i5S0(6e>?Y_I<(8U)iGrw|SM`l^+}Fhy%CQykWB>$ZoP4lc2mnUqbF zZG&VP?x4tMLV-7KQrjsHhLhQ-E6r98MJo*HBgwJyGSs!}Tft=dB|Z5LkI?j;R+jmy zkINKoDcJ&#H-iKr?=uYN%*?R%TulZ`6+pirc)C`sDdt!v&|;L==}(Tnk(Mvd(JJE{ zMR}3eBVsV@7Go{nBRr1kWa4wvGtt?r8mAywM{RT_-cjSLTShH)O66Q*AqphXMfzWH z(Xkk#scQ4~+K4A46xP^pIK>We=5+YYejFt?%~G~|;JnNvkVe#bo~R?krn~PjGz%Rr z#7cH*D#k zJj>4N?@YDOXT#oto=-W;roEP#SYo|`@D&zG*L9DwRhI|1)#3uUBTe@_Ti5-fmB{qi zw1xO%mO6c79b2aEI1J4y-shUkI52kE+kM?lQO9PV=L?49+PWfzWK#NSpzD-hM!dRv z2vb*|IN&@mQ*6`cu6_KGq7u8hG7aA~`@m)ou5&I~+fAObBMBKB#)&RV5V1Dj#ay25 zuCkxHV}$1H%n}8p%>Iw|zA`GVC2h9}7TgmY5=d}@y98_K5Hz?4cW5Mdut0)41b267 zEI@$Z1PBg|OK=DTx6a*}d(O=H&bf2uerwIlz292%qkC2D+Pmc4wQE(?`#euwoe$JT zehv9PnTkmo(d!?6dSkPPhq9FkeU7gsjn01GxP!qyJC0_}md6 zRzFfN+$c?YKUp!!kFO07Y;S%}mH$FyGcM_5+n~ch)ChVldC?UqzWVIr6*do&_>I92 z&{a|i6<+sivAT=&ybHr_hUXX_C~+~?$&VzPC^rM+PqqztecF!2k52h-Zyk;*^GDYng(LN?*3ZWcwJJW*+??pd);%TMGtRzWS)FXzTWCPkYE8uX2RJ+l zS*piw2y$%zC_#mek~2g2N$-6(Pc2L~)o+j9XtNC5Qx!1j^#sjasI1vwv{BSY8Ji)- z$5-7R9hj2}ZpJca29I^9YLz=U#E*8>u{rqAdi;m-X>=d#Sns{7<;`-^#wx`^CUB1L)8s2lNE)J1p==V_g(dNw~fI!^>h|6He z&fF{siP!oh6((%-Ml4aku!yU+rFTbv4};RWDCL5-(3YYOkyv8Vm}c3HX$?>L+ZY&pf@lPEFWQwKzqN zQ}(L4D5j-=B0;u)+HKxJaS=9dcq6KPvODKM0(j})7)k`KkG1tb`PTK6@cQC1k_0+d zD@J`$LPPA$Ilbq)axcALJ285$btsf0X%H@9em(0D??N>~B5!aJS17aM!`;z_-mIXv z&;@si@FEVQ#l6FXvajD&y?)f5g=^D612;UZa*euBU(}p!8~ET06FX0eU%2>o%QEh} z!g`b!6NTAnE55@2?l#Bh#Vy6&Le=c`64%*jCC~Wd`f!=U^IoU=5bF0G*(vSz8IZKE z>a$Wz`ZYvfTquw9Wy4<6TnsEdqrP`ImG*?kGG90TW6IZiU(*7c)6OUiAw*ywHL%C~ykYt1v?Z}mP4*KM|5 z7Q7i5IEU~B_DZwzoy@~Gl5Oe-Ic4{>4wR%Z8lW^h-a&M6BP3WiLJ`?1J>NGjE&?tt zQ&5W&wC%Ho-Gq&Tge3%6TZI6K>>Fyr2|(sYd#C;(kzL-R1l#Z>UzKXtA?FC@(7Gg^%GbG+|du z?_3=cyw8G=}dI&EMN3+!;jzv5nR7kT>7!ccJTs=Jh)bQW4oOrR+Xa;#cY$68jU zG>};x(wbC<=h7#S%}Eyl_7-iAqRQEW+-6!5iQ(1RN40(&UYh6?mYGDn`Y#XaZjn_- z+4LB7g|VX8>DxikB?CwdalJ1LmB#=TJR(D!`wAO*<|ku__)2&kwi&i?S%&^mV=B>yUk4 zqMR(y-oNhKZeyZ%VX(;j_S1RI&UuRZLHbKdn!COG%8DZXbU%Qy#P7G5TgZy+22 ztF)HVpLQ*EKbebYHk*%XEl|~E&#Pv3EO9@jPS{7#jIEFIuqg29&VI{S;7bh|Hc*80 z3yK^^ww9{?S8(~yY5PBSyEotou(H+(ewm?g_z6+)*xSTc&m{|Ihei0>K>YF;5L0Le zMqo^F7|`c30XN|ds_$VI4*CC#WI$5p&uad=WQRX**gr`AA7qyQ{tG4g&CVR;wvy)N zatVOe0eWshvj23rY$zu%88i+DkS?UTfD;ytu^Z67{CN=xwY!V2s&2e5rYD#6pdBRI zU-t1r-di;45*q+vMN|ugfGm`bsDfp z6F!$UQWWpHMdBUQ#9w3AD$O`RXDl=bC|C6^{y5d!3W%y`uY9}uYnJF?Ja^iCZD%$S zA1W`VV=WPwaoUI9&PoiWY>N(Re6n6jhC9bx9NHu|MUqxf3osC62@s+(Q_Ld|i@^xH zhMD*pgqYSFt>YYn!0;uhZTIy^%PF}9eNr=RMTzrb&fTd-@gVO0C&7;+W@@?}2mCUd zIdIYIAve1kR}Mtw*X3y{txfUq43?dKSxo)I81v54MJE;ShmTb2H$!wWx2F*TZdzr8@nriPa)Um#Q@ZN1MWmf@D-4rDQ`YaT@oDjYApnf%g#&NTvP^ zgStt9L5LIlQ!!Nq@D2TP@!#u%0?NhXxTp&@A2r4f)qxOm*Mk@=*UzX=`BJS`#qqYB zC}Ohatcrs2=OYHzVqcvy91Uq+baGQii$4F@Zv&uclt^t->|;rLb7petLVJ-CK$q{Y z(?G%&Q;lEgOWLlqu7r3tMX=fI)n6^yh-KJ{d|)B9J^6^=?_rbw9A|=HE*#vEDiHmB z)&NZy+ijzn&E)wQTMLPo^NNj^HsHnOvG5MyK7Yr+ATUDdR_v|jVt9Y+SZBMTethTN zn-<1ME;-7gQxs?q7-}GI<>OYUw5g-SN{EXArp+{`LIf8$E5Cw`?@laXyiH^m*>3C? zt~>K_I2JWo;lBw>atDTD0NR>WPOjMCW^;t6R^OBi?_6E$3v;Hb?!)H*Q72P0yFN@> z5g%IF{nS1*M~#NQpwsHSLJ<~Iky$5Qt3TiCYC$_}?1GHicuMtw9FEZpwaMOCHB&Gy zWlncFnNtnwX>j#AV(uiha2ZT_e0k>qVd`8v+~L^?)gG%hxB#`@ct` z?~>;#eh})%Aw-EhRZw@BR$se?T?<|^;uamG+|Z16lBHQ>sI>MM5nRQ>5T<0Q_gXt zkuhAzzDUCjE<9{_S1@i1yY6?ee^OVf@X_Kv&h^;(GOh<`9oPNVMpore{f0a^4w|z7 z@4ij9eV|mg9_!Ihi%q$X;OT22;qE9~u<=Yo^8xclq@cjxNuUr4F9+RlkML5$1S^tG zO-kV_`Xp#4H?N;4F4$`{AAJk4b!mKZP^W9T{K54*{h}OPLf~aufGq9Nmm?kiMb>Ge zZnu=jNd9RbtG;dHw#zL|g2j{psm1 zna}z%I~ojUn-k+5_U~<~v|K+YV~faI4}eaSz_KrZmFy?@N@C~E{B~{DwM;2df+J`A z+VpgF@5^V*g~cxA4DY%aY$wf6ki5p(ez9 ziM*EwH6Rfbiy7Cm63gLuR}{>MtP}bfF$Rp-S&zQm-n<27&$-vn&Jlh|AJ4zjAlUtQ zw#r8KS(dKu08L!#^Sx*mudDRk!tnY5@_hi{Mz)X@|FzF^w79KUwa6DfwbMtP{BTdk z*{?mEAfvYc59aaZ!fiEQL&7{;7b#wk5uFO?dV6##tu)6dKyyAu1HzXszE(iBzYv}y z5K=!t-BaAz7z5v&$2vD)hZDDHtkWqXF5Uu1&#KI-!#M;|^cd;3htO9>LbXF|82e3P zdsdWIJt~d=#5%bKmpw~3aJ~)s)rPw{OfvLQ)a4NM)U?IQ7pi}1(BwPTLUI#k5gF!c zN-LOng1c!J*>qHb=rFU&H|pvVt>!+TwKMR$Ya}Q)=}3F^Xr4{}N&Wqpb=~cSeI(dh zChgv1inLH-FB7G?As5O}U($ae*KOLg>Fjx`W=`@*tzK^AH5Yey_-UyxT=V0}-?Q)+ zRAFD7UYtFmy024c^P!rQX`2ip$AM|S&&8-fQcyP*z1q}(JijbQ3TL++PpE(Iv)VtH z=G!gO6W?#^;y3yrt5NODKP?U|o#c6Gz`o1yk4w$!pk) z?1tc%yc0e$Pp$^8Yi!Az%$ccZO^F2~C zKSp>;01Byd0Ou*^FPZXZ9*^N&pDo>}ll`{vD!nF|7r&{&e+vAkm{gU`J@-Mjw{snn zs!wg4hH-*<2)*8lA01Ch6@%j+dJySPjOQO2GA|4Puu|r27l1`7`TCnkao6+2P?n4d zn7-tunjMV{0qaqgS7~v4%~QMuW%NapX)4gJMnbid=9% z4~E~wavs2ecrb%6aaxh2*!K3t_;Oo=-QlqRLW5LKE-!^NN6$%Xfc#yQ`@lx4Zrz_ zUa1S7YT3;nL<~3tX~-~ld@hGMA`K(;K&bG@3e9`q;2;v6vG2k&23ns`wGHSRjSe)J zeX#>owy(+y@==_02l6v`qr0>m)J6G0PK>o!Ir}8oZW`YQ={ZM;25FXL9JOC(QAYKI zRFv~K+#dC@pw)S&&;CD#4R$JiRiSIA^5?|N1G+c)y~>j#B8r}4`^ zJ66~EaS9BBh9Moq+Cihnq5j|4a#Q(5(l=DnP9BgPMLQpKV z)>swMS9ZKq%hh%Q`C1o z?qr)gjI~wzdbKhZ?A7+uk~8$FL*qJ|$P{n9`gg}2b~O^ePcEwIzSqtnOOW=9r`g9o zx)?RbC{U6CTZBMxnC}pI-T4%RI67NC9?RC9c@u|03XX|JiF)Wamm~tL3fJaBb%F-f z)M#w$ub;r%#_?v4GKD`=aE=SthI+r~6*>r&j`6fty}O-}I}3<@ueTORBMC z0DspfhIfuC{m>X66X=kd#@+~vgyUo;n%~)wS@Dp}& zb*UYaNbYZ;ONC6}Va^@KLa(+Ug=e$&Cv&Oh3afJOuy&w5qPWn&T`h~}DRa-ioNKps z!oAP=*08$=@C{K`-WfwSo9JS6&+k)9PmS)s*pz$0x+2$^*oXd&CMoOctmwg1-C*Fu zPreQhB1ERKXoWRD_@FX2JzD3B^L(#7v#5O=d+Kue+{%ZibByc5YNRwX2N#+fRTpy4 z+P2OWHqoboX8pNK#dD%Q6JrXbJafuOT!|upI8LaoZv`pR8+5S2uFw$qOq#JwjYdJ4 zK-ODsn50(aCu!E=FTG4!vv%$mjbv!pBIG$KpKAUlUZXfI%-vUAODm6IC?YbQ$bsf) zO9J%=2xkB~yIC}_-sF-@gn=6p;RB}0nB4k`%al&!U?X3A zi836D=gkp3mbmZFoVA0k4k+yJnwquKt|uDj1&%w6HDmC8xLavkj=f{rs`@2bLIasp z@O*^2&ev8)%98yFL%;%dCH`Y03Fa75;_5$;QqzpFmpj;zP5j!b)IgrbxjwbhzLI?<<3-K-CYECF_*tiiG?aX=a=f1sIa;Un!NoIJRsGyVwpjj^Qk0(z9rlZ4gD3U z7i3ag(GyAn_V3_MX&!s*g-5stLtEX??6+m#ChiIai6x^LjX$ZgGK;ID$6AU3sTQRSTxtSCfZu_>Qk%eEuFD;H9^c8{kLHey73O1UYNr}m3<<@->GwGI_Ukye{SnVKU)Ba;hB-e7M{Jo|8+Meh(%FI;)r_=pXXZ`hTwg%aRQ{MpIVM zxMImbv7LGrG-R*~4|%FONLu8H3FuXdI&&D+X`V6(>T6l^xzXo@GC%uy@&?{B^UNP0 z+6(b{VgTLrYnX&<=HB}F??@vMiJv6jU)lYtzsyLKQ4$n<*ATwv0Hx2o^f%!`0xliK zoT8r(p}o$wVLfj)jVWSra2%79H^DSETboWKNiDRx&sXj4Eh1MiOh#zSaS2ftIPIq@ z&B-Z-z`Gg?4xIU#T@mTHF#>h>x!`bEOLT}D34QT=-r?&5Ji5ROwPuYNsFiCWgcXWJ zd><)*Puh+?v_rNCnNDo+^vkHiP?fUWrrn9xJ9vAY3Sv{WvFWu$XG1Eib>wr~4^V<6 z+`bsKwMK?wPy0ZBYEfDn~P`*`L9{L3YmgqR^c9~G#m~o=Z7<2Io zlW!G*@WuhZo3GD=cL%XPrPzL-%j_^0ljInOVNjP`m_JUi;HV)fFZ^i$NN zH%|$*`K(ZP6X8`ZIn_VP{%B^nVuwRf61#fs3pxFS-Gl1LGu=1x7ML2c!fFRSLMOwr zn|h|P3SPpB_dM|1vcD#3Ugx9Dn>yk-jKN%4RG`ZXTmV5ebjZ90td>@Bf_?X-$60-E z%!V=_<5|W#; zV=gbRw4+dCtkF6v>q0~Zol%H}r^=lzVA&piNNFK_wNx|hWVCBr&Pubc&joKHe}K@x zjA>GxF|ir!XyvsI)t6#BqNRZEJmx$A5gj8p)utih7sx7?45Xm0HS6*mjqfhYw7KTM zczq>kV|lLU^kZk925XyBQ^L;}bF!*(eh1?Hv-n8?z-0K27kJyD^ta#(Hh+7CU-Udw zekJM0|Lk>tcgc>DsKM0otj(t(%=%dbaEy2G@+Y}ic z&!^+cNi+xHLKr}*ba`RT{2EkTWp{5GkpP0-%{F5J&$}8{vv}b<>JTzoS6a6o+0CbT z`8P_N3arG~(Ol5}ULJe0xtI@RJs#a4Hp(?J0idLR^hx|a{a^Zt4C?C4$X9ls5nzTf z<#`;)Bh%MZ(e`HK;mq0|a%8y(>{#b)dwLEt=u)W1^GUr^6gUf>o!kHb6uk z6g6`R@d)BXtA$72b{hlGK!vlCovFm{6k6|uJeeXO(M7CfPZ#Blh5x&d?{EnD$qmV|Wos@zjL@ZDr$uKd9%)1Kfhwqlx>X7AHE@W? zqiD9#)CLt=nWXH@dVe*-y0aUM0?k+>iRaY~)7Lmzf_yd9+76HHdpJ*V9%vhi0SYD+ z=mV`&C&01XH6Fc_A`Q9AoDC)pjPd_s^yQ1>-se%Uc9IFFGKBigIrRb)*ouV*7w1C( zbaa6stp?H#{Ht3_N#(M z!lS>4>HkrEN1YdtR=)fJnpe6_srYRqO}gKT$tH=3t@2%&mcpyic?DXpq)ZppuUci# z{8k)g(UA{;nVgkg;+`w9hInXxEDg3bq2xg8n{QH2%+6xiz!E8NYRV`YCRJ9DDkn2IiPwy3d+KZONf@|vHqA9RQm$2t>kmJwSeuhx3chZmn3%B+hkB_CK zOyx}z#3lwT%3s>5fx7+m=k(InO1_I;jh{K;y13M73g+uCDJ{?1R}>zzW53{VQ7w#U zciZ8d@X}BZF7_g~^z`}K72#+REE8Xk)5S(anW;(B zI_g~c2WU%e^|6BXsAY=xed7%Q%s#SY@EJV6wlQdUl7WF9cXO)FvQ*)O2y&p7qyWoQ z5c00Bog*elVDCzxYOoM(-sIJD_f;TJB5SZhS|KOf7)>104zotC}5R3=xJ9ALVYZg5&mfs=RUP}l(sA9e) z)<4H$?^fEIQ^6^F%w+;Ivs6!x97Do%QW8Kp9pc-4R?`|Qn*sXvkkxk9NKRwE6%U28 zPgF)fCk$4!7yfY%N1(I%ogPU{9wBQ5{X7_B5qDK?`S=SGJVZn^e~8j@DqB_HCaY*K ztH2o+5YuSEfRj-;F_lm3EVf#+XEuM~tMDOhgtuva&J8stL8};;Q$M9QGK$eaOETv( zCit#Lk#HGBnD({#2dK_{dq^)QtZl_?rVuUJ%E5vyPldqYf$?Y}z4vS%nFw-R`&tTk z%+_#EraV6NAx<^@h6wv2-gu<-KF~<2nAkRou|(C?ne`CR3lWfj5q|ZiWMIhzDG!9Zqd~0Z~ zR#?vmt@m=D^@3so66sJwH|_V_daQ4Oh5;1}g~M5dwaS+jqPwyQoD_+%k%r`Di2Z=k z)8y|RAo!c54dMit9E$)u5|9D|z4`uy}s2+36R6h&aAdA0WpCfepq?B0sJ<01H z-_4yh#1+ko?99l`t)B0a)D80#W4Ca%_TNpr|I$?bnhe;iEseU~0u=R3#E(y*KR`Zs zhoxG%#QH%ontK+A*A;+3AcEK@95{q&viJ5xyt5p@7QDJAV_2PedDRHW48FZkIpYS7 zVbY{I{{rB5U;y-E=0AlpcK<8QON{6&<2Y8_UC_P|*Hf>$14x@wamuhW@pX3nB4G7b zO$Fq?^utgW_DrTv$O&SnY{WxU+%JYU=nZqm_V)S z3-x6Nz1=@sI-YqAj{4=U)B&Y~CtqdbGv^Hl{2u(0VeT(C6?~7o4!czOPqF`h8d-K3 z1ChZ0msc0XCf+R045|p9=3=p9AxsNDHPP4xA?LIG!!3Z{uXp~raXCdsB+G)0@Gr + + + + + + + + + diff --git a/resources/views/about.blade.php b/resources/views/about.blade.php index a2be4b1..c27e3a0 100644 --- a/resources/views/about.blade.php +++ b/resources/views/about.blade.php @@ -20,17 +20,15 @@
About us

Who are we?

-

APLUS AGENCY is a team of registered migration agents with over 60 years of collective experience managing migration applications for both employers and individuals. - Our background is specialised industry migration services in Hospitality. In the ten years, we have been processing these applications we have worked with many other industries and visa categories. It was a natural step to broaden Edupi’s industry base to assist the many clients with their wide and varied visa needs. +

{{$about->first()->description}}

- With the migration landscape changing in Australia due to Covid-19, it’s hard for both individuals and employers to know where they stand – having up to date advice and vigorous representation is essential for a successful visa application. - Our expertise and streamlined migration process mean that employers and individuals will be informed and up-to-date on the status of their application. We’ll ensure, your application, from the initial consultation, has the best chance of approval, and throughout the process, support you every step of the way. + {{$about->first()->sub_description}}

- +
@@ -39,18 +37,20 @@
Objectives

Our Objectives

-

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

+

{{$about->first()->point_title}}

+ @foreach($about->first()->about_us_points as $point)
-

Work closely with members having many years of experience will help you have a chance to develop yourself.

+

{{$point->point}}

-
+ @endforeach +
@endsection \ No newline at end of file diff --git a/resources/views/admin/layouts/menubar.blade.php b/resources/views/admin/layouts/menubar.blade.php index 0079dd6..b7fd792 100644 --- a/resources/views/admin/layouts/menubar.blade.php +++ b/resources/views/admin/layouts/menubar.blade.php @@ -93,6 +93,15 @@
+ + @@ -149,14 +158,7 @@ - + diff --git a/resources/views/admin/visa_service/create.blade.php b/resources/views/admin/visa_service/create.blade.php new file mode 100644 index 0000000..069c897 --- /dev/null +++ b/resources/views/admin/visa_service/create.blade.php @@ -0,0 +1,197 @@ +@extends('admin.layouts.app') +@section('content') + +
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +
+
+

Create Visa Service

+ List + +
+
+ @include('success.success') + @include('errors.error') + {!! Form::open(['url' => '/admin/visa_service', 'class' => 'form-horizontal', 'method'=> 'POST','files' => true]) !!} +
+
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + + + +
+
+ +
+
+ {!! Form::close() !!} +
+
+
+
+
+@endsection +@section('script') + +@endsection diff --git a/resources/views/admin/visa_service/edit.blade.php b/resources/views/admin/visa_service/edit.blade.php new file mode 100644 index 0000000..0261357 --- /dev/null +++ b/resources/views/admin/visa_service/edit.blade.php @@ -0,0 +1,193 @@ +@extends('admin.layouts.app') +@section('content') + +
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +
+
+

Edit Service

+ List + Create +
+
+ @include('success.success') + @include('errors.error') + {!! Form::open(['url' => '/admin/services/'.$service->id, 'class' => 'form-horizontal', 'method'=> 'POST','files' => true]) !!} +
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + + @if($service->icon != null) + + + + + + @endif +
+
+ + + +
+
+ + +
+
+
+
+ + +
+
+
+
+ + + + +
+
+ +
+
+ {!! Form::close() !!} +
+
+
+
+
+ +@endsection +@section('script') + +@endsection diff --git a/resources/views/admin/visa_service/index.blade.php b/resources/views/admin/visa_service/index.blade.php new file mode 100644 index 0000000..0ba4b1e --- /dev/null +++ b/resources/views/admin/visa_service/index.blade.php @@ -0,0 +1,131 @@ +@extends('admin.layouts.app') +@section('content') +
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+
+
+
+

Visa Services

+
+ Create +
+
+ +
+ @include('success.success') + @include('errors.error') + + + + + + + + + + + + + + + + + @foreach($services as $service) + + + + + + + + + + + + + + @endforeach + +
S.N.Service NameSlugIconSeo TitleOrder ByStatusAction
{{$loop->iteration}}{{$service->name}}{{$service->slug}} + + + + {{$service->seo_title}}{{$service->order_by}}{{config('custom.status')[$service->status]}} + + + + + + + + +
+
+ {!! $services->links() !!} +
+
+ +
+ + +
+ +
+ +
+
+ +
+ + + + +@endsection diff --git a/resources/views/admin/visa_service/show.blade.php b/resources/views/admin/visa_service/show.blade.php new file mode 100644 index 0000000..3a6f733 --- /dev/null +++ b/resources/views/admin/visa_service/show.blade.php @@ -0,0 +1,172 @@ +@extends('admin.layouts.app') +@section('content') + +
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +
+
+

Show Service

+ Back + +
+
+ @include('success.success') + @include('errors.error') +
+
+
+ + +
+
+
+
+ + +
+
+
+
+
+ + + + + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+ + +
+
+ + +
+
+
+
+ + +
+
+
+
+ + + @if($service->service_point) +
+
+
+
+
+ +
+
+ + +
+ @foreach($service->service_point as $service_point) +
+
+ +
+ @endforeach +
+
+
+
+
+ @endif +
+
+
+
+
+@endsection + +@section('script') + +@endsection diff --git a/resources/views/admin/visa_service_section/create.blade.php b/resources/views/admin/visa_service_section/create.blade.php new file mode 100644 index 0000000..6ed5146 --- /dev/null +++ b/resources/views/admin/visa_service_section/create.blade.php @@ -0,0 +1,163 @@ +@extends('admin.layouts.app') +@section('content') + +
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +
+
+

Create {{$service_name}}'s section

+ List Section + +
+
+ @include('success.success') + @include('errors.error') + {!! Form::open(['url' => '/admin/visa_service/'.$id.'/section', 'class' => 'form-horizontal', 'method'=> 'POST','files' => true]) !!} +
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+
+
+
+
+ + + +
+ +
+ +
+
+
+
+ +
+
+ +
+
+ {!! Form::close() !!} +
+
+
+
+
+@endsection +@section('script') + +@endsection diff --git a/resources/views/admin/visa_service_section/edit.blade.php b/resources/views/admin/visa_service_section/edit.blade.php new file mode 100644 index 0000000..2d43383 --- /dev/null +++ b/resources/views/admin/visa_service_section/edit.blade.php @@ -0,0 +1,186 @@ +@extends('admin.layouts.app') +@section('content') + +
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +
+
+

Edit Visa Service Section

+ List Sections + +
+
+ @include('success.success') + @include('errors.error') + {!! Form::open(['url' => '/admin/visa_services/'.$service->id.'/section/'.$service_section->id, 'class' => 'form-horizontal', 'method'=> 'POST','files' => true]) !!} +
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+
+ + +
+
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+
+ + +
+ @foreach($service_section->visa_service_section_point as $section_point) + +
+
+ +
+ @endforeach +
+ +
+
+
+
+ +
+
+ +
+
+ {!! Form::close() !!} +
+
+
+
+
+ +@endsection +@section('script') + +@endsection diff --git a/resources/views/admin/visa_service_section/index.blade.php b/resources/views/admin/visa_service_section/index.blade.php new file mode 100644 index 0000000..0dc50bd --- /dev/null +++ b/resources/views/admin/visa_service_section/index.blade.php @@ -0,0 +1,113 @@ +@extends('admin.layouts.app') +@section('content') +
+ +
+
+
+
+ +
+
+
+
+ +
+
+
+
+
+
+

{{$service_name}} Sections Table

+ +
+ +
+ @include('success.success') + @include('errors.error') + + + + + + + + + + + + + + + + + + + @foreach($service_sections as $section) + + + + + + + + + + + + @endforeach + +
S.N.Service NameImageDescriptionOrder ByStatusAction
{{$loop->iteration}}{{$section->visa_service->name}} + @if($section->image != null) + + Failed to display image + + @else + Image not available + @endif + {{$section->top_description}}{{$section->order_by}}{{config('custom.status')[$section->status]}} + + + View + + + + + Edit + + +
+
+ {!! $service_sections->links() !!} +
+
+ +
+ + +
+ +
+ +
+
+ +
+@endsection diff --git a/resources/views/admin/visa_service_section/show.blade.php b/resources/views/admin/visa_service_section/show.blade.php new file mode 100644 index 0000000..426bda1 --- /dev/null +++ b/resources/views/admin/visa_service_section/show.blade.php @@ -0,0 +1,146 @@ +@extends('admin.layouts.app') +@section('content') + +
+ +
+
+
+
+ +
+
+
+
+ + +
+
+ +
+
+

Show Section

+ List Section + +
+
+ @include('success.success') + @include('errors.error') +
+
+
+ + +
+
+
+
+ + +
+
+ @if($service_section->sub_title != null) +
+
+ + +
+
+ @endif +
+
+
+ @if($service_section->image != null) + + + + + + @else + + @endif + +
+
+
+
+
+ + +
+
+ @if($service_section->sub_description != null) +
+
+ + +
+
+ @endif + + + +
+
+ + +
+
+
+
+ + +
+
+ @if($service_section->service_section_point) +
+
+
+
+
+ + + +
+ @foreach($service_section->service_section_point as $service_point) +
+
+ +
+ @endforeach +
+
+
+
+
+ @endif + Edit Section + +
+
+ + + +
+
+ +
+ +
+@endsection + +@section('script') + +@endsection diff --git a/resources/views/layout/app.blade.php b/resources/views/layout/app.blade.php index 9b2fa28..67cad32 100644 --- a/resources/views/layout/app.blade.php +++ b/resources/views/layout/app.blade.php @@ -45,7 +45,7 @@ About