From 8e3346f7484a60ed90d3ce2019ae1713a2e17f46 Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Fri, 31 Oct 2025 16:05:12 +0000 Subject: [PATCH] V1 --- assets/css/custom.css | 173 +++++++++ assets/js/main.js | 201 +++++++++++ assets/pasted-20251031-155117-0cfd8deb.png | Bin 0 -> 33813 bytes index.php | 399 +++++++++++++-------- 4 files changed, 630 insertions(+), 143 deletions(-) create mode 100644 assets/css/custom.css create mode 100644 assets/js/main.js create mode 100644 assets/pasted-20251031-155117-0cfd8deb.png diff --git a/assets/css/custom.css b/assets/css/custom.css new file mode 100644 index 0000000..e969203 --- /dev/null +++ b/assets/css/custom.css @@ -0,0 +1,173 @@ +/* Safari Muscat Airfare Request Generator - Custom Styles */ + +/* --- Typography & Base --- */ +body { + font-family: 'Poppins', sans-serif; + background-color: #f8f9fa; + color: #333; +} + +/* --- Main Container --- */ +.form-container { + max-width: 800px; + margin: 2rem auto; + background-color: #ffffff; + border-radius: 0.75rem; + box-shadow: 0 8px 30px rgba(0, 0, 0, 0.05); + padding: 2.5rem; +} + +/* --- Header --- */ +.company-header { + text-align: center; + border-bottom: 1px solid #eee; + padding-bottom: 1.5rem; + margin-bottom: 2rem; +} + +.company-header h1 { + font-weight: 600; + color: #2c3e50; + font-size: 1.75rem; +} + +.company-header p { + margin-bottom: 0.25rem; + color: #555; + font-size: 0.95rem; +} + +/* --- Section Styling --- */ +.form-section { + margin-bottom: 2rem; +} + +.section-title { + font-weight: 600; + font-size: 1.2rem; + color: #333; + margin-bottom: 1.5rem; + display: flex; + align-items: center; +} + +.section-title i { + font-size: 1.1rem; + margin-right: 0.75rem; + color: #40E0D0; /* Accent Color */ +} + +/* --- Form Elements --- */ +.form-control, .form-select { + border-radius: 0.5rem; + border: 1px solid #ced4da; + padding: 0.75rem 1rem; + transition: border-color 0.2s, box-shadow 0.2s; +} + +.form-control:focus, .form-select:focus { + border-color: #40E0D0; + box-shadow: 0 0 0 0.25rem rgba(64, 224, 208, 0.2); +} + +.form-control[readonly] { + background-color: #e9ecef; + font-weight: 600; +} + +.form-check-input:checked { + background-color: #40E0D0; + border-color: #40E0D0; +} + +/* --- Total Fare Section --- */ +.total-fare-section { + margin-top: 2.5rem; + padding-top: 1.5rem; + border-top: 2px dashed #eee; +} + +.grand-total-label { + font-size: 1.2rem; + font-weight: 600; + color: #2c3e50; +} + +.grand-total-input { + font-size: 1.5rem; + font-weight: 600; + color: #40E0D0; + text-align: right; +} + + +/* --- Buttons --- */ +.btn { + border-radius: 0.5rem; + padding: 0.75rem 1.5rem; + font-weight: 600; + transition: all 0.3s ease; +} + +.btn-primary { + background-color: #40E0D0; + border-color: #40E0D0; +} + +.btn-primary:hover { + background-color: #36c4b4; + border-color: #36c4b4; + transform: translateY(-2px); +} + +.btn-secondary { + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-secondary:hover { + background-color: #5a6268; + border-color: #5a6268; +} + +.btn-light { + background-color: #f8f9fa; + border-color: #ced4da; +} + +/* --- Layover Section --- */ +#layoverDetails { + display: none; /* Hidden by default */ + margin-top: 1rem; + padding: 1.5rem; + background-color: #fcfcfc; + border: 1px solid #eee; + border-radius: 0.5rem; +} + +/* --- Preview Modal --- */ +.modal-header { + border-bottom: 1px solid #eee; +} + +.modal-title { + font-weight: 600; +} + +#previewContent h5 { + font-weight: 600; + color: #40E0D0; + margin-top: 1rem; + margin-bottom: 1rem; + font-size: 1.1rem; + border-bottom: 1px solid #f0f0f0; + padding-bottom: 0.5rem; +} + +#previewContent p { + margin-bottom: 0.5rem; +} + +#previewContent .table { + margin-top: 1rem; +} \ No newline at end of file diff --git a/assets/js/main.js b/assets/js/main.js new file mode 100644 index 0000000..af1fcaf --- /dev/null +++ b/assets/js/main.js @@ -0,0 +1,201 @@ +document.addEventListener('DOMContentLoaded', function () { + + // --- Toggle for Layover Section --- + const layoverToggle = document.getElementById('layoverToggle'); + const layoverDetails = document.getElementById('layoverDetails'); + + if (layoverToggle) { + layoverToggle.addEventListener('change', function () { + layoverDetails.style.display = this.checked ? 'block' : 'none'; + }); + } + + // --- Auto-calculation for Fares --- + const passengersInput = document.getElementById('passengers'); + const fareInput = document.getElementById('fare'); + const totalFareInput = document.getElementById('totalFare'); + + const infantsInput = document.getElementById('infants'); + const infantFareInput = document.getElementById('infantFare'); + const totalInfantFareInput = document.getElementById('totalInfantFare'); + + const extraChargePriceInput = document.getElementById('extraChargePrice'); + const grandTotalInput = document.getElementById('grandTotal'); + + const calculationFields = [passengersInput, fareInput, infantsInput, infantFareInput, extraChargePriceInput]; + + function calculateTotals() { + const passengers = parseFloat(passengersInput.value) || 0; + const fare = parseFloat(fareInput.value) || 0; + const infants = parseFloat(infantsInput.value) || 0; + const infantFare = parseFloat(infantFareInput.value) || 0; + const extraCharges = parseFloat(extraChargePriceInput.value) || 0; + + const totalFare = passengers * fare; + const totalInfantFare = infants * infantFare; + const grandTotal = totalFare + totalInfantFare + extraCharges; + + totalFareInput.value = totalFare.toFixed(3); + totalInfantFareInput.value = totalInfantFare.toFixed(3); + grandTotalInput.value = grandTotal.toFixed(3) + ' OMR'; + } + + calculationFields.forEach(field => { + if (field) { + field.addEventListener('input', calculateTotals); + } + }); + + // Initial calculation on page load + calculateTotals(); + + // --- Preview Modal Logic --- + const previewButton = document.getElementById('previewButton'); + const previewModal = new bootstrap.Modal(document.getElementById('previewModal')); + const previewContent = document.getElementById('previewContent'); + + if (previewButton) { + previewButton.addEventListener('click', function () { + // Helper to get form values + const getValue = (id) => document.getElementById(id).value || 'N/A'; + + // Collect data from form fields + const customerName = getValue('customerName'); + const phoneNumber = getValue('phoneNumber'); + const email = getValue('email'); + const passengers = getValue('passengers'); + + const departureAirport = getValue('departureAirport'); + const arrivalAirport = getValue('arrivalAirport'); + const departureDate = getValue('departureDate'); + const returnDate = getValue('returnDate'); + const airline = getValue('airline'); + const cabinClass = getValue('cabinClass'); + + let layoverInfo = ''; + if (layoverToggle.checked) { + const layoverAirport = getValue('layoverAirport'); + const layoverDuration = getValue('layoverDuration'); + layoverInfo = ` +
Layover Details
+

Layover Airport: ${layoverAirport}

+

Duration: ${layoverDuration}

+ `; + } + + const fare = parseFloat(getValue('fare')).toFixed(3) || '0.000'; + const totalFare = getValue('totalFare'); + + const infants = getValue('infants'); + const infantFare = parseFloat(getValue('infantFare')).toFixed(3) || '0.000'; + const totalInfantFare = getValue('totalInfantFare'); + const infantBaggage = getValue('infantBaggage'); + + const checkedBaggage = getValue('checkedBaggage'); + const weightPerPiece = getValue('weightPerPiece'); + const handBaggage = getValue('handBaggage'); + const baggageNotes = getValue('baggageNotes'); + + const extraChargeDescription = getValue('extraChargeDescription'); + const extraChargePrice = parseFloat(getValue('extraChargePrice')).toFixed(3) || '0.000'; + + const grandTotal = getValue('grandTotal'); + const otherRequests = getValue('otherRequests'); + + // Construct HTML for preview + previewContent.innerHTML = ` +
+
+
Customer Details
+

Name: ${customerName}

+

Phone: ${phoneNumber}

+

Email: ${email}

+
+
+
Flight Information
+

From: ${departureAirport}

+

To: ${arrivalAirport}

+

Departure: ${departureDate}

+

Return: ${returnDate || 'One-way'}

+

Airline: ${airline}

+

Class: ${cabinClass}

+
+
+ + ${layoverInfo} + +
+ +
+
+
Passenger & Infant Details
+

No. of Passengers: ${passengers}

+

No. of Infants: ${infants}

+

Infant Baggage: ${infantBaggage}

+
+
+
Adult Baggage Details
+

Checked Pieces: ${checkedBaggage}

+

Weight per Piece: ${weightPerPiece} kg

+

Hand Baggage: ${handBaggage} kg

+

Notes: ${baggageNotes}

+
+
+ +
+ +
Fare Summary (OMR)
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
Fare per Passenger${fare}
Total Passenger Fare${totalFare}
Infant Fare${infantFare}
Total Infant Fare${totalInfantFare}
${extraChargeDescription || 'Extra Charges'}${extraChargePrice}
Grand Total${grandTotal}
+ +
Additional Comments
+

${otherRequests}

+ `; + + // Show the modal + previewModal.show(); + }); + } + + // --- Reset Form Logic --- + const resetButton = document.getElementById('resetButton'); + const airfareForm = document.getElementById('airfareForm'); + + if (resetButton) { + resetButton.addEventListener('click', function() { + airfareForm.reset(); + // Manually hide the layover section if it was open + if (layoverToggle.checked) { + layoverDetails.style.display = 'none'; + } + // Recalculate totals to reset them to 0 + calculateTotals(); + }); + } +}); \ No newline at end of file diff --git a/assets/pasted-20251031-155117-0cfd8deb.png b/assets/pasted-20251031-155117-0cfd8deb.png new file mode 100644 index 0000000000000000000000000000000000000000..6d8b799570d6af41c0f491ef4a708923530da1b4 GIT binary patch literal 33813 zcmc$`2T)UA`!0$Vm8K#hT?ItC^bQIl1f(|!O{EihC{jXD1b#|Ws!~Nd0V2I8C<;;& zLW$IfNGF6AAOy(WeBXEPoVhb+&bepK`QJU0*|Rr$C+}M8UGMum&$||Hj16^|E^%I> zqoZR2={_{2qdV;me5x;;2ku9v#t*e9?;QMCovp8I|p1} z^wqV7($O(@o_tPq`;&em?LY5; zrvKJ_Eel+*-~K=NO8EOja>enXl`Frx4l!>mtk3zhAr&;FCnZ{K=eiFI?71g?RQrc_m*)->Mzhmeg3Rm>=1mVSt5MNr z*@*f9*MwdgKBNBea;W=^-NA0!AR8mvt`Qt8cY{W1UkwYL&#KE+O3E^KFJeuxd0 zMIp8?(kY)#lf7vTFT)4Z0#nwccBO9=Y*x#O*TDDkWzq>sy0(5~nk zRcL9P1S>f@Wsr(X#k)ubS3 zT2^Q(C}T@?Q0VJI?WgpkLua_jG<xEe&a9V}Oq9Z>Gfc9npiMpP2O zy8;a?a`(jTtd_LWP%};rJJtnnX&d>eo58)U{Vg|3o%Nr45^6MV@#QI((nq+c?K(i> zoO7qTOPEFAqsn&89jaZg0!7?p(~l@bEAn(++C=)a8CmDZI)D2*N7eL~uTK_R>G>xO zEq!T0u+@?=80-OsN@%QjmWvl`4d};(R;(!5N&D1GBl^KkZF_=Ulp%WfNR6vlH*Icl z=e0vR^e{WU{YXbVta#**=kBN)nnCZt7-fKohAWunjUyCPHe+5V(KgDrj6f}$^6iuj z9!@tZj1D{g=lIR3%aa2N!NYRNufl>?ax+;Ep#2)j@R4B^qt&-{=;2}3b?k6d)uBvFH{tGcgUibO3>Q*6MW!diZ=@Ujg^?* z}=SFHiv z7<-H5ub;5I zi>4Uccr=Lmkc1XO^fU0;X98;%r((nj6`_V@S;uz?^cky@N4PXR6>PViu~+Xo%+TWM zBdvwMUfC|m*Iq`S?rn8kZ6vqBb!O+!>ri}qNDSKs=}s`USd@;Q^pZ>-mU93btfFHUxazJC8xJCp_2q7 zF~jyeKnHJ8RF>f7aZ&=du~o0EvumY*!de&5@5QMR(3G2}e!o#)d2GL-GP$5JN_iJe z!s*2Enf9fk#ss}mt4O=8dIyjcz*palyBt45tvyO05udbIz9Ox5xZ(!1)e|X?bLhXTDJxLr=ohvKS7Do{>n~$!|E^ z^l0DVcRc=sNRdgsy^QIesixTneAr{#uN8n<%I#UIKx7eZ3ug9A7tinf1|2UuvNmbyI5g<_b@W_^n@cpQ0)3)7YTOK%SO{GoU zfz3JS2YL-X;1^SjleTg#-KpAvW@5%%Ur0_%xcB8NkgEmSX)U=CHZ2qq{m;o6qCH+) zL0@@yqA&DQv5C*|XcOzkTS*S+?}qI6BS))X`QIXoGJ+tyEyarBVLx`pS@P~S@C);j zS@Ezqi!^0=J_XsHy^pE>lU|%Ow!T;EjqZa9$;Y8!WLF#FGaKNRcCDqD3<0_IQ9HDH z=@}ASWZBei(|J`d1A^<=+2HpFJN&ceSahYBykU)%6HBDCzbsMKAdS?X08eM{R}dGb-JF+vE#rLl*MSN6|FU{i>1{- zGGdW5(%o!Nf8hh+AdJYCp^_e8;=vA5M!;y;T+-W#;V+Xk%5f#< z)3Kc^`H%*|<&A3VyBZGZ6I#t=&XY~@(C%7-OB)Z^vXfJlY+vf29T`Jr4%rHlM}#Ht zg=o^Va7i$6HS`!8Yq}ROopO&M{A#Yob)()-ts}-CN@75;9U@ZKXB|1z2qWoR*?NaF z{SeCgu3G#X6(w?{yCUQJ`6FS={$!4O znv$^Y(%$yn!HZ>h@h+YMA9R`X@e=l6DE85$9Gq3@_zb<__hX4hXn;0}E3mcj_bL*i z|KbA}*MqNL;{n-)ElmnbmxD7v2fyp=nfO*>LkHkvTZICL^A$?)P1B+&|E%1cDJz%& zY>IoSu-Tc2cm0be6D2`>d^1Hpo)uPDFp;{(%JZw)t|(`7f$klEKvWJ(9QMRukF3-; zU!kZ|`Yo%jMJ@iLS)pdQ4xgD~A5rZy!$9yr@k&tY(?{2E!Ep_csO(M;sY19#qyE7@ zke8~LE!ccQAHa?Yu?y_gLCKQNZe0Wi!6UL6EZn-qh^ zyE$X0Lk6=vtA!g_#;;rgAt@1+B+K@4=hd<0#PizGU0F!Em_&uPIuMI$Bglx`zXE$5 zKa-EUVpoVhABbUH*i3EzG*UtUV3T>uI_GodT9>6(*uWk%Z8I0X=ZZG9ua!Fcv962L zj*66AdRdOIccuX_^XcLG)D$({Fg(u)G7ep6mWSsmIx&6pONY!G=`OfTv zlTOaXGM%;BA*OA_yiBFRGVD1=w5`H-^CQAaL6UY8`pDxbHBGzmIWW`VK1|JoT)s{T zY>z-dv@@v%aE?Qi`g(d5 z`!*kTJDrQm8?B&YMDTCk0U$#DF;9EQoG-<@amMT2>s6Ep$=THcTx+%Gsa)#piuw#1 zFCdd#epExlZxe3K*~UiXYCJo7`+mO<*~49_p)LQ+G z>6e8Hi*lBsQ@%zE5;|dM_1g!m04>XT^Iyc#V&ZaXKf2S}{n53}+c~8pXILZhrw4=B zf3i>Pgi47vK1Mb2t9EPJ&8MxwE%7o03jmRhzxyj44YcG+(}N z`&u^JK}dugNujUqR3;i87PuVxh1hZ#DrVdWLau#s)a^n!2yA9P@cQ7WM92xqRo356 zY9*IMovEk&(4)i{T9S)P>YjdqE;lcIfD+11DHO75XyGEf?q(E=!SzP_{Qvq%$P?|y zn@KXhw{92Cwr!&Kn`&H18Nn2@@)@V&zo-Hx?^1h#-=LH+uf$FIxraq#L_hf!kTKVS z>Ma6KlJ;Qmal%&j#cc2Sp87Q!@N34alRPi}Y)-u>s9olUNe#lfLGMdqYsJ4`sEupV%FT8O*yJMPW9m~G(OuBVl_%@%jd^-Nf^9OoB>Uf~F;u|n=bHeYwwKg%n+#NN_7 zv&Z0!nYo3Y!G6A&|2C@mI1X(b)HL8%l>2xQ-hDG|F=onSw>PrD^ah7| zT)WW~m(d?J4r515l_dD4pR*)P%VQ>=enM6?xV_C<_FQMOB^K3O zLo1JGKC8{eearW8%Yjm<@z5-8lBxEec#-K^2vz4kcQat4|y*?r$2u&HhXF{+Mh>Cw@6jB_CW3$ij;+}AyyLk}@!;bn1#yG) z?rMB}g-=+!M%|(8;jb5!Z38dU(=B%^-M5o$w&dx*(U=(87gW&hJq#o(ef{Buyhc@8 zBIPLwW3wK>8$}KjqaIP&cAa-&{@GdW8jaa;-!tWDziL>R!{FM)|kq<`Yhn-2o(1shQbMIkG&|MyoYvp7NTL(kFO@e|AsU` zJ*y^B+uSsn-{Ax4V-fUT+p*n2< z6X7~VXL)?%_#^biw^dGR*8U5}?Wygi^6et+L62A57X7?Ye+_CS>Xtr{Rh!>KW!83) zpyQ{Lh>wP9-T;R<$h;mi=#cbatGFFiu|!{*L_WM)#R{k}|u{ z7{88L3@U$`>U4Zce<(GK8-CwOERIpTG6U1B*vkc8WW17G7+mk&;JjaYI6a1OP>q7S z4ZcafJ|4qS$vT;bZE>Lv-&PK7e{xF{BsBA$kaE?POL*(ob;U)kqMvhbXsv07VIS^K zowNy_n?n6pn^sO&bSG@pDZTE7OCAn$Ok(hqcmg z-?!w%`;CTL#s~HK@O4-}iEL<4viyE*sJzwI==o08$)o0cqDHZ>l&BL=yS>f@4=oDU z*38V<_Or^LnMp^RePs5k3aFM>dvUGPTsqMf*q3DAkDWG zlxc;4Pa=cdOq$nNziAns4IBa2k2j*dEIxeI7^!W3(AUgS_)Lp{{apIyZ_fnsM}yas zBq|RjOZ>t7_Xx^!ODCYSq0X;U19?|Bz_+7hJ(pU+doq26TPHsMfb+U&Vf~(3eDcy1 zSK4pgd*jF-7e&=9i5i$5*!hWL6*t>RYmL^PXg7?S($=~)smbs5_}=&+fjd>~mfs%4 zOAY;RzhTTGr*b^Ht#x-C$t0~Z`vCkUJT+0GUJSCz^I?|m22G;!S?wK!D}{BT0e%Zz zQZJ$@)@7UZQ}sqHuM*fz4TT?B5Q$&R?XLG-;+nlx{j8RE_!{ltXY&{4G$!5>;hL#w zj_twwAkIRNf+e`&S-9Z$+P%UXiz*s|(%IzN;1L-Y?cxG_+^zLvu6PwL{_fwH1c#wF z&c7;3>adO+dXi`pOcxbZB|zvbZI$i3niHmf@8iZlH9~9nFK5$o0q02m7989_Qx!U7 z{Jzg9c*s+?^1i^;E6;9D%_FRdv+!J2Hqto)2D(bBOQzkcNkW@CLv|8VM=Tzl*_T4nkM4D073i{6MBF>hiI+|zi`{;mWB1jR_Wfu4gW?@?e}4@%_+Kzo6Zf92^1C;8`{uHeoDbH z)7NQHzM;=*=`lA}A3pRMPT`^ibF1_NFWd{$*(a!w7j$UUH^=OJ_%rjk)cGXfs$gL| z&5f{oqzMe;+mMQ`hDw^-9=^^ug<^E)1c%fThElO}3^7OTaS?>8Vgw+o#?od3`kMdw zx=a0gX!o{}$0qEd8{Zl!mQ3CQ5-@p)<{Lh7cM|QMxfBfeX5V%))t1i9f`KmXe&4pn zfnVP?=?S04RC1%z)3ETxw;B&~PcjgdjiqslQb4Ga9S3V=PabOZ8PSFgnj8-!egIjD zFLYzj2fXEp-26|b3dw@AZr5v3X@{3qtGmAJEt+)m;_4{f4U6(#$9{ja+qSdP+u(I; zd3}cw+B-^86P2X;ZJ101dqj&uO~h;1bn$?O;ftBuXq7}S<(ck>lht{1fO%Q`tK&(X zJt5q0;8s_Oog}O8DtvSkQL~0O^RF579%TYklpnN(-e;)XerQD>GZ6aNtWJw-cRX{h z$t1TfcwXa~yYflSR{iX`z4($nYT?xpSatS_IJ4K@!y?`f8%^?0@*te@eWqp0Qo8n& z5Juc91EU|6@0fteR4#6jn)tg}NM~jt_*#<5q_>AlU`1ClC|}kgn!U{Cb8z{6>{i$a>HFV9fD{&aQs}qeCp| z{@Xj#tP~!eASzxAqP&K{Dr21b`~(i{0Czz$<7%Z4jt?kD_`bOc>}fXzO-`)K17ZZ( zF2pB^OfRC{x!$CH*e#dON}V6RYjBBXGKKt68(ivo44}lF)N%#2J0yhBhp(RRuK$G_ zp#1sW)@Ir|cXd=y!GC>@Gy9Hbw-oA@>K}ATN$?3`a(jJ$?fl>A)nGyCXU27tUy1U$400LY)+LB13O(p&T>0hMZokq6j=T7jcaPR7xU>1%hc$85SM_Xa0 z6W3pbP2CW}_Au^02Q>>Yi$wgNqA?BMP0@3?bx+b_FZb~w$5lpT@XC87rl|Zey_ojQ z&p^o5#4vlk7~0oryXO+!DN@P=9b0um8jPJ5#rG)$ymRIgvk zQ_3`-uk;ici)508dp?I)-T)K$)!a?-U#a})<^lSdo;T$vPSd}eZHT}u{@IAVg`aJj zM&P%H^K9w8PorU|LifD|9vn~9TDN-{cpaq{8u7W>FnUbbbQ6+*R=P_Z=VR_0?bBIa z!Wjctq|iB^Apr=qwOTB7i+5P*p1qd6`F5UV_cb}$>om&o1MVA;FBZGFat4Z5FYqieq9foCQ>X&@{ z)dn@d&o44*uT!J{7440kH+GMPwCalgm15vdv|xf_?^R2<+iNtox;?0%xNtm=k25{z zPdJ*MhTWxJN7U3)>lHk^v3JJqPdUD8bN6uzj(>Ixq_b|G%yU@zleVfETZ`Im#>yt- zV{Ns)(cy#SCO}t7%{vgL@d?2vuEI$-b~sTFZ3b6p&=D#=n_d zQwgSk(j*teB6TG zzYxPNUFP?D*+P(a=Erd#6wIONRK(WaG2%`nFgjf z#9M1g)uc>&UUziHb*Qmes$5rbHYzua( zn>7vWS;lOGp^w}JrWA++$h&KuX5*~6??{Q=;4*IOSmT8JjtyU@ByP3V6NHiAiOGXl zZWx-cyexVEMOnVRbL4h%J1}@rWlLewfj>-hhbPrr&NE#pR=AEZuP}kC70u^W3YFLR z5wQm1-TPu)E$Rd0z$DM%W~0P>-N}vh-+U|MDq;$3{WFq2@g%Mk?%=jZu#9ZKV4o3E zv@>O0P3oIN(ltsa+9+x1r4_w)j?rqg<|GsD^eSn^bR0z^x@E<-o~k?N;KJ~Ucs2Z^ zINc{l6VQKC@Rgdncv9*$|F5n4{&%X&67Im^C*K9#`U`ReRE`eq%CNol!D8n3<|jq! z4$4>Ge`z59#Z~J6js-~3o%0+HRW6H~bR8kV|0zm$ zM3*&-8EIt{L+m;=Lvk2c%SZeB<-MxW zbh(<1f7*iW9VjI}r=i&IM{AwO>&lCC6A5~p8__0+&qd3e3PB|z9@%{px9!wa{1b*a1a#%^leKZAV_RM^?I4eCX@Tp**R@5_IgKpYk% zGZdij!;`HCdd)!Nw?m|3`>3^YTP}lU(Lo-13%((Jr;`N;uV%Y8N*piL0jUxc_MY-h&|26t@U==c%y?tJ)z{h+mx zCKGGiKb{Gb4aI4nMoPc&kDoM-q%-^%^1^hk|5ApJM|mOG;;y-%h}Fxta^svI8Z7ih zgL(*GjP1{vOGo6Ids?P8xI*UK!Y;f;T59VTz2P?#l%X@MZd?D}JLP-7Msl*qPlda) z_~NL?!jgx;I{-PO~I-%uDAN|xCZ)6~RCv_9JZh@>h6&g&qg6|v@sZHB|bG!=l(D0dip=O6IhU6S~4e zeo?xobsv<#prKdM?3o}^K~=qNGslcBdIWM;DACu+oUkgJke4(SXRx?Duw5NdennNV zhl*t^^Us)RaPslf0;Ct<|I=B}>& zzBi_Smb0a9sQK3*_jTDZjK%Eiqfs=`R#-q*sM7XadvH0{@|K7B?9$JBv)H19bYK5O z=z`}>V--se$kv_*}R}QF$KFFy+(rPZ;+LP%(c_^Z2-BL!T!EQTEgz- z=Yu68dZ7|&`6p8%=`jQSJ2gt8US^8p>2|Lhl2zsg4pLg+mM&>okM^>T!;4ls+@nhH zlofFno8e*U!zD%wcQgHjx&E>-3;|Y(qkF2QdqyH)VPk?pUcXN#W@&doi*)AEN=Njs_nGKAp#ugRadtZT}AA(9KG{dgT-m@z|r3ov~ zdFm_P5A}t%)n~d>LgVY+kK=H!EEkq@=CH0m0Z&x%%+p%1u@jqTOgggQrMpaji>axD z60~NHxpC^Ims3M%L+F_Yo-;p;%1JoeT4}3K2lj6~?puTFVKFPN4`YN=IOHE^DI3f+ zaImhn$0Z>D{*$>Vs4b4T;hdLpeIl{C4LtW&=h5|0|9MfvMy8^e^`<)J)le7RRZT*i z{PRqumm1@(Dz$axUqg>$5MQjCL$uD*)$ssv{`YAM#K(`LoEbapd#5|1U+Vq03wve_ zPnPt2PW~@i-}65gIsf|$kD7jtxX({Xdod|bN}hg@w}6?hXdeuss~SPQyT0RoJT>3T za3r=V{M%OOVi;Zme^?G3*Ic}4o+d158OsYipv0>XIcQpvHm2@T#YMdV<-?CDvAdBb z=D{HyF2k717?lFRl)o&4h&FS;~*=uC1CA8P0PV|(YLRZK!}jToUdsM&+Qf2`tV z{=7O*vOu84V73(QAfa59Cp03nI5w9Hu&qWp`g-8D;YhMnSu)2phF1#0i{?3-Q{G1w zis&Sdj1QA5V-C^V?b2hG@%WtbRx?c^vTu&~S6BjKEQ;`U}l<#50kKpQ)d*t|2`i z%(`6taR%knPa|A%V2=<-7_Ur;JU!08OJ=E`(0l8IAYTbjsv z+zc4bs`b_?DHKyK(DlXDCTF+3qyk$lyPvAiIJEoAz6@dsDy0c$mS&r!s~6WF3r&%( z_D62tDtmVaG;QkbD_?I?-a@#U!`Q&9c-jKFYFvyrwbL7&9(Pv`z~bIG&$!s<6pJ7n z@TJ`)Q6=$Y<~5U|1Bj-ZjW8^AlvrUH(`jinAOFTyy9@77dnfRX%GyWeg_)nDTOEw# zTJid}F5ny&$~}=6*^8 zy6j^-X-m|x=vrBsOb8a zg1?|;kFacWT8e*riw$2R0uA^>3U#%x@-#fR(7wbwJ$6SUGE9ICXL@2fQ^F$l&5h11 zsaO{7&)=T@R?9)nhW4q}3OI%GD=2-?7*l%MbAcsnB2*kYW4-Tk30aVw9$(d4J(Fr8 zYg5!f38b6o3Z1(TP?|m^vIddpqx|$&t(|B0BiflJkm)T0VfzG(r{$aNupnkn`7?N? ztpJFn*WGZQU!H~)fqJSt?yny}mI-2=EN*>Y3OhUEZ$PC7qm|Y;GJVBBUxNcp?MBpg zbbjA=R1tMA>s?`|8Ja4fb zf0-~yPU&Lw-^tQ8EWP>WpcbGZ=djJ8EM_%l|$WYasS<(K38LVDi#wv zVFv<6-D2413v4Ac=42pHD9tI+kOByiv4Ol+otj=0s#l!)+TwW_;&uW4E{Ts>#U zFuosIKs#kC*o^!Qq>GM__W>ueAYD$<|8mU{6jKKt=(iQfqm-T?$Nt&(d7JYd4V4h< zbS2x|bM>=DmZ)=siECDS0zQWHXBea=j--$yNp;X7uIWu983F zru~@??T$6ccs_kJc4aG4uS@5kK^J~43T->HAuk5A7^(SnlXL){U#b@EfSQtxP)Q$H}+E!I(pT3fBot)L#u{gVYeCR7_X?#9WBr@kuhq{&?m)*!WsuuxIEP0;Y&_038BJm%HGMVOIrk4tK|0=k@4Q$WU z-ck)j?7pUciQdYL%j~;k{%aLfdjulefiJVUG1g})wLF2v4R~EEL2L}^68_p8rC-vV zB&chVWyHSzWPHNb?owLf9G5&|Ygvg}h~PrzaZNYsZBUSj8}z$T;KeK@VZH@vvIgTwU3)thY@)hu&$C5Iu0Cpq2Y> z2`HH}N!DYkRBYQMy(_`X{Ae;UO`xn8%;uOkQhsG&?#i(F)8(wTIR39jxwDzSCTn<% zs=}E7n&RXZ{ZCyPLnqa%4fXlJa#Rd=ZNT_}PZ)G!#FWBy-6Ou;dW(d6G=Q~TMeWX% zz2yX5DlIn^d2!djAG$4LUd{h#{~Y$2^1VVOjqip)zl#`ffAnyd$(8YQD#tx?(bva6 zWKpQoZz6DT{lVgE=Ha=*;tM*}0dU9e5@ zr8#+xO$b{CBFE}@*xnVWx4y5F&LV+F zheu_&8H?(&hKu+Oq#lXU1*8Jqt&_2kne(LTQkX%l?KB8yXmAnZQ##fZV@lo1loK&; z=z5`P^*$dVALq3#2Gxwu%lG1_;eKD~H#zoXq1*!TyaGz23pa^gG)e%5S6|~Q=V$#^ zB|Du;_82*c`HNqNv=cizf0Xk%^O(jnx)&RWkLKD#`n{@52*gB`_}_G!(cuXeN}om3 zKy~6ZUXKb)-u1GI`u9FBYe`H@HsJCAFKoD2=rw_Y3?+dTAJcZ|ta#%irq0t#PZqgx z6;Rw^K{<~C-Rp(IG{mPpLpJ3*nFl8zHhXpmfdLk# z{PX5p=4P)%_#!1aNq>IYB6HIt1f+MGupeTtx6n=bAz*G_8l9Ig+&IQPp}AN{&7}da z>v~CDA9YDRX-Gx8=z;S=sYP z*_W4{xKNBsOIONB1Nn2Zv9AmUx-$hPH||Czj#b~P1g1y3k43+7hLF{&c(9RNMx}{1 zKzUm>Mm=eoWdWyXY`xczYO z{a!xDiaS>Wov+E}-(FV^=J+oWLQkqz_^K_7fZmPUlw<8`Yw$2&#Hh%myFYTuUAv~{ z&gCEf1)c|fhV<8e;$eC;+x64fZAoYhAN}hFTh*n$)iCL~aJ-Xg{FS5wY!J^;$i#>y z8~4QlVwMn_kj>GVcNO|z;K)t@lFNR04)kAHhUb4h%lz-$u<-Xk6aye1dZsy+F*H6p ziJK=B#I8#9;2s?@;NOal6iT@=dv*90#H`q=Xm78vA>b2mgW94BEnZo_1}rZ8r+W?Y ze8&i&CsxGB@k}}F*wpN9m0gv%Fl)Wj<8tWxfTy)v^0GFZEh4cI%#m6^dCoo49zZYo zd4>#bz#{s8aSlsf--bMmX|v~N>)t)~Ddfu;(N61=hajOmbnNv(<~YtYivVPdV*1(g zUh~UsAf=KO^ANCU%DZV22P`50gDUxAEb8+jVmmz`% zV?lJf-`5Zewk6_;5&Y%JC+w<5IY*u^XuGQ{LfbE1>@_0jlot~@?Cm;Lpf)+^UZ?+i zE&$hC;Qp4isQf_LQIDTwXqWpm9FKt2>UeD8BZ896pIh!^cee)<{nKP`&gj|)CZ84bOA*EFXA!cgY!&NJ_Cj@%j)GHeH?b!viJy{h{rQZib_Wf zy&MoxytZt_{}pK{n!#f=mTg>bC}RD`tdu=H)58BAf7j}beB{ITdJba`R%O|{Bl?>` z^$jAw0dkT+l;B9=tgmc1_ms}VK^J1#1JF|$xMz;_g4e>Rd3nu2U_xlP@{3+uDT`nN z-*Qt7qb`Hb?W$|YbYtx^?+Qnx98+0cf5{k=TbP|g#YeNvr*m?Owdm)fm4{!dm7BxW zJT7u;b?sy@x4U0_;KdH)$s%u4%eRFu_a5yE6(!ZQM33oN>~R&QJm?lZfzkl(C(L;8 z+LW@S%ihyE@>~VR{Vuj>$HcNxW{X~+%rGn5bnwGZ^YmMLVWW~e9jdz*8(^x4l-Vr) zmWkY~Oq{kdxoWQM#)EVb&Ua5#G&5m_;8qPMdimI>T-a%Gx`0CSX|-mwq4z&(iwK)u zrrns4)e&(K^Y6Z$dqasP4 zb^lrqSNjgbzi>2NL^LhC!`{ zybzn)V_fu}rv^SCoW-(AvwZ~(W-pnKd|B%Vb7Xc8s%7lv)bMJL8o9FYinLNVpYKJO z^!=Kv>{6~5=fd?&yeo|EW&=jB@Z2j`FRT18mWKS334+=dxk5K_R~DcH9TK3jGd`w` z=U0v0?%N=;MtvfsY#W0si=I2n0bOrsvpB97hFB?#fPq(YwivdB5 zD9R(&F%2f7K(m#zq}JR;9~Zr-cQSO0b0UB)927W$02DmN6kqz?mh?NN2q3g?* zCF8{=mGlpTZyH-%xAuvWRU79Lj*NSf?C|vzUDMK8SSH#&G&S;EwiWSY-GBt|DK9(1 z6|H8vWNjdzKXp9XvM#HoQ8ef_FaNvB@NW_7f3&YGP*-&bsPMez$tih+ed&4 zsIUuQ8lN_)GI$7r2Ao4?X&SCTmX=}fS@cw}c2H2N&-{2o6taoljs#2)8c#=eQ<&!} zZek!s)IqDPI4qkXdC{&-|M-XX;DRCk7(ak3kFf*GeH-^akAA#r)O~h*_YFEPGHYC2 zXRdE_&GrYlmw|1`GyfbQP-8cwcSeO%Z-n*8{mQ4OqKm(yxZh4NWvu+l|0t&hLG|b z&X%7WFvdrWVTy_^JK_nDUxKuB+alpl<^1pQ)0YA? zA@>pk-CSN0{iYm|)&<|}jXXv#^fcbI;)3>zblfe|OinFdPAaq+gxnXLTLk^c_poUY zaapVL!iB2u{nd{y0DvZWv*11USKGEYAm4i0Xy_DT zD3=mF+w8oH7!#|!gc;WZN*(b(Q$EK7@Npj)m=VK-Fad?BY5<;_Kk(^Wc@r;pI?2h_ zf<4}Aq$}rro`P+s~;E02aF*``7?#^hnd6=vio{yqwhxHq6akVJ0r8{L5M7&#?DJevSov zc)mDR&zBANB(L3uG0@rGNWSFGS#2EVUoI!>u{8LV^A2~XomNK7^9MFgr6lpehTWc} zw7cBOF)N=%OfAb+#{0&{zJ?OYH)c>r=_}$ixNKW;q5U$?6OJ#;IfF8YU@tc85dY>3 zVre(tp5v@!HaqHE=luA4ad_0cCJ-qu_e9HrPDK3KitH76gYRAveZyG(;r?6Ab`vQC zy(cw(mKB-igt1w}*e?Erl`v?w=<>hVHRMIpFrUTym2jZ&q4TP5*29A0Y|a`i3vwY3 zG&+`8d&wx3XAX2fw^{~U0b)30L_v0He8UNsR=2b#BG95X8+Iz-@<}Z#H8yA(#zdEg zF4O|+e$F>Socs<4XO$UHq426K>q6lz>PiB%FXyJ#! z-;#u2;WLr?|53#Qkboq^t}Cj%z~DPA45&EGCc)K-qTWXg&Oq5u);c=z9{tJA=tfROW3Sv*e{Dfy}}MrHQSSgTZQpUjC!a?yzto zEb{-uSvIp(LvZ6~fxXivt26DbwPjj>Y6;lq8*%U7HTD0UY~+8mNqgnXyN1>cbr`=7 z!cZ5d(`~Ui0=D3RRXp-jqkydw!aeUAjFLh~ z!wMA|)!#;Sy8ljE7L+$0ui4@xVihDu)N1YDM&!JkHk#aX56E5rSZ|49r4emqPz939 zUrCZ9$iu;N)rTd=8>R^n%?j(h!0z(w6alTw*@Y?X(2#9RLSEi{X)H8)^^x0XA9|#G z2(Oq?*SFl6puFn<50qEgF`ntoTb*|h$Cc~&k5C^cY@umdY7LX6LG>ap9>W!fx&qVk z$88+2eJsw3?104q{{%(X^&wmI@D9NVo5N(E>^MQ1rNP!rNw?-4JTKSy$1Cez;L2yJ z-na-OHl)x-Nh}}DBgeY3uVe)S_v3Smez-JE*uBVeIRN%V6~Z@WN`!I}CK78Kny{MLA;->Yq1rG*aXxzWVi{|_my%Te|-({g8gOR#&>#j;G z`Fnu}EJ8%zU?1rJrdbID5CUAn*cyp>fbVBf6Ffs}RIE2Hbi?W0NLl7~&_#hicSGC#Zy zrfsJdBFiVO1Sv_&8zsAuO2b0S!!MxI$2LOYS*bK5S|Pk?kNzOG-fQw>-+K5%%oMEh z_{(hv>)-*?-leDNhb@!nb-NqX3moJQtx3F&w zyW?Gv9{5AJ;%5HwK^fHj`?w5ztW}7!o?2v(`H_kdIdUttJlZz4y944Zm6|~WEKy3x z2)xnq^xkoWV=Lan%&l(M2mKils2NCav>cUGNDIg8AH0*WvM)xX_F_aL2n~gS&!KPL zI%pK3BSJs6*um4FQgn3pvjQS?hvhgMOYakCD}Lhe{k#DDH-#NQSzag<#FA9z$a@() zBcDl&?!60UgFlK{MRLeSE!$LvG}@XvY-=EvoV67zx8|eOM|;${aKtCxMAjg$y|QlE zo`K_1T@9COu0c2Pwd4*w?GcKtc4xp^5)=$GBA_X$Z~2aerpdq5VdPaWM4_GEw8OlO zqP}(T{BrK1#>j^dmQ|`(mZGj@N0RTz>!YVo`F?i)~G{h6a;v_2htYi4!gNs z?9+%_gU)pCQg6W0T0~q20bSuaL{)>?)6$+CD3VRGD2H0>sC)tH#hFB}=>wt734p-W z09B~OQ2FIc{7PlyPks7-&!DdQ3ZS*>QW%#8HW z(mt!mRHX|L?OJU$W{eSDl6a5FKB3gB_Kk+3i|b>8v)x@Sk}E;Z=M+SNWfJNm*6qjs zmG(zFcc5W`V5Pltl_AZRllBp2d1S6qbvVRwI%2D(5_pJc6kWZVx4_P4M%dUrJ<;-)5YSYzd2q7)!0c<%h_PwD+^kpk zq*d(GsD^V$eDL{4dNEe6j3d8|SeDr7(bv3L%+r>Kl4*-eh}9EIcBm{x8b`55O%>f- z%LQkEFSNFR&j&fzS3ah{c@bdL)}!tzM!lSF;mT(K{Z47rAv#|aC|>ql%>%c4^SnUn zE$&z;Z1)EDd@$ecB&FQ3M!r&jAh(<8u$CtU=1S{&`jHs*g?JG}k}4bBjF}}c=!1JA^`kH^yOoZt zk;?p`aKrocU$ef!$UFTmX%&?zBM!B1?}(ISjrf=@)eoSi{oAZ#<)vSp&ZZ|`a32u) z*lHUB%@FnRE~t5{2~~~nNS7IxCO!LYJipZBF=_T(>x!&KtMzUMY?q9 z3ep9ngpyE{-U3KKI@kcEO7BfVO9(ZD4gv}yRjLq*D7{PX%nrWaow@U4*4%Gq&HQmm z#N?cvv-f%S(+;l#kx-+MYW?6r5bN?;m}X*_`wbf%6j7=)9&Mu1a@{_RHDmlhYkZ|+ zkqC|Fp+r9rbccL~+N;?8jw%7zcFJ@jj~`CJT38eK7Cl z^$VitwGA=*i;%0`t=dLYq*+nsd)MG!`O&J)>#>+mZp|gAD7MnV;xps@tqy~&)Sli? zk?zNt4npso6=K?C3lY~>=6-U_s6fO4a|TmFFQ<-}tSuEskEH0m2&3dT2x~3OQYNQ? zJcvH+rIVKwO;Z*BI6J)fZ8Et0$X=KGr)kf+>hy@q3G6d8jiJT!Oqer0X{!iAIIQw} zPMe@Q(oE|YEhGI@H#3kIY?_OHXO5LlRFWGcSm{)b37qd3U>Uoq;m-T+yK=P9+w!Z3 zrvZDypDU3h=Z#sg(mBGc+q-cPwDHQ^If@c73&e9^kF$= z-5#w1z3twJyqmAkoY2%41?J!9>+ax*ly35Tp<+w?df*$YEXD#VDz{~+_}s_=6N3pc zJ9Xj$QZu@L_Ga-5Zw**xiT!#*$O^0YTuSb3Gp*3hn^)_S$2-gpk5V5OX14(&Mg*pz z8(Ez|5U7*Ds!!B$;iT%cDIUo3*RgjDF>`DjhVbuQ1IydU;MAWNnpu23R`O`Yfh9L+ z{o^_FZ`XJL@0wRK#HrTo77k4nxii_tV6FSR{aKHLabXE%Ew7r$^v*I^T;N*mzW3Oc z>%>3rq~e^?7-)x>mFMFUvgN+LTSQtjP7D?mGVgYZfsdYjtQ;T&skj!;vb4Up28Z0A zIpM5a$o{q@{Trs)3^q9!*3yzP&gvl+`KrN$*KyjZBme#AGU;ImpI+%HPI^b1(gXLl z#^Xm`)2v5lXyN;7-55OvGvUAr%v?(r?LG*QFUcFC9> zEZ65}(tMW3eX#oZrvw=SvV94c$9&d_MM(gqtQFvS!+^Tf?5}(bC;C!}+pT@xUB>n_ z#W5{SHFUNkKeJ<6Mk+&|>$LNDU#_3PkE>5wcMK8j9O3qu9bKl-Vm=73>5(&ZBWQz~ zsFPdY?*^1qmIm0Qqc|om>0v&y_BM8v@(FIHW=Lfmwy1v?~4I#>$yVD^O4GT zouC*;-vFehy>PG)PJrNjc%raVnsr$8&oeGtrRj`kReq;yhw$D7OU7JcJS$>ku0jP6 zY^z_%Y4jy-`BmQGQyUbwQWP=G&{4Y+z@`R{YnkOvES0<9^s0Iq?Qosd?r{fj z=la3P{xW< zmdZI18tt1Pb^TwoI-TH(eKn;p#TLspI~xhnJccM%ny?q-4hru zk*WF4R!Wul9rZf!R*Z0{{C zp{||b{XUY4?lKuvLez6E%XV#lWT(PAcD=J^Zni;4{Sr$}i5X`i?;5-Q63yA=#!mWa z)0WmIC^dv$7wF2p6^IClzNEH+M-FVOadyrY_<@#+*=R6JRe_OOZvwwAw$fIinf@!U z`-$y?+ZyuV*LdRDX%smFAiUl)S9^p^6UjWSe$3e4cc)7#FNW8{trcIicb2*uBogdG zrzC*TC{x6s*IhAeP0{fT6d#P?!u0&o%F!f&4loF1fZ^exzL1(3^zdw*o6nPf-O z=&y+pa2TIv7Dj-S0D;V2{eMYY{4X^C+#TZGsx3ye{4xAZr+>=gC(9`;7Kz6Xjg_@g zOV+D%@w7y{8$o6W|G@km0PPAi0`t`pjAO>e$A_;FUUhuK)Tsj(rHU)>g3}4CjmcTU z9^UBy-pnn0Md!j1FhYFyfr_p?;-T-Y(^v;@U3NR`uuFy=XiFsWU-9HWMC#O#J$2i`uXeG5~gN;nc%MO z1Ko}`Z|vHo$@Mg17wkpJIdc9qyzuk2>)h{fnWKtQ{yG_(m9~|+=EcXOca^JPgWjvz z#z%!$M-!fxnHxVpa+ky6YYj1aGPTNXmWJ39occm#Z&hOry!zXu*2o}kN2q=$evh)+ zpjnWJBmp#?d9b+)H_2dQN9j#q3Up{>oO88*yKLEtW_ZULi%+Rg8K=Lt zu(nd~;@+ic^Rk#nE~uoWu;&j&Ay+qFpK(qM(xf{vj!;yeH~pbSqkYhK_pO%f%mnyG z4h3=>Cd^1ycb&JO94f~`eR_wQTr)?yuQbL7dLo%7x_lP9+#bN=Br$Y}D49b=ES_oS z>p?PnKTLGfAXkHQPw1GvaG_or+usv;oI^Z~x$|usv&-9?2Cn|GN8&w>pXa$K1`uga zz71v#z8P$pTVUfzPl1QcH+$7q6+6_A@$YwE%H%8CK;V5UjaO=}KN*zBKP+$^<>Q$8 zd2!ko7N+gIXtg0WdqsL1GK^u05yFTg)|3rShjO)pF$BIky`d6HdcA@?vuw1BR$?Ev zo-BA+deVJ(JGCUp5+fuz>8=pd-;+5V^SnO59OHf%6XT&!cD~)N<8){b+q#OEx?iha z7Pi5CAD$CKv^naeB(cSC|9Rd|X855qS0Fy4=i|`y>eHGoHvj`=;Jt#Ob5|5ht`c3b zs^ib2Y~v6EW2^WiD2AW2Y|HgOpm+e=ELUhSv<)9Dpi`Y8Rx=g<+7YcQ%E5ITYH*19 zhSpWMczr+e$s3Kb(;+?_8!9miaz4g(Gmr<0){6hg&q+k&%@_l{n%MUA3_h7Z!-E?5 z6bGT~ZVf!c?p$h1zH)2E$ z(>|XyNwHxaUK5{wuO^lKC#mC18AI%SE-;NVLDOpWwU&*)HBv#QNz*?Ri@T1aPv-AX1v2 zDRt|mdJc+&-nt}d=P~J&t{G_ms;lCMq>j&xY}4eEPXl0H!C+r=#Q~BlQlsee80S zTqpr&0Fuc<>8#0crKo7}X^~C4RU2RE1G#0tJi2~pv`R|pLR-DALPIO(!&yUgON*EBnnpoq`b>;ow*Z|=8bG*u0T-(Ad5yJFd zCV44G1cT+1oSpRpq(5&(nJY!1$TuYg_+H!$&hW4*ix!mZnfvb+QQ!S4a09&uc9&V0 zr(ekXyY$)8kebmj8Xh&hhQ2bk3`pdy=TzT;vXzt*$y7W_szq|SQyau1uw zU#-TJ+-tZ`2V-iFubBt{xP_QR(p&Ocz!?Qj47WgZUnZ(=ws+RoIXz~{_U zcp0uyUpE~jvABz*Qm<2LkU*JQ2U5?O!55mBT{e7xPfZd3N1R}#q&(mFal8%DOI zXSWcz{X8QJ>@$k3O~9ohQugF5X`mGFsG*h5Qd!6++79GC8DjVyF-c$W9wdftEw7WL z`y{pv+eP37a0GZUG zc&N)Gz|M39M34}Y8$9oH+8dD`irgWKam2Kg$gxc9sx(Q(wK55ma$aJp^^aa)?2~)d zK1nFnmTFq>4GHTWusQYM{M-=N=$KO*cHRS(=OfB(5FjWe_(D7mhC*8veq~+x_2jl= z+(E`oD<<8Jb`W^_x(9jcO3A|Wr^u?0;xroiMFb>_N1UugU2HOO2(<$(83;}rb;Z(i zpNDBFCiNgCN;r7ZV}4-ODX0F2fwHOskg1W-VVQbL_5#-VIz^t8;DCCDZpC)-3HrX2ExDPJBcjR0HG9_&S zir6Jtx{n!`Uy`K&w}~nys26&Fc%)EqT+4*`Mkg)7UxwTrz#i1(CibpHBNt#mC0rle z2D~T*h+RUI)Y(t+p-u(jb;RV*OQgd8ug>7v1Akn)#`=uIfU#9I#}jCF&28zk$rr^x z0o*2Bj~2v}Lmcz~S^;d+vNKllr{Ot3KK@OW;yF*2O>rjA5pai}@rtoEY2zin^sn^J z0Lx$e*cjd`H0q75wTrV;{RUuRloJ(+_p|%^r}M^9L`t;Bseuew@;PnR0F(O5kd_A= z#_OL5BI$~}42e^%iloiu)E+DO{Vh=to+Ur6vE?#?2dnQEI>!JBk6V5 zYR(o(bwb_exn9$)UeY~x$c%)P2?qdDAG1b}rZCdM+jykdHXVL>G?lB)CF?Wt z*RjXU+`oV(@1lQiEN%3DPciUZn(g^(U0g&|6uMh0x15HRb<_iKE8MnC&R(ENj!UFY zkMjB}lH?>Hs>67aa^{!!S@lBY&Y{F&b8I|!zTJbmS>?=aWQhKDp^SCa-n)w-(C?ZR z-W_%F`L*k$dwM0*kUxj$rR#ppIQjk$Lmr0_N_$0N>Gy|yQu~+H!kEv=_tMHI@|~L> zp|$eNmP2*M&Rgc1ST~$_`P44x_3zmYu&K%n3_AmVl`3;we<5b~n0QCltzT3+ju*EK zac(@+*jQsZ-Qyze&WV#XO&D{kj}>3N<0^5OdeG_0rtCUA8RdKjK7EPmI{G@39^#2s zke+JpN0NdF7bUy0-up#EvsY($^-`C}1c5j2>T>24U=VyXbWh=35Fda{?T1O#-<@wK zp{r-SvM9o;)BhUmp!eK7az=f~(gpRWQ8b|u1Mn4xkdZ&}GZhW#{lRs*vFFj>8hxIc z&j+%(#;|{ z^9$S-E>>WDSxr?h@0lnA#lU+hB88{mGyoGbPIXbbj!^UHl?W8PCT_02av|Azc@X){&bH29*H9=GJ7_-?!jvQl;*FgiOModX8l23$Pz zXA-*1HIfBO<+C0_Vj63O(jS|-EuzHEeMW{qDMwaD-1TaQSzIj6V-Qn`wAaMNIXn&^N?6s zeq1rKS7p@Cr!Af!aOa?EOX5rB$}(=;b*^SXh;3^$Wvg0))eV0R{S7A@;qzhLHQz10 zdDe@>+jkgvA%2=(=9<(m!%Irf48DcDG;#(?nG-+h9nDhxn;17_V5MJBAjD%?gu@T^ZzqEem7r=7Bv^OR&BLlwy z2u=C5p~Z$zR3=R4 znMN0TYt-rNSX(D4d`NUQ5AZm<;H{<%GTssP$RQV&#E|FQcLaDCAy-WL!)IQDTY=B}I4-IP3tW#CbRbbkjH zvknV89sU=vNn7M2e6zneI?)yy;-iI8h;NguOq9O0ab30Ag9cXIq}5Qut-+Xpm^-kA z;&eFmFIT;eA@XKAShQ11;$>18Yl$%L{PU==z1tj6GiQNDy=G#V$inXN&Nuo`UszNz z_-j5vZqM_wJZUH3A25x^8Fd99$iu|t-qR8M1TrhB>@U=s>nR^_1C%b1KO~Z~rFvCJ zgmREWJ@J@(u6pI(M6avrX~5ZuIUok;F}@6oAO?@7FUb=lQ&#S52P7}WEHX{|3Rdss zMigR(}{9wx!}|_J9o9C~HbC zg^K~KV=WpwB^n?enn4cvK;MlPE_fD~wZ{Cb;+{7VUix4Jxc?bD02H&bif5dNuD>qC zx;^!#s;w!GD?Kvj1;}UN+t0RvWJxGq%oYtil*nt@8(}Jg&HZ*be#vMONTg$fWS)CQ zP3PGR4h9YXJ(g0ci{nZl*vAU8tRS)VWsdVYqLLus;)VjWF3}9uWY28GGkPUcN>Fbz z{BxC7Xa~4F2R1ney1N&oK*%kAU3u8z5q{5skXMHwdk^8IBw>=e^}Ct1EoC;fTTO+P z7Pgl`R1zGK%;z9Wu75)le}Z|0P?r~i=)r_$io~FNNQ6K*#^*?gD84(D1+$|POmZb~ z0`P?#=OzF^oyvoqPG;ize}~@uS5pZQYx;MvetvWh<5Z`Y7fHlQ7sgP@+OBBHltFigJQI34|%OQ>02<^<*nkeNmx7?)N!+PrjQ>ICQMXy%hy)Or9hAQAsew>O`r zrr=uwH4LO2X6ksu%Y!+6I;MTof=Ua1C+lzX;Zl@A>iSLPajeSN2_t%YObnP&=-yB! zM(O6jJU}=DAY1B~OmS>3*&|xf>v4Cwbo1!7h{sl(pXO?vse7Zyp^yjMI8UPW2z#qY zos!QvUoj#WT{9inB)K(~)Oz7cCQOg`PA3L}j$uY)UxksM$2 zqR`m*(S6_TgoKj^!H`L4{W%kfPH;dw9|24BucXDa-dVQI!TeS40v(IZ1zSIrX+%U& z%sj4@eJZ55&`-dc)b-C9AJ{}x$+>J!V#>mxT!LuMuV?pjpArgnMBYZLbBPLJ#$O)w z`~%X?R!2*Jn}4Cp{wBk+2_L`dd5&>2Mz4Ng> z8WtW$v0xOv-fjh$qjE+G7HONRf zvN{6l+MGfgTfF?nER{eESeI98#^iK;U1@)o&9coH^GWF`#oWi`iKm=`-CxGT*uPx1 zCxLwWg1yag94W^tL3 zv>nWnnGPJH@!_Y?Qqdn1a-C}} zD2KsF_NjdST?|J&2u)=%lL>0i+9mKxEv+=@Hk&MlK>1(x^yJ;2A5VxM3V z-s7pusHXQ?7r}XfZe|J8t}fj|ZmDKZ#V^3H#LEPiCI>eWm9GRA>_sf0NcG6nM#VB! z|a!R$dUnArWYMA8urNFu3nC?P<~OFbpKPId6dus0?+D|uqx z#wJ)7Gz|58j>zi-ZwD!eHCMWrYknY^_d}B;iVb8ZW50G!RT+O_NPH@-5BgO)@4R6* z@<~B_BSsvd`n2eG{b*By63ydKnmSM<GRF)>-~9H@Ko8b^~WmV$Jm))cR>sx2=(bML^0|Mf?1WY0HfH-TXh z92D<$WpI)-JcvG^ms!Se>iGv|1<^N6h0?qQQlc9^!IZ)#Kxid@07QCKki4t^p(Nsj zq||9TIHA3I?H{f;p}VK#Tw5+k4f0G7{Bp^+DCuox=6 zp#Zy})Wi?+GVdS_@G`eg5_Er7A6x_fS{GXb&{wWkC%nK@~Dec(>Z^(4|gAp>hWD@H#bh~G2 z1~`V7KWs&ys0f>niP!%iG)_rRoKfOowd}A73>BV240h7J=VJ4jx?*M5qEcnL9dQAy zkUxKI6(_tG*VbZL5)8OcbU6xA`%K#}K2Y|@X(SVEb#%p@?F!(hdM$Y{vo0*O+ehmt z{k9VU|8z@SkP%!o;BQX8{{)Ku>tJ9u_;Swyd{blG6SkkcMEt;9qOE)QK;umvVOm&D z-Fp4>uIF@osnNWcMV{}`;f>De3&*;Ly@%{B$6Qo)MaTs0M%V4RoN*X$T3M?EoKJ?f z*0O~^Y(K`4p`~Kw{r-l&^?8TXbQ5W>axJE=mp0qIRqHK1)coVBkOw&uJ9e&K6K{9Z z14Vdu!xRGO1{NB2t2aKf7{J&TOFlSgho5bD6Q=g|`axM0&-Q}X^ii_$+6VQn zt=Y;c3{%(KM`QHhacFT$_R{%|BJ2L!-XS@0lBm#QjPW*tN?dPm#MN2J&fgDnGzZ_F zQ(vD+ll6;tlfg=?jH5D#Gh4WqUYSe<4%U{Q4iMdzy6mwe!TbaLa_Ghmv~Jnk6eA+@ z)Q@RlZ^9?kSvF~KDPlXx^3ui#)(?NCr(yg$CzHfwUmmXCuG>S#Gda~*yTx7&vlKqD zE(`NC#7z4YN@_e|i^U}AaNGTDe7S7nPPm}o!0M^)v&nb5J?1?5_m2x2v*XDP zcPBg_*19OcgwTbRMTJKekLYUk>BwH|ZhEfzQ+-4`sn8ebtt@2FVchasdk$)SrA+N} zjE~EwZFv~JfBEhpTH;5=wA*WAwLY_qB)0(vwJ+Mb9`(fEF0XF0+WU9-pQ1oSjA-Wk z3t6uNxy`mG^53cz!&9{7ZPSduFM@A7R}E%PAyp^U(@3{bBDP2i2JJ>^KJ%C!`>}Mb zvwd!zaC_yaOZQ(GO4WP8T5ekE`;IH<@RZo@lN5 zFzuQQ8U&ot?pyFvKECXtlYXVZ4d%LHj5Ut!j!AVc+sN6rf2A7fvWlp6uT^yW!a&O8 z6uj&)SQwYjC-w9l?crRyE_^r<&)gTBP(I7sX8Zj$%*aP}dxPq%;`YvnEbOOV(&T#Q zfJ|W1W2#XJi(K#eV7eO5*|C;e$jWnm$XqjzTMF`>#;+Li{V1utwz|6=#RE)gsc&UG z+{ZbjZ2a6_TG$W&l9xR?B4^Vnk}zRCs#YcQ{Yl|wvitJD;TW~&l-u+Ixz~>p`=UBm z3Q<*qL;Abpel$#d~RKOQ|VN$=JQ6sIldb8Oj zQ(QyUIi>jw6S#EU(?K^G`9m&s_0KiA>4#(ke zAsnRiP~GSe%=nfT?Crp!7U}7E{n;0Cn&N;{w~^O`uHx-!k_Udw0B>cJLEwRJ5wEU( zk$8sHa`>5A=6s1~R3a=#)Z+8@7b#+n9Gp!rP7G`83=$|Y#HAy2!S1Uu@#-yaKcA^DNS&wk06GI!!`T_US#AsP16VJ(5>aejk z&_h-$8CIFhZVY=1e(E#A$Xi}h(Wo4*#4{Yb3=BoP*G4aFxXv{G+>cER2FiD0r1!icl=m`GGv@TpIREVQumj~iPnD3X(N0pxoxZ-S2RC1Q;U4&4 z`L&^Z^VjAeXVXwY-Co>fX6uP9Pi(=_O#pBlCMPGVavG!`&(o&Cl~fO>pKNaMlpj2M z@wmbbJmJy-^J{V6NFWAh-El+>wtS>Zq!b*@Li*z>mXyh^@1Ae>dOjX_HmbWLVlbU9 zg>CW9*hR4Sx#tH8$Xf7#1>(wYj2eu2Z!sfd9M>tR+E~=Ec7uR&o!GWd8!+Jd&~&cN z&P#*vO>DzM_Gq=(`8No4Nxz02wt4zU5e{sFNaS!|Jeep0^7An+ zb#LB8K|hdfVbjm<7lm@-0MlfrNIMU62!EGa~ ze?4ye-OqF2B%@{=4!xJo>^3zyD8zh~X6ABsvzp(wT4*q9Ym##*oCS8LH_S;qT~*yq zGtRp&7+$yVeKJ0f2CQ{JeTe&689B+s$wNjVcVqC4om^8UamH102uxPZ zzLlI%Nj&6j)vK%QyB|Ih{9v+Nb!G7|ndk z^?z;lD2DfalvxrmF^h9Csab&uVm!Bv5D7At4vxwPGj}a2Xf0H>-!@vn;~UoStAn8x za_oKyOY*kcz0C)uY=NRpaz)D0E9+Oms!nTgTKD{H2;vl^+km&5ue4T)q8d(h1L=+Z zLKoqOp~XhkP1Oi)8RDiW^#QIvrPE{h`4Ge={Y=~TqaKL@^>6jdph1ifQGx#?Hk<#U z`M+Mtnt_rXj!XF;VP2c~9HT41fxM4W5<&q(7$-q|Tq&>V-=9n(U7+lD6o?4(3p9?6 z9u*nAfiH}9@h`m$u;eXge}E->|M7s~ca(YpmptzfH&P2|RdJd0IYZe*HlI6l)XIK{ zh@+NDBCm4sSKGAOskm~hYb7b29K^EwbYybjy$j$Y*#2!y`R_k9^&g=9Tg+n(RZ8sR z{WwtT7X z&Yp`xMZTdY%CeP1jNhg=fc7yj&*muIzwZ zMS!KUmgvgouXX1@u|d9iPDjpG(pB_N`7M?zQ@X#6Cxl58OA~e%^;$F{rmV>;<9=xMoC_}4p# zFQJ5;dJlMw&+KXfu`#q3xdY@+)cSOH7Pj7!MomXul=WI{B1@a^*d5M= zZUy9h9I@Rbe9`WH`Y8~*Et!=2ho@1Ai0)A|7)^vSroy2)YSJ85AqE|hLX*CQdqb%N z6Y9oSn0iY!m5YT*SCQ~=7~1_`g(T`Wi8s*s|CEa)UDR$FVa$uBXn(h82B)ae>veo5 zxHy#UQ|g>rP9*2hQ4KFqjFZKSZa+SGHIV?C$@>o*Q_t27d);zhpLVCGZ{N$EmvgfM z&%1LCXSjo_nAi)uNZX0XGAvvs)|w2{#sYOwpPA7ua=HT)@+_>HT?rUjfx4->cHYVJ zi9!jY4QYqdra;}zcM!u+&a3jO1LZR~WGT3w=mLQkADF&Sy>+4Zdl>M%Lg zRihM~WM7^eq91i4B}QH+Xo1%jU!+J5;NxZ2JAvR9Yipu)t0`4;f@{u4wbun{Ep$MQ zK9%TJ8%yhvMd2+4mJqr(C|OwgyereUkap3FUFF{-Glx$%dt-o{ht3bu8Q9X5zcXWZ zA_n%}A*@iuLqi17*P< z)1%6WALYR10D5Q`Z;e+@OFDW?@b#5ZwmIk^>fiG_d<3hsiO|v>8K80?E(L5Sq}zRy z|EU?9xN!d`V&VS|eKAbeb1=0AA{Fc#f}kiP3`*qLT0zHPrV+5>v|cYr5biu%mPl{r zV=&?En^JDVnqnW(V zj&>r(GR+>P$Yt%xO^{muXsjCPebF=po+)*-Z|)O%ZJ(ixITkrOERtN$^?aOeUHBJI zI4DK^7>2df3^5ZP!{~QW9jZ5rcNLHQo<&H|w_G_q`urny(>-&mY0vnKj)3%l*Y5)( zrB!2jL_JT-DacL@m;%Iepf|$4C%CnaKRuFMiw&~(Bg$VwM!%bvb>#D9f@+Df4841D zh>W!yS7{mhhB!sFj+1%llm}~BXGweg{WiS+BS7BuyDcg~7cU$}wD+L9Uj!+t)LOkY zaqGX(5_Nk${8@p>bhM%|Xa}d}LT0{J=o-_S$W%V!&o^Mxm9jXLc%l5yJy|E8TQ|#T@ipZ+QxIdU4n+MosvP5aT2G?R#=(2gbK~Dpg9k zT~Fw}V%Ds0M*Ly@Rajz3#EJ?Td$>vm8WmjZ(xUXQc=P5H9DigD-v?FD(DL8m>67q#8k@UQYiep`xNN{{f@Y8;R_n>Dwnl}fY7WRxpsSr;jq}Iy zg?GfXNv$yfFp9Cx|9JYi_V4}E#@+gZO3-|$2?T5S)UWF_dRp0qOu2oL5dOXnxY_~f zJz}Ti2~SJ2{X>hGEJ3?-UKRPrI9JB=IcGGPmr42R9cofg@szmJEuX_g_>CzAcgr1w{e~JdLF=oCFaQhQAUyZvt zUHMK+8%w5GVIw0b6!I84{MFtjuj~pv7W9vMIEX)$k!%vy1kCTv5Q)uXaWx;N{n?XB zY&{LtB$kF^1B?x5G5ledc-VN0+2xS1r##UP)(O#{u^^Fy7%APP65 z%n1TZCls=TUnN<2XkW$UAVz(1P@7_^@cLO7C~y2SG>y~N=3cimJujW}QYBSD4#l>T z8zIhs)JF@0E{&ORUxh+)t0?~D`Rgi=QF@*jmWkP(kz6qaZM>K+&_rbu9=3swJugM7 zhwySi1OKfFeuA(5jKt8mD537{j2My6HiG4NY*lKKioGe-+~j@-efZejKErnSR)@VR z4I-&BJfTT=>MMCi8I+O{dSBc*EORDN{_QCXSW=?~*0S^60k61l9L=LJJ`QDHUSgKU z{xrmUIg--md7$OvPFr~6rO8$`P{W(MSDu1U->MXSKEr6R>t^$N;>kO5ij^`EZW`5t zXSshHPePvXn?551N)hgjSf-t~?A&!GCnXj%Y6uD`fdP!VEPRG(O#P1%ldJBq{r=^| z@@-VJ!Qk^{)xJw*m5zyn+3)Aa0xjRpAc^&ZK1aCteu8c|;*BG47aLS?hz0Fuk+nR9<(; z(w8X1)XUI6EDN0}jE3)ip?^K_&L3ulHFf>rd#xrIv>DDz^03y>ZE)&phCV;7(#{D> z3hUUB3OZ9MvPM4md8_>_CQrmSu91Zsu>2MYj5)cV=xEaOpA{RC@OTW&GebT}fr$XZ zLQfaf)t>v($amagHSf>Y%(&$yAK<$+$xddN@vO@OU4+Y4OUZstn3kuA*roliMa^5`nR~Z?c?M7`B7> zveUuD;*a)cE(D{Z>JYTq`E#RT)9|O{D+S^7Z%H6&Ig_%9VlHJsEfAUc0y0%VA_+{p z6+&j1JRd6Cl-k)4%Z(MN|9JC2JfR87|IO1a$7eYdakm53aj}CnNc8g9^;nhpbEk-9 ztQzP-gmFB-H;v!@b|KSeeMKlBG-$1JUE^-q&J`*zLj-=Q-))rOY%a3YzZ*~g>^||4 z2ZYkH?^Vo1O02y0`hY5pRSmb@DbM>QPziu ogD0R9H*WuL@WbCv**HF}+{aUplYLDE905dGUj0#l?9 - + - - - New Style - - - - - - - - - - - - - - - - - - - + + + + + Safari Muscat Airfare Request Generator + + + + + + + + + + + + + + + + + + + + + + + -
-
-

Analyzing your requirements and generating your website…

-
- Loading… -
-

AI is collecting your requirements and applying the first changes.

-

This page will update automatically as the plan is implemented.

-

Runtime: PHP — UTC

+ +
+
+ + +
+

Safari Muscat Tourism LLC

+

Central Market, Salalah, Dhofar, Sultanate of Oman

+

PO Box: 211 | Phone: +968 99737165

+
+ +
+ +
+

Customer Details

+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+

Flight Information

+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+
+ + +
+
+
+
+ + +
+
+ + +
+
+
+
+ + +
+

Fare Details

+
+
+ + +
+
+ + +
+
+
+ + +
+

Infant Details

+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+

Adult Baggage Details

+
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+

Extra Charges

+
+
+ + +
+
+ + +
+
+
+ + +
+
+
+ + +
+
+
+ + +
+

Additional Comments

+
+
+ + +
+
+
+ + +
+ + + + +
+
+
-
-
- Page updated: (UTC) -
+ + + + + + +